while循环在C程序中多次重复一系列任务

时间:2015-10-10 15:04:49

标签: c loops

我正在编写一个C程序来重复一系列问题指定的时间。我要求用户输入他们想要的尝试次数,然后我根据他们的数量运行以下循环,但问题是循环不断重复。它不会停止在指定的尝试次数。这是代码:

#include <stdio.h>
int main(void){

    int num1,num2,high,low,average,subtotal,total_aver;

    printf("Enter number of tries you want:");
    scanf("%d", &num1);



    while (num1 < num1 + 1) {

            printf("Try number: ");
            scanf("%d", &num2);

            printf("Enter high ");
            scanf("%d", &high);

            printf("Enter low ");
            scanf("%d", &low);

            subtotal = high + low;
            total_aver = subtotal / 2;

            printf("Average temperature is: %d", total_aver);

    }

}

如果用户输入3次尝试次数,那么程序应该在循环内部询问这些问题三次,但它会一直重复而不会结束。

2 个答案:

答案 0 :(得分:5)

  int i=0;
  while(i<num1){ 
   // your code
   i++;
 }

这是无限循环。它将继续并继续下去。

如果要迭代次数,请像这样写循环 -

 while(num1>0){
   // your code
    num1--;
 }

或者没有任何额外的变量 -

.htaccess

答案 1 :(得分:2)

这是因为while中的条件错误。 事实上,将num1分配给任何值,当num1等于num1+1时,它将退出。这是不可能的,不是吗?您必须使用另一个变量来计算重复循环的次数。 修复方式:

int count=0;
while(count<num+1){
    //your code
    count=count+1;
}