UVA - 465 Overflow
又认识一个黑科技 ——— atof( ) 函数,能将字符串转化为double。
题目大意:判断有没有越界。
解题思路:double范围比int大,所以用double来计算就好了。
#include<cstdio>
#include<stdlib.h>
#define INF 2147483647
int main() {
char a[10001], b[10001] ,c;
double x , y;
while( ~scanf("%s %c %s",a,&c,b) ) {
printf("%s %c %s\n",a,c,b);
x = atof(a);
y = atof(b);
if( x > INF) printf("first number too big\n");
if( y > INF) printf("second number too big\n");
if(c == '*' && x*y > INF) printf("result too big\n");
if(c == '+' && x+y > INF) printf("result too big\n");
}
}
UVA-465 Overflow 解析
本文介绍了一个解决UVA-465 Overflow问题的方法。通过使用atof()函数将字符串转换为double类型,以此来判断计算结果是否超出整数范围。文章提供了完整的C语言代码实现。
1596

被折叠的 条评论
为什么被折叠?



