希望大家帮忙帮我做几道C语言题目 谢谢

1. main()
{ char s[100]; int c, i;
scanf(“%c”,&c);
scanf(“%d”,&i);
scanf(“%s”,&s);
printf(“%c,%d,%s\n”,c,i,s);
}
执行以上程序时,输入:123<空格>456<空格>789<回车>,则输出结果是

运行结果为
123 456 789
1,23,456
带有逗号即为运行结果。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-22
这道题考得就是输入函数scanf,了解它就行了
这个函数是格式为scanf( "" , ) ;
其中引号中添加格式化字符即%c(字符),%d(整数),%f(浮点数),%s(字符串).等还有很多,逗号后面是变量对应前面的格式输如,如scanf(“%d%d”, m,n )输入时m,n都认为是整数。
这个函数默认的%c截取一位位宽,而%d,%f,%s,%x,%o这些都是遇到空格结束一个量的输入,再有如果%3d等这样的输入,截取3位位宽输入。
对这道题c是按%c输入,取一位位1,那么,c就是字符1,i按%d输入遇到空格结束,即到3后面的空格,i就是数字23,s到下一个空格字符结束,即s是字符串456;输出时是按原来的格式输出的那么将printf中引号中%c,%d,%s用c i s替换即可\n为转义符是回车,那么结果为
1,23,456(回车)
这个题可以变异很多种,看看把printf这样写
printf("%d,%d,%s", c,i,s );结果是?
自己慢慢体会吧!
第2个回答  2011-12-22
1,23,456
第3个回答  2011-12-22
1,23,456
第4个回答  2011-12-23
1,23,456
第5个回答  2011-12-22
1,456,789