gpt4 book ai didi

c - 为什么c接受int变量中的字符串

转载 作者:行者123 更新时间:2023-11-30 20:04:51 25 4
gpt4 key购买 nike

这是我的第一个问题,如果我做错了什么,抱歉。我必须编写一个程序来识别游泳运动员的分类。该程序执行此操作,但是当我编写字符串时,它像 int 变量一样接受。为什么会发生这种情况以及我如何解决这个问题。谢谢

printf("Write the age of the swimmer\n");
scanf("%d", &age);
if(age < 5)
printf("minimum age is five years old\n");
else if(age >= 5 && age <= 7)
printf("Category: child A\n");
else if(age >= 8 && age <= 11)
printf("Category: child B\n");
else if(age >= 12 && age <= 13)
printf("Category: Juvenile A\n");
else if(age >= 14 && age <= 17)
printf("Category: Juvenile A\n");
else if(age >= 18)
printf("Category: Adult\n");
else
printf("Write only numbers\n");




system("PAUSE");
return 0;

最佳答案

您需要检查scanf()的返回值

if (scanf("%d", &age) != 1) {
/* error, age is in an unusable state */
fprintf(stderr, "error reading an integer.\n");
exit(EXIT_FAILURE);
}

关于c - 为什么c接受int变量中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35968781/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com