所以我对使用while循环非常陌生并且被困在这里。有人能帮我解决这个问题还是指向正确的方向?它是我想要创建的更大程序的一部分。谢谢你的帮助!
它应该继续询问直到" q"进入了。
代码:
#include <stdio.h>
int main(void)
{
int height, feet, inches;
char name[30];
while (name!='q')
{
printf("Enter height and first name: ");
scanf("%d %s", &height, &name);
inches = height%12;
feet = height / 12;
printf("%s's height is %d feet and %d inches.\n", name, feet, inches);
}
return 0;
}
我注意到当我进入结束循环时,程序发疯并开始无限地打印循环的第一行。
答案 0 :(得分:2)
while (name!='q');
您无法在C中比较此类字符串。您需要使用strcmp
,例如while (strcmp(name, "q"))
。
答案 1 :(得分:1)
将while (name!='q')
替换为while(name[0]!='q')
它会正常工作。