你的弟弟刚做完了“100以内数的加减法”这部分的作业,请你帮他检查一下。每道题目(包括弟弟的答案)的格式为a+b=c或者a-b=c,其中a和b是作业中给出的,均为不超过100的非负整数;c是弟弟算出的答案,可能是不超过200的非负整数,也可能是单个字符"?",表示他不会算。
1+2=3
3-1=5
6+7=?
99-0=99
2
无
想法:水题
代码:
#include<stdio.h> #include<string.h> char a[1010]; int main() { int n,count=0; while(scanf("%s",a)!=EOF) { int len=strlen(a); int i,k=0,h=0,l=0; char c; int flag=0; if(a[len-1]=='?') continue; for(i=0;i<len;i++) { if(a[i]>='0'&&a[i]<='9') { k=k*10+(a[i]-'0'); } else if(a[i]=='+'||a[i]=='-') { c=a[i]; h=k; k=0; } else { l=k; k=0; } if(c=='+'&&h+l==k) { count++; } if(c=='-'&&h-l==k) { count++; } } //printf("%d %d %d\n",h,l,k); } printf("%d\n",count); return 0; }