scanf()中的%c 不能正常输入的问题

您所在的位置:网站首页 scanf无法运行 scanf()中的%c 不能正常输入的问题

scanf()中的%c 不能正常输入的问题

2024-06-14 23:21| 来源: 网络整理| 查看: 265

#include int main() { char a; int b; scanf("%d",&b); scanf("%c",&a); /******************************/ printf("%d",b); printf("%c",a); return 0; /* 应该输入一个整型一个字符型变 量,然后把它们输出,但是现在 只能输入一个整型变量,很蛋疼 的问题吧!! */ }

%c是在缓冲区内找到一个字符赋值给变量。输入变量时一般用回车来结束也就是“\n”,它也属于一个字符被写入了缓冲区内所以被赋值给变量了,就不用你输入了。

可以这样解决

#include int main() { char a; int b; scanf("%d",&b); getchar();// getchar作用和%c一样,这样就能去除干扰了 scanf("%c",&a); /******************************/ printf("%d",b); printf("%c",a); return 0; } 还可以这样

#include int main() { char a; int b; scanf("%d\n",&b); //在输入流中强制加一个换行符 scanf("%c",&a); /******************************/ printf("%d",b); printf("%c",a); return 0; }



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3