所以,我有一个printf
,要求用户初中,然后我有一个scanf
,然后我输出用户中间的首字母。我的问题是我的printf
scanf
C代码
#include <stdio.h>
#include <string.h>
int main(void) {
char middleInitial;
printf("What is your middle initial? ");
scanf(" %c", &middleInitial);
printf("Middle initial %c", middleInitial);
}
你可以看到,有两个printf
。在我的第一个scanf
显示问题之前,我的printf
正在运行。
示例(这是我在终端中获得的内容)
$ ./a.exe
c
What is your middle initial? Middle initial c
我想要什么
$ ./a.exe
What is your middle initial? c
Middle initial c
顺便说一下,c是用户输入的内容
答案 0 :(得分:2)
在致电fflush(stdout)
之前致电scanf()
。
答案 1 :(得分:0)
在第一个 struct UserModel {
var name:String
var position:String
var image:String
}
之前输入 fflush(stdout);
应该在第一个 scanf()
之后
在我的 Windows 电脑中,我遇到了同样的问题。如果您使用不同的操作系统,您可能不需要它。