所谓循环,就是有规律地重复执行某些语句的过程。在程序设计过程中,会出现重复进行一些相同的功能语句的编写情况,为了使设计出的程序更简洁、易懂,使用循环结构编写重复执行语句的程序。循环结构通常是程序设计中不可缺少的重要部分,掌握好循环结构的程序设计技术至关重要,因为循环体现的是计算机的思维模式。
作为一名程序员应该明白C语言中有三种循环语句:while语句、do…while语句、for语句。
一、while循环
while语句
while语句是条件循环语句,当条件满足时,执行循环体语句,否则不执行循环体语句。
语法结构:
while(表达式)
(循环体语句)
功能
计算表达式的值,其值如果为非0(真),则执行循环体,每执行一次,就计算一次表达式的值,直到表达式的值为0(假)时结束循环,转去执行while的后续语句。while属于当型循环。
当型循环:当表达式为真时执行循环体。
题目分析:
本题要求1+2+3…+100,定义i为循环变量,sum为和变量,由前面给出的循环体三部分,在while语句前,实现初始化部分,循环条件放在while后面的小括号中,循环体语句多于一条,一定要用{}将循环体语句括起来。
#include<stdio.h>
int main(void){
int i,sum;
sum=0;i=1;
while(i<=100){
sum+=i;
i++;
}
printf("sum=%d\n",sum);
return 0;
}
注意
1、先判断表达式,后执行循环体,循环体有可能一次也不执行。
2、while(表达式)括号后面一般不要加“;”,如果加上,则认为循环体是空语句。
3、while后小括号的表达式可以是任意表达式,一般情况下是关系表达式、逻辑表达式或整数表达式,在计算时如果是非零,则其值被认为是真,否则认为是假。
二、do…while循环
do…while语句
do…while语句是无论如何都要执行一次循环体语句,然后再看循环条件是否成立,决定后续的执行路径。
语法格式:
do(循环体结构)
while(表达式);
题目描述:
计算一个不足10位数证书的位数。
题目分析:
因为对于一个整数,位数至少是1.所以循环语句m=/10;n++;至少执行一次
#include<stdio.h>
int main(void){
int m,n;
scanf("%d",&m);
int t=m;
n=0;
do
{
m/=10;
n++;
}while(m!=0);
printf("%d的位数为%d\n",t,n);
return 0;
}
三、for循环
for语句
在循环问题中,当循环次数已知时,通常用for语句实现较为简洁、直观。
for(表达式1,表达式2,表达式3)
循环体语句
例子
题目描述:
求n个分数的和:输入n值,求1/1-1/2+1/3-1/4…的值。
#include<stdio.h>
int main(void){
int n,i;
printf("输入项数:");
scanf("%d",&n);
double sum=0.0,sign=1.0,term;
for(i=1;i<=n;i++){
term=sign/i;
sum+=term;
sign*=-1;
}
printf("sum=%f\n",sum);
return 0;
}
四、goto循环
goto语句格式:
goto L;
求1~100整数和。
#include<stdio.h>
int main(void){
int i,sum;
sum=0;
i=1;
L1:if(i<=100)
{
sum+=i;
i++;
goto L1;
}
printf("sum=%d\n",sum);
return 0;
}
五、循环中断
5.1break语句
功能
break语句只能用于循环语句和switch语句中,作用是退出结束循环语句和switch语句,接着执行循环和switch语句后续语句。
5.2continue语句
功能
跳过循环体continue;后面未执行的语句,接着进行循环下一次迭代。
5.3循环嵌套
定义
一个循环体内又包含另一个完整的循环结构,称为循环嵌套。
以上就是c语言中常见的循环结构,希望不足之处广大网友多多指点!