pta15分题目
题的目标很简单,就是求两个正整数A
和B
的和,其中A
和B
都在区间[1,1000]。稍微有点麻烦的是,输入并不保证是两个正整数。
代码(c语言)哪里错了,求指点
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main(void){int i,j;int m,n;int x,y;
char a[20],b[20];
scanf("%s",a);
getchar(); //这里必须加一个来读取空格,不然getchar读到缓冲区第一位就是空格
gets(b);
m=strlen(a);
n=strlen(b);
for(i=0;i<m;i++)
{if(a[i]<'0'||a[i]>'9')
break;
}
for(j=0;j<n;j++)
{if(b[j]<'0'||b[j]>'9')
break;
}
if(i==m){x=atoi(a);
printf("%d +",x);}
else printf("? +");
if(j==n) {y=atoi(b);
printf(" %d =",y);}
else printf(" ? =");
if(i==m&&j==n){if(x<=1000&&y<=1000)
printf(" %d",x+y);
else printf(" ?");}
else printf(" ?");
return 0;
}