SCANF字符输入
发布网友
发布时间:2022-04-23 17:08
我来回答
共3个回答
热心网友
时间:2022-04-27 09:40
字符时,连回车也被算作一个字符。 是的!!!!
可用getch()或者getchar()在scanf("%c",&c);之后来接收掉多于的回车
也可用fflush(stdin)在scanf("%c",&c);之后刷新输入缓冲区 从而去掉多于的回车
如:
1:
scanf("%d",&n);
getch();
2:
scanf("%d",&n);
getchar();
3:
scanf("%d",&n);
fflush(stdin); /*这种方式也很有用,当还包括其它多余时,可一次性刷新*/
4:(建议)
fflush(stdin); /*这种方式也很有用,输入之前刷新,保证了输入时,不受上一次输入的影响*/
scanf("%d",&n);
热心网友
时间:2022-04-27 10:58
#include<stdio.h>
void main()
{
int n;
//int a;
char c;
printf("please input the value of n:");
scanf("%d",&n);
/*for(int i=0;i<n;i++)
{
printf("please input a interge:");
scanf("%d",&a);
printf("%d\n",a);
}*/
for(int i=0;i<n;i++)
{
printf("please input a char:");
scanf("%c",&c);//这句改为:scanf("%c%*c",&c)就可以了,这是因为c语言对字符的特别处理,回车也算字符的
printf("%c\n",c);
}
}
热心网友
时间:2022-04-27 12:33
scanf("%d",&n);
下面加一句
getchar();