易百教程

while循环

使用while循环时,只要指定的逻辑表达式求值为true,就会重复继续语句。

while循环的一般语法如下:

while( expression )
  statement1;
statement2;

statement1statement2 每个都可以是一个语句块。
在开始时测试while循环的继续条件。如果expression一开始就是false,则不会执行任何while循环语句。

以下代码使用while循环来求和整数,参考示例代码:

#include <stdio.h>

int main(void)
{
      unsigned long sum = 0UL;        // 整数之和
      unsigned int i = 1;             // 通过整数索引
      unsigned int count = 0;         // 要求的整数数量

      // 获取要求的整数数量
      printf("\n输入的总和数量: ");
      scanf(" %u", &count);

      // 将整数从1加到count的值
      while(i <= count)
        sum += i++;

      printf("从1加到 %u 的总和是:%lu\n", count, sum);
      return 0;
}

执行上面示例代码,得到以下结果:

hema@ubuntu:~/book$ gcc main.c
hema@ubuntu:~/book$ ./a.out

输入的总和数量: 12
从1加到 12 的总和是:78

请考虑以下代码:

while(i <= count)
    sum += i++;

循环体包含一个语句,累计总和。这将继续执行i值,包括存储在count中的值。
后缀增量运算符将i用于计算每次迭代的总和后递增。

该语句的真正含义是:

sum += i; //或 sum = sum + i;
i++;