你的弟弟刚做完了“100以内数的加减法”这部分的作业,请你帮他检查一下。每道题目(包括弟弟的答案)的格式为a+b=c或者a-b=c,其中a和b是作业中给出的,均为不超过100的非负整数;c是弟弟算出的答案,可能是不超过200的非负整数,也可能是单个字符"?",表示他不会算。
1+2=3
3-1=5
6+7=?
99-0=99
Sample Output
2
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int main()
{
string str;
int s,sum=0,i=0,a,b;
while(cin>>str)
{
i=0;
s=a=b=0;
while(str[i]!='+'&&str[i]!='-')
{
a=a*10+(str[i]-48);
i++;
}
int x=i;
i++;
//printf("%c\n",str[x]);
while(str[i]!='=')
{
b=b*10+(str[i]-48);
i++;
}
i++;
if(str[i]!='?')
{
//printf("dsfs");
while(str[i]!='\0')
{
s=s*10+(str[i]-48);
i++;
}
if(str[x]=='+'&&s==a+b)
sum++;
else if(str[x]=='-'&&s==a-b)
sum++;
}
//printf("%d %d %d\n",a,b,s);
}
printf("%d\n",sum);
return 0;
}