C语言打印ASCII码多出一个10
问题补充:
int main()
{
a:
char s;
scanf("%c",&s);
printf("ASCII码:%d\n",s);
goto a;
return 0;
}
打印的ASCII码第一行是正确的第二行多了一个10?
最佳答案
因为你有goto a
在第二次时scanf的%c时
s会收到一个回车
它的ASCII就是10
追问:
怎样做才能循环输出ASCII码,但不输出“回车”的ASCII码。
用以下程序#include <stdio.h>int main(){char c;while((c=getchar())!=EOF){if (c!="\n") printf("ASCII码:%d\n",c);}return 0;}当你输入ctrl+Z程序结束注意:在一般编程中,不用goto的.用循环完全可以代替它
最佳答案由网友 whoami1978 提供
其他回答
其它网友回答:
其它网友回答:
这个是回车键的ASCLL码,初级的C语言程序在这方面很容易出错,要用比较高级的函数才能解决。程序在读取时,读到了“1
其它网友回答:
”
其它网友回答:
(这儿回车了)
其它网友回答:
再加上你的goto,它接收了两个字符,就会有两个ASCLL码