这个c语言程序我看不懂,求教! # include<stdio.h> int main(){ //
1个回答
展开全部
楼上也是菜鸟啊~~~~
你这一段程序很好,很完整,没有一句多余的内容。
待我慢慢跟你说来:
1、
int main(){
//为什么是int?下面的char定义的不是字符么。。。
答:这里的int跟你下面程序里边的变量无关。它是指main()这个主程序返回的变量类型,当然,大多数主程序不需要返回变量,所以这个int即是必须的(C语言规定的),同时作为初级学习者来讲也是先不用管它的。
2、
char a,b,c;
while(~scanf("%c%c%c",&a,&b,&c)){
//为什么这里要取反
答:这里的~符号不是取反,而是一种并不太规范的特殊用途,它代表把scanf() 进而的变量全部取一遍,如scanf("%c%c%c",&a,&b,&c)是取三个字符,但是如果你输入的多于三个,则每一次只取三个,剩余的留在缓冲区内。与 while(~scanf())(这是一个当循环语句)一起使用,第一次取三个做完循环体后,第二次再回到这一句取三个,.......,直到取完为止,跳出循环。
(先发给你这一部分,后面我继续写)
你这一段程序很好,很完整,没有一句多余的内容。
待我慢慢跟你说来:
1、
int main(){
//为什么是int?下面的char定义的不是字符么。。。
答:这里的int跟你下面程序里边的变量无关。它是指main()这个主程序返回的变量类型,当然,大多数主程序不需要返回变量,所以这个int即是必须的(C语言规定的),同时作为初级学习者来讲也是先不用管它的。
2、
char a,b,c;
while(~scanf("%c%c%c",&a,&b,&c)){
//为什么这里要取反
答:这里的~符号不是取反,而是一种并不太规范的特殊用途,它代表把scanf() 进而的变量全部取一遍,如scanf("%c%c%c",&a,&b,&c)是取三个字符,但是如果你输入的多于三个,则每一次只取三个,剩余的留在缓冲区内。与 while(~scanf())(这是一个当循环语句)一起使用,第一次取三个做完循环体后,第二次再回到这一句取三个,.......,直到取完为止,跳出循环。
(先发给你这一部分,后面我继续写)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询