外贸
do
while(表达式);
这个循环与while循环的不同在于:它先执行循环体语句一次,再判断表达式的值,若为真(非0)则继续执行循环体语句;直到表达式的值为假(0)时才退出循环。do-while语句和while语句的区别在于do-while是先执行后判断,因此,do-while循环至少要执行一次循环体语句。而while语句是先判断后执行,如果条件不满足,则一次循环体语句也不执行。一般用while语句所编写的程序也可以用do-while来编写。do-while执行流程如图4-3表示。
图4-3 do-while语句执行过程
【例4-3】用do-while语句计算从1加到100的值
分析:本题要求sum=1+2+3+…+100,循环变量i的值从1-100递增,i的初值为1、终值为100,累加器sum的初值为0(sum=sum+i)。
程序的算法流程图如图4-4所示。
根据流程图写出的程序如下:
#include <stdio.h>
int main(){
int i,sum=0;
i=1;
do{
sum=sum+i;
i++;
}while(i<=100);
printf("%d\n",sum);
return 0;
}
程序运行结果:
5050
【例4-4】while和do-while循环比较。
1. while循环
#include <stdio.h>
int main( ){
int sum=0,i;
scanf("%d",&i);
while(i<=10){
sum=sum+i;
i++;
}
printf("sum=%d",sum);
return 0;
}
输入11时的运行结果:
11
sum=0
2.do-while循环:
#include <stdio.h>
int main( ){
int sum=0,i;
scanf("%d",&i);
do{
sum=sum+i;
i++;
}while(i<=10);
printf("sum=%d",sum);
return 0;
}
当输入11时的运行结果:
11
sum=11
在本例中,当i=11时, while循环先判断条件“i<=100”不成立,循环体一次也没有执行,所以输出sum=0;而do-while循环是先执行循环体“sum=sum+i; i++;”,这时sum=0+11即sum=11,i=12已经计算好了再来判断条件“i<=100”是否成立来决定是否进入下一次循环。
来源:服务器,转载请保留出处和链接!
本文链接:http://www.cau168.com/post/144.html
Copyright 六六互联.Some Rights Reserved.www.ic.vip