【发布时间】:2013-11-22 07:30:36
【问题描述】:
#include <stdio.h>
int main()
{
char C, B;
int x;
printf("What comes after G\n");
scanf("%c", &C);
printf("What comes after O\n");
scanf("%c", &B);
printf("What is your age?\n");
scanf("%d", &x);
printf("You said %c comes after G, %c after T and you're %d years old? Right?", C, B, x);
return 0;
}
问题是每当您运行代码时,它都会跳过第二个问题“O 之后是什么”,然后询问“您的年龄是多少?”
我可以避免程序跳过第二个问题的唯一方法是在代码中添加一个空格
printf("What comes after O\n");
scanf(" %c", &B);
您可以看到 " 和 %c
之间的 空格你能给我解释一下吗?
【问题讨论】:
-
遇到同样的问题> 见这里stackoverflow.com/questions/12653884/…