该程序是,用户输入起始值、结束值和间隔。输出应该是,start_value 将被添加到间隔中,直到达到结束值。如果输出大于最终值,我想显示一些消息。示例:
Enter start value:5
Enter end value: 30
Enter interval value: 5
Output: 5 10 15 20 25 30 // correct output
2nd try
Enter start value:5
Enter end value: 30
Enter interval value: 6
Output: 5 11 17 23 29 35 // wrong output
我的代码:
while(start_value <= end_value)
{
start_value = start_value + interval_value;
printf("%d ",start_value);
}
最佳答案
您需要一个决定性的 if 条件。并且,在执行增量之前移动 printf() 语句。
如果start_value > end_value,则交换它们; 否则,继续相同的循环。
为了方便起见,引入一个临时变量来交换值。
if(start_value > end_value){
temp = start_value;
start_value = end_value;
end_value = temp;
}
while(start_value <= end_value)
{
printf("%d ",start_value);
start_value = start_value + interval_value;
}
关于c - 我应该使用什么循环以及如何使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39042597/