如何排除';输入';在c中进行字符输入时?
如果这是我的代码,它会将第一个字符放入变量“a”,然后如果我按enter键,变量“b”会将enter作为其输入。如何克服这个问题?在C语言中,所有的输入操作都是在ASCII码的帮助下完成的。Enter键有ASCII码如何排除';输入';在c中进行字符输入时?,c,char,C,Char,如果这是我的代码,它会将第一个字符放入变量“a”,然后如果我按enter键,变量“b”会将enter作为其输入。如何克服这个问题?在C语言中,所有的输入操作都是在ASCII码的帮助下完成的。Enter键有ASCII码10,当您按Enter键时,然后scanf(“%c”、&b)将其转换为ASCII码并存储10。您可以通过打印printf(“%d”,b)来查看 在您的情况下,您可以使用可选的输入字符串getchar()来处理类似Enter的内容 输出: 输入a:输入b:输入c:输入d: 打印a-m
10
,当您按Enter键时,然后scanf(“%c”、&b)
将其转换为ASCII码并存储10
。您可以通过打印printf(“%d”,b)
来查看
在您的情况下,您可以使用可选的输入字符串getchar()
来处理类似Enter的内容
输出:
输入a:输入b:输入c:输入d:打印a-m
打印b-n
打印c-0
打印d-p
在C语言中,所有的输入操作都是在ASCII码的帮助下完成的。Enter键有ASCII码
10
,当您按Enter键时,然后scanf(“%c”、&b)
将其转换为ASCII码并存储10
。您可以通过打印printf(“%d”,b)
来查看
在您的情况下,您可以使用可选的输入字符串getchar()
来处理类似Enter的内容
输出:
输入a:输入b:输入c:输入d:打印a-m
打印b-n
打印c-0
打印d-p
scanf(“%c”和&a)代码>-->scanf(“%c”和&a)代码>另一个选项(不如scanf(“%c”))是在每次扫描后添加getchar(),使用刷新stdin
,而((c=getchar())!='\n'&&c!=EOF)代码>或类似的scanf(“%c”和&a)代码>-->scanf(“%c”和&a)代码>另一个选项(不如scanf(“%c”))是在每次扫描后添加getchar(),使用刷新stdin
,而((c=getchar())!='\n'&&c!=EOF)代码>或类似
#include<stdio.h>
int main()
{
printf("Enter a : ");
scanf("%c",&a);
printf("Enter b : ");
scanf("%c",&b);
printf("Enter c : ");
scanf("%c",&c);
printf("Enter d : ");
scanf("%c",&c);
}
C:\Users\Saran\Desktop>gcc new.c
C:\Users\Saran\Desktop>a
Enter a : s
Enter b : Enter c : c
Enter d :
int main() {
char a,b,c,d;
printf("Enter a : ");
scanf("%c",&a);
getchar();
printf("Enter b : ");
scanf("%c",&b);
getchar();
printf("Enter c : ");
scanf("%c",&c);
getchar();
printf("Enter d : ");
scanf("%c",&d);
printf("\n print a - %c ",a);
printf("\n print b - %c ",b);
printf("\n print c - %c ",c);
printf("\n print d - %c",d);
return 0;
}