我相当能胜任 if/else 语句,这是一个非常古老的任务,我最终只完成了部分任务。但我仍然想确切地知道为什么我的代码不起作用。
我希望我的用户输入姓名、身高和性别。然后我的代码将显示一个完整的句子,上面写着“名字是 X 厘米高并且是男性”或“名字是 X 厘米高并且是女性”。
当我输入姓名并输入时,它会立即跳过显示身高和性别。不管我在那之后输入什么,它都会结束程序。
输入姓名:Jack 输入身高 cm:180 性别(男/女):电脑 $
我一直在玩这个代码一段时间了,但我已经被困了一段时间了。任何帮助将不胜感激。这是我的代码:
#include<stdio.h>
int main() {
char name[30];
char sex;
float height;
printf("Input name: ");
scanf("%s", name);
fflush(stdin);
printf("Input height in cm: ");
scanf("%f", &height);
fflush(stdin);
printf("sex(M/F): ");
scanf("%c", &sex);
if (sex == 'M')
{
printf("%s is %f cm tall and male", name, height);
}
else if (sex == 'F')
{
printf("%s is %f cm tall and female", name, height);
}
printf("\n");
return 0;
}