【发布时间】:2022-01-11 14:36:06
【问题描述】:
使用 while 循环和条件语句进行基本编码。但是我遇到了一个问题,我忘记了故障在哪里。
所以这里发生的情况是,代码会要求用户输入“加载”的起点和终点,然后它就会执行此操作。问题是代码应该排除开始和结束整数之间可被 4 整除的数字。
但在我的情况下,即使我使用了“继续”,循环也会在 3 处突然停止。在“while”行下方的 if 语句中,我应该如何解决这个问题? 'output'
无论如何,这是我的代码。
#include<stdio.h>
int main(){
int start, end;
printf("Enter the starting point: ");
scanf("%d", &start);
printf("Enter the ending point: ");
scanf("%d", &end);
while(start <= end){
if(start % 4 == 0){
continue;
}
printf("Loading...%d%\n", start);
start++;
}
return 0;
}
【问题讨论】:
-
请对“输入”(
start和end的值)进行硬编码,并使用调试器单步执行代码以查看实际发生的情况。 -
您的循环不会停止,它实际上会无限运行,因为当 start == 4 时,您将停留(继续)在 while 循环中,因此永远不会到达 start++;
-
@RedaMeskali 哦,我明白你的意思了,我应该如何解决它?当我删除条件语句时,它运行顺利,但它在其中,它无限运行。
标签: c while-loop conditional-statements continue