【发布时间】:2016-11-19 10:45:58
【问题描述】:
这个概念很简单。计算机必须重复这个问题,直到它收到一个有效的回答。这是我当前的代码:
#include <stdio.h>
int main(int argc, const char * argv[]) {
int age;
do{
printf("How old are you?\n");
scanf("%d", &age);
if (age == 32767)
{
printf("Error, retry: \n");
}
else
{
printf("Cool.");
break;
}
}
while(age!=3267);
return (0);
}
if else 语句用于在用户键入非整数的情况下捕获异常。
我尝试使用 do-while 循环,但它最终变成了一个无限循环 我使用了 do-while 循环,因为我需要执行该过程,直到获得有效的年龄值。
我使用当前代码的输出是:
How old are you?
g
Error, retry:
How old are you?
Error, retry:
How old are you?
Error, retry:
How old are you?
Error, retry:
它会无限期地这样下去。
如果你能帮助我,那就太好了。
【问题讨论】:
-
使用
do while循环。 -
" 尝试使用 do-while 循环但失败了..." - 为什么?如何?你做了什么?这不是编码服务。见How to Ask。
-
谢谢奥拉夫,我已经纠正了我的问题。
-
对于交互式提示阅读行。
-
了解如何正确格式化源代码!这几乎无法阅读。
标签: c loops conditional-statements