整型数据的大小比较,用double来存储错错有余。
atof函数定义在头文件#include<stdlib.h>中,它能将字符串转换为实数(范围是-1.7*10^(-308) ~ 1.7*10^308)。
#include<stdio.h>
#include<stdlib.h>
double max_int=2147483647;
char x[310],y[310],op;
int main()
{
int t=0;
while(scanf("%s %c %s",x,&op,y)!=EOF){
printf("%s %c %s\n",x,op,y);
double a,b;
a=atof(x);
b=atof(y);
if(a>max_int) printf("first number too big\n");
if(b>max_int) printf("second number too big\n");
if((op=='+'&&a+b>max_int)||(op=='*'&&a*b>max_int)) printf("result too big\n");
}
return 0;
}
--------------------------------------------------------------------------------------------
Keep It Simple,Stupid!
--------------------------------------------------------------------------------------------