公司网站建设服务费计入什么科目,银行网站模板免费下载,制作网页与网站开发,建个人免费网站用哪个在笔试中#xff0c;经常见到字符的读入与输出的题目。逆序打印输入时最常见、最基本的考题#xff0c;复杂点的就是统计单词、逆序打印单词之类的。难点是如何判断输入的结束#xff0c;如果用getchar函数#xff0c;其输入结束符为EOF#xff08;其打印值为-1#xff0…在笔试中经常见到字符的读入与输出的题目。逆序打印输入时最常见、最基本的考题复杂点的就是统计单词、逆序打印单词之类的。难点是如何判断输入的结束如果用getchar函数其输入结束符为EOF其打印值为-1cgetchar(); //c的类型为Int型因为EOF-1,那么scanf函数的使用方法呢
#includestdio.h int main() { int i; char ch; for(i0;i3;i) { printf(%d ---- ,i); scanf(%c, ch); printf(/n); } return 0; } 运行结果: 0 ---- a 1 ---- 2 ---- b 3 ---- 产生其原因在于: 因为 scanf %c 只是读入一个字符,而你在输入时实际上输入的是:某个字符 Enter,Enter 产生的/n 也会停留在输入缓冲区中,下次调用 scanf %c 时就会直接读到 它而不是等待你再次输入!同理,getchar()也有类似的行为。所以我们才不提倡使用 scanf(%c, ...),尤其是把它在循环中。 解决的方法: (1)、将 scanf(%c, ch); 修改为: scanf( %c, ch); /*在%前加上一个空格*/ (2)、将 scanf(%c, ch); 修改为: scanf(%c%*c, ch);