请教关于C语言的问题
本帖最后由 liyuanjun 于 2016-7-30 22:38 编辑#include<stdio.h>
int main()
{
char b;
int i;
for(i=0;i<5;i++)
{
printf("请输入字符:\n");
scanf("%c",&b);
}
for(j=0;j<5;j++)
printf("%c ",b);
}
程序运行后,为什么我输入的时候会是这样子???能不能帮忙解释一下,谢谢了!!!
请输入字符:
A
请输入字符:
请输入字符:
B
请输入字符:
请输入字符:
C
A
B
C 在sacnf后边加 fflush(stdin) 功能就是清空输入缓存区,保证后面字符输入
文献:http://baike.sogou.com/v7539862.htm?fromTitle=fflush%09stdin 大奔G 发表于 2016-7-31 12:06
在sacnf后边加 fflush(stdin) 功能就是清空输入缓存区,保证后面字符输入
文献:http://baike.sogou.c ...
谢谢 return0; 去哪里了 学习了,一直在输入后面会追加\n,原来还有fflush(stdin)这招
#include <stdio.h>
int main()
{
char c;
int i,j;
for(i = 0; i < 5;i++)
{
scanf("%c",&c);
fflush(stdin);
}
for(j = 0;j < 5;j++)
{
printf("%c\n",c);
}
getchar();
return 0;
} 廿文廿武 发表于 2016-7-31 18:35
学习了,一直在输入后面会追加\n,原来还有fflush(stdin)这招
为什么结尾加个getchar() sunshineLove 发表于 2016-7-31 21:55
为什么结尾加个getchar()
getchar()是让程序不会马上退出。在VC中运行时你还可以看见结果,如果不加getchar()单独运行会一闪而过
页:
[1]