一.循环程序设计
1. for语句实现循环
for语句格式如下:
for(表达式1;表达式2;表达式3)
循环体
若循环体超过一条语句就要用大括号括起来;
执行过程:计算表达式1;判断表达式2是否为真(非0为真,0为假);若为真,则执行循环体
再执行表达式3:程序流转到判断表达式2;退出循环;
例如计算1+2+3+4+...+100的值
#include<stdio.h>
int main()
{
int i,s=0;
for(i=1;i<=100;i++)
s+=i;
printf("1+2+3+4+...+100=%d\n",s);
return 0;
}
运行结果:1+2+3+4+...+100=5050
1.2while语句实现循环
while语句用于实现“当型”循环结构,其一般形式为:
while(条件表达式)
循环体
特点:先判断表达式,后执行语句,若表达式一开始就为0,则循环体一次都不执行;反之若条件表达式恒不为0则循环体执行不结束,称之为”死循环“;
#include<stdio.h>
int main()
{
int i=0,s=0;
while(i<100)
{i++;
s+=i;
}
<span style="font-family: Arial, Helvetica, sans-serif;"> printf("1+2+3+4+...+100=%d\n",s);</span>
return 0;
}
运行结果:1+2+3+4+...+100=50501.3do while语句实现循环
do while语句用于实现"直当型"循环结构,一般形式为:
do
{
循环体
}while(表达式);
执行过程:(1)执行循环体;
(2)判断表达式是否为真;
(3)若为真,转(1),否则转4;
(4)退出循环,执行while后的语句。
特点;先执行循环体,后判断条件,这种循环一般高级语言称为“直到型”循环。
#include<stdio.h>
int main()
{
int i=0,s=0;
do
{i++;
s+=i;
}while(i<100); <pre name="code" class="html"><span style="font-family: Arial, Helvetica, sans-serif;"> printf("1+2+3+4+...+100=%d\n",s);</span>
return 0;}
运行结果:1+2+3+4+...+100=5050
1.4 用break语句和continue语句控制循环
1.4.1 break语句
功能:终止循环
#include<stdio.h>
int main()
{
int i,a,b;
printf("Please enter a and b:\n");
scanf("%d%d",&a,&b);
if(a>b)
{
i=a;a=b;b=i;
}
for(i=b;;i=i+b)
if (i%a==0) break;
printf("最小公倍数是:%d\n",i);
return 0;
}
运行结果:
1.4.2 continue语句
功能:终止本次循环,继续判断循环条件
例如:计算并显示10以内的不能被3整出的数;
#include<stdio.h>
int main()
{
int n;
for(n=0;n<=10;n++)
{
if(n%3==0) continue;
printf("%d ",n);
}
return 0;
}
运行结果:1 2 4 5 7 8 10