目录
前言
在C语言中,常见的循环语句有三种:for循环,while循环和do-while循环。
下面是它们各自的基本语法和示例。
一、for循环
for语句能用于两种情况:1.循环次数已经确定。2.循环次数不确定而只给出循环结束条件。
其基本语法如下:
for(循环变量赋初值;循环条件;循环变量增值){
//循环语句
}
示例:求1~100的和(注意到,sum前面不加“&”)
#include<stdio.h>
int main(){
int sum=0;
int i;
for(i=1;i<=100;i++){
sum=sum+i;
}
printf("1~100的和为%d\n",sum);
return 0;
}
/*为什么printf里面的变量sum不加“&”?
加&传递的是指针,是一个内存地址;不加&传递的是值,是一个变量的拷贝。
printf 在输出时,只需要值就够了。
而scanf 之所以加&,是因为他需要知道你想把输入的参数,保存在内存的什么地方,也就是你给的变量的地址*/
二、while循环
while语句:只要当循环条件表达式为真(即给定的条件成立),就执行循环体语句。
(while循环的特点:先判断循环条件,后执行循环体语句)
其基本语法如下:
while(循环条件){
//循环体
}
示例:求1~100的和
#include<stdio.h>
int main(){
int i=1,sum=0;
while(i<=100){
sum=sum+i;
i++;
}
printf("1~100的和为%d",sum);
return 0;
}
三、do-while循环
do-while语句:先执行循环体,然后再检查循环条件是否成立,若成立再执行循环体。
(do-while循环的特点:先无条件执行循环体,然后判断循环条件是否成立。)
其基本语法如下:
do{
//循环体
}while(循环条件)
示例:求1~100的和
#include<stdio.h>
int main(){
int i=1,sum=0;
do{
sum=sum+i;
i++;
}while(i<=100);//注意在这里,有一个分号!!
printf("1~100的和为%d",sum);
return 0;
}
四、改变循环执行的状态
1.break语句提前终止循环
break语句的作用:使流程跳出循环体之外,接着执行循环体下面的语句。
(break语句只能用于循环语句和switch语句之中,而不能单独使用。)
示例:1~100从小到大依次相加,当和大于3000时,立刻输出和。
#include<stdio.h>
int main(){
int sum=0;
for(i=1;i<=100;i++){
sum=sum+i;
if(sum>3000) break;//break语句前常用if语句作为执行条件
}
printf("此时和为%d",sum);
return 0;
}
思考:如果是双重循环,在内循环体内有一个break语句,下一步进行什么循环?
解答:提前终止内循环,继续进行外循环。
2.continue语句提前结束本次循环
continue语句的作用:结束本次循环,进入下一次循环。
示例:要求输出100~200不能被3整除的数。
#include<stdio.h>
int main() {
int i;
for (i = 100; i < 200; i++) {
if (i % 3 == 0) //i%3==0,是指i除以3的余数等于0,即i能够被3整除
continue; //continue语句也常搭配if语句进行使用
printf("%d\n", i);
}
return 0;
}
总结
本文对于C语言中的循环语句进行基础性介绍,后续搭配着该基础文章进行程序练习会更加便捷。