所以这是代码,它很简单,但为什么fgets
在第一次循环后再次提示?和年龄是。 (和古怪它的工作原理与scanf("%s",&name_temp)
但我需要抓住其他人物太像áéíóúÇ,空间,所以它会与fgets
更好)Fgets在C编程中运行一次后被忽略了吗?
int menu_option = 0;
char name_temp[80] = "";
int age_temp = 0;
while(menu_option != 9){
//strcpy(name_temp,"");
printf("Type your name\n");
fgets(name_temp, 80, stdin);
printf("\nType your age\n");
scanf("%d", &age_temp);
}
(从已删除的答案移动)
家伙感谢您的回答,但我不认为你们明白我的问题,测试此代码是我送的,你会看到,而不是在终端出现的事情你输入,它只是忽略在第一次厕所之后页。
我想那是什么,第一循环结束后(同时),它回来了,再次询问的人,使用该程序将不得不再次键入该人的姓名。但是在第一次循环之后,它并不要求你输入任何内容,fgets完全被忽略了。
请尝试下面的代码并说出我能做些什么。
我试过freopen的东西,并没有工作。
你不需要在问题后面加上[非常简单的问题]。 – 2011-03-20 11:14:52
@user:请注意,markdown在引号(使用'>')和代码块(使用四个空格)之间进行格式化区分,并注意程序员认为case是标识符拼写的一部分,所以“Fgets”不是与“fgets”相同。 – dmckee 2011-03-20 14:58:09
你不应该接受一个不起作用的回答 – 2014-10-16 04:45:27