C语言中有四种循环语句: for循环、while循环、do-while循环以及goto语句,但是goto语句我们一般不用,正在这里不总结出来。
1. for循环
for循环形式: for(表达式1;表达式2;表达式3){循环体} 当循环体只有一句话是可以省略大括号
for循环的执行顺序是先执行表达式1,然后执行表达式2,表达式2为真时执行循环体(否则结束循环),然后再执行表达式3,判断表达式2,若表达式2为真执行循环体(否则结束循环),执行表达式3.。。。。。。。。直到表达式2为假时结束循环。
注:当事先能确定循环次数的问题,一般选择for循环
2、 while循环
while循环的一般形式为:
while(表达式) {循环体} 当循环体只有一句话是可以省略大括号
while循环表示当条件为真时, 便执行语句。直到条件为假才结束循环。
注意:
while(1) 为无限循环
while(x)等级与while(x!=0)的含义是。当x的值为非零时执行循环体,为零食退出循环体;
3、do-while 循环
do-while 循环的一般格式为:
do {
循环体
}
while(表达式);
do-while与while循环都是在while后面指定循环条件,他们的不同在于: do-while先执行循环中的语句, 然后再判断条件是否为真, 如果为真则继续循环; 如果为假, 则终止循环。因此, do-while循环至少要执行一次循环语句。
例:
编写一个程序从键盘输入若干个学生的成绩,并输出在屏幕上(要求一行输出3个学生成绩),用-1结束循环(从键盘输入99 90 80 70 60 50 40 30 -1)
(1)用while循环实现
#include<stdio.h>
main()
{
int a =0,n = 0;
scanf("%4d",&a);
while(a!=-1)
{
printf("%4d",a);n++;
if(n%3==0) printf("\n");
scanf("%4d",&a);
}
}
运行结果:
99 90 80
70 60 50
40 30
(2)do-while循环实现
#include<stdio.h>
main()
{
int a =0,n = 0;
do
{
scanf("%4d",&a);
printf("%4d",a);n++;
if(n%3==0) printf("\n");
}while(a!=-1);
}
运行结果:
99 90 80
70 60 50
40 30 -1
(3)for循环实现
#include<stdio.h>
main()
{
int a =0,n = 0;
for(scanf("%4d",&a);a!=-1;scanf("%4d",&a))
{
printf("%4d",a);n++;
if(n%3==0) printf("\n");
}
}
运行结果:
99 90 80
70 60 50
40 30