简单的C扫描不工作?如果我尝试这样的东西:int anint;char achar;printf("\nEnter any integer:");scanf("%d", &anint);printf("\nEnter any character:");scanf("%c", &achar);
printf("\nHello\n");printf("\nThe integer entered is %d\n", anint);printf("\nThe char entered is %c\n", achar);它允许输入一个整数,然后跳过第二个整数。scanf完全来说,这真的很奇怪,就像我交换两个(char(首先,它工作得很好。到底是怎么回事?
3 回答
翻过高山走不出你
TA贡献1875条经验 获得超3个赞
scanf
scanf
char
fgets
sscanf
char line[MAX];printf("\nEnter any integer:");if( fgets(line,MAX,stdin) && sscanf(line,"%d", &anint)!=1 ) anint=0;printf("\nEnter any character:");if( fgets(line,MAX,stdin) && sscanf(line,"%c", &achar)!=1 ) achar=0;
scanf("%c%*c",&anint);
%*c
人到中年有点甜
TA贡献1895条经验 获得超7个赞
%c
%c
:
scanf(" %c", &achar);
scanf
叮当猫咪
TA贡献1776条经验 获得超12个赞
getchar()
scanf
char input_1;char input_2;getchar();scanf("%c", &input_1);getchar();scanf("%c", &input_2);
- 3 回答
- 0 关注
- 357 浏览
添加回答
举报
0/150
提交
取消