早教吧 育儿知识 作业答案 考试题库 百科 知识分享

scanf用法问题,你的弟弟刚做完了“100以内数的加减法”这部分的作业,请你帮他检查一下.每道题目(包括弟弟的答案)的格式为a+b=c或者a-b=c,其中a和b是作业中给出的,均为不超过100的非负整数

题目详情
scanf用法问题,
你的弟弟刚做完了“100以内数的加减法”这部分的作业,请你帮他检查一下.每道题目(包括弟弟的答案)的格式为a+b=c或者a-b=c,其中a和b是作业中给出的,均为不超过100的非负整数;c是弟弟算出的答案,可能是不超过200的非负整数,也可能是单个字符"?",表示他不会算.
输入
输入文件包含不超过100行,以文件结束符结尾.每行包含一道题目,格式保证符合上述规定,且不包含任何空白字符.输入的所有整数均不含前导0.
输出
输出仅一行,包含一个非负整数,即弟弟答对的题目数量.
#include
int main() {
char s[99];
int a,b,c,n = 0;
while(scanf("%s",&s) == 1) {
if(sscanf(s,"%d+%d=%d",&a,&b,&c) == 3 && a+b==c) n++;
if(sscanf(s,"%d-%d=%d",&a,&b,&c) == 3 && a-b==c) n++;
}
printf("%d\n",n);
return 0;
}
scanf("%s",&s)与scanf("%s",s)没区别么?我试了2个都可以通过.
if(sscanf(s,"%d+%d=%d",&a,&b,&c)中sscanf后面的参数加个s是干什么?
▼优质解答
答案和解析
scanf("%s", &s)与scanf("%s", s) 的区别在于取地址"&"符号,因为你的输入格式控制是%s字符串,因为字符串的存储方式有些特殊,即值与地址相同,所以是否加&影响不大
至于sscanf函数,应该不同于scanf函数,你可以查找相关的函数库手册,应该有详细的介绍
看了 scanf用法问题,你的弟弟...的网友还看了以下:

如图为某人在医院的“甲功八项”化验单,第8项“高敏度促甲状腺激素”不慎被撕掉.请回答相关问题:(1  2020-06-20 …

“尿检”是体检的一个常规项目.这是因为尿液成分是反映身体健康状况的“晴雨表”.若尿液中检测出蛋白质,  2020-11-03 …

醉驾害己、害人、害社会.请你根据反射弧模式图回答下列问题:(1)对酒驾者可采用酒精测试仪检测醉酒程度  2020-11-03 …

醉驾害己、害人、害社会,请你根据反射弧模式图回答下列问题:(1)对酒驾者可采用酒精测试仪检测醉酒,吹  2020-11-03 …

检查视力时,受检者在光线充足的条件下,平视前方5m远处“视力检查表”的E形图,辨别图形上缺口的方向。  2020-11-04 …

检验平均血小板分布宽度16.70%(高)高检验平均血小板分布宽度16.70%(高)高9.8--16.  2020-11-29 …

简答:医院经常把被验者的血分别与A、B标准血清混合后,在显微镜下观察红细胞是否凝集来检验血型.如图为  2020-12-24 …

空气检测中均值的问题室内空气质量标准中关于甲醛含量的要求是0.10mg/m31小时均值其中的1小时均  2020-12-31 …

尿素(14C)呼气检测是目前检查幽门螺旋杆菌的方法。检查前,受检者需口服尿素(14C)胶囊,胃内幽门  2021-01-01 …

某种疾病有甲﹑乙﹑丙三种检测方法。若受检者检测反应为阳性,以符号「+」表示,反之则记为「-」。一个受  2021-01-18 …