前言
C语言的循环结构主要用于处理需要多次循环执行某一算法处理流程直到不满足条件才停止执行该流程的一种特别有用结构。掌握好C语言的循环结构非常重要!
while语句
while语句形式:
while(条件表达式){
执行语句
}
while语句的执行特点:使用while实现循环时,while会首先判断条件表达式是否为真,如果为真,则执行该条件下的执行语句,每完成一次对“执行语句”的执行之后,就会再次判断条件表达式的值是否为真,如果为真继续执行,直到条件表达式的值为假时停止执行。
流程图:
do....while语句
do....while语句格式:
do{
执行语句
}while(条件表达式)
do...while语句与while语句的执行特点比较:
do....while的执行会先去执行执行语句,之后才判断条件表达式是否为真,所以执行语句至少会被执行一次
while语句则是先判断后执行,所以执行语句至少会被执行0次。
do....while语句流程图:
for语句
for语句格式:
for(循环变量初始值;循环条件;循环变量变化情况){
循环体
}
for循环语句流程图
循环嵌套
循环可以进行嵌套,在一个循环的内部嵌套另外一个循环,例如:
for(i=1;i<=9;i++)
{for(j=1;j<=9;j++)
{……}
}
每当内部循环执行9次,外部循环执行一次(实现i的自增一操作),最后的执行次数为:
外部:9次
内部:9*9=81次
使用break与continue跳出循环
continue语句特点:
循环程序示例
题目要求:
输出镂空菱形图案:
*
* *
* *
* *
* *
* *
* *
* *
*
程序分析:
菱形具有对称性,上下对称、左右对称
菱形的左上边的行数与列数的和是一个定值,右上边的列数与行数的差值是一个固定值,同理可以得到下面的部分的关系。
代码如下:#include <stdio.h>
void main()
{
int i,j;
for(i=1;i<=5;i++)
{
for(j=1;j<10;j++)
{
if(i+j==6||j-i==4)
{
printf("*");
}
else
{
printf(" ");
}
}
printf("\n");
}
for(i=6;i<10;i++)
{
for(j=1;j<10;j++)
{
if(i-j==4||j+i==14)
{
printf("*");
}
else
{
printf(" ");
}
}
printf("\n");
}
}
程序运行结果如下: