结构化程序设计的三种基本结构都有顺序结构,选择结构和循环结构。其中,实现循环结构的语句主要有以下几种,为了便于详解,举个例子说明。
求解1到100的和。
这是一个累加的题,要重复100次加法,显然可以用循环结构来实现。重复执行循环100次,每次加一个数。
用while实现循环
#include<stdio.h>
int main()
{
int i = 1, sum = 0;
while (i<=100)
{
sum = sum + i;
i++;
}
printf("%d\n", sum);
system("pause");
return 0;
}
i<=100是一个循环条件表达式,它是一个关系表达式,它的值只能是真或者假。在执行while语句时先检查循环条件表达式的值,当非0(真)时就执行while语句中的循环体语句;当表达式为假时,不执行循环体语句。
注意: while循环的特点是:先判断条件表达式,后执行循环体语句。
2. 用do...while语句实现循环
#include<stdio.h>
int main()
{
int i = 1, sum = 0;
do
{
sum = sum + i;
i++;
} while (i<=100);
printf("%d\n", sum);
system("pause");
return 0;
}
它的过程是:执行do语句,然后检查 i 的值,当 i 小于或等于100时,就返回执行一次循环体,直到 i 大于100为止。
do...while语句的执行过程是:先执行循环体,然后在检查条件是否成立,若成立,在执行循环体。这与while语句是有所区别的。
注意:do...while语句的特点是:先无条件的执行循环体,然后判断循环条件是否成立。
3. 用for语句实现循环
#include<stdio.h>
int main()
{
int i = 1, sum = 0;
for (i = 1; i <= 100;i++)
{
sum = sum + i;
}
printf("%d\n", sum);
system("pause");
return 0;
}
其中 i 是循环变量初值为1,i<=100是循环条件,当循环变量i的值小于等于100时。循环继续执行。i++的作用是循环变量i的值不断变化,以便满足循环条件,使循环结束。
for语句,如(for (i = 1; i <= 100;i++) 的执行过程如下:
先将 1 赋给 i ;若此式的值满足条件表达式,则执行for语句中循环体,执行完循环体后再执行 i ++,此时i+1=2,满足条件表达式,在执行循环体。如此反复,直至 i 增加到101,此时表达式i <=100的值为假,不在执行循环体,循环结束,执行for语句的下一个语句。