3.11循环结构和循环语句 顺序结构、选择结构和循环结构,是各种复 杂程序的基本构造单元。因此程序设计者必须熟 练掌握选择结构和循环结构的概念及使用方法。 循环语句: while语句; do-while语句; for语句;
3.11 循环结构和循环语句 顺序结构、选择结构和循环结构,是各种复 杂程序的基本构造单元。因此程序设计者必须熟 练掌握选择结构和循环结构的概念及使用方法。 循环语句: while 语句; do - while 语句; for 语句;
3.11循环结构和循环语句 用whi le语句构成循环(当型循环) 般形式:while(表达式)语句 作用:当指定的条件为真时,执行while语句中 的内嵌语句(循环体)。 特点:先判断表达式, 后执行语句。 表达式 假(0) 真(非0) 语句
3.11 循环结构和循环语句 一、 用while语句构成循环(当型循环) 一般形式:while (表达式) 语句 作用:当指定的条件为真时,执行while语句中 的内嵌语句(循环体)。 特点:先判断表达式, 后执行语句
3.11循环结构和循环语句 例:求1+2+3+.+100。 #include using namespace std; int main() Kint i=1,sum=0; 假 i≤100 while (i<=100) 真 sum=sum+i; sum=sum+i i=i+1 i++; cout<<"sum="<<sum<<endl } 运行结果: sum=5050
3.11 循环结构和循环语句 例:求1+2+3+.+100。 #include using namespace std; int main( ) {int i=1,sum=0; while (i<=100) { sum=sum+i; i++; } cout<<″sum=″<<sum<<endl; } 运行结果: sum=5050
3.11循环结构和循环语句 二 用do一whi le语句构成循环(直到型循环) 一般形式: do 循环体语句 语句 while (表达式); 特点:先执行循环体, 非0(真) 表达式 后判断循环条件是否成立。 0(假)
3.11 循环结构和循环语句 二、用do-while语句构成循环(直到型循环) 一般形式: do 语句 while (表达式); 特点:先执行循环体, 后判断循环条件是否成立
3.11循环结构和循环语句 例:用do-whilei语句求1+2+3+.+100。 #include using namespace std; int main() Kint i=1,sum=0 do sum=sum+i i=i计1 sum=sum+i; i++: 真 }while(i<=100); i≤100 cout<<"sum="<<sum<<endl; 假 return 0; X
3.11 循环结构和循环语句 例:用do-while语句求1+2+3+.+100。 #include using namespace std; int main( ) {int i=1,sum=0; do { sum=sum+i; i++; }while (i<=100); cout<<″sum=″<<sum<<endl; return 0; }
while和do-while比较 int sum=0,i; {int sum=0,i; cin>>i; cin>>i; while(i<=10) do {sum=sum+i; sum=sum+i; t+; i++; }while(i<=10); cout长<“sum=”<<sum; cout长<“sum=”<<sum; 1 1 sum=55 sum=55 11 11 Sum=0 Sum=11
. {int sum=0,i; cin>>i; while(i>i; do {sum=sum+i; i++ ; }while(i<=10); cout<<“ sum=”<<sum; } while 和 do – while 比较
3.11循环结构和循环语句 三、用for语句构成循环 一般格式 for(表达式1;表达式2;表达式3) 语句 相当于: 表达式1; while(表达式2) {语句 表达式3; } fo(循环变量赋初值;循环条件;循环变量增值)语句
3.11 循环结构和循环语句 三、 用for语句构成循环 一般格式 for(表达式1;表达式2;表达式3) 语句 相当于: 表达式1; while(表达式2) { 语句 表达式3; } for(循环变量赋初值;循环条件;循环变量增值) 语句
3,11循环结构和循环语句 执行过程: ①先求表达式1。 求解表达式1 ②求解表达式2,若值为真, 执行循环体,然后执行第 假 表达式2 ③步,若为假,则结束循环, 真 转到第⑤步。 语句 ③求解表达式3。 ④转回上面第②步骤继续执行。 求解表达式3 ⑤循环结束,执行fo语句下面的 一个语句。 for语句的 下一语句
3.11 循环结构和循环语句 执行过程: ①先求表达式1。 ②求解表达式2,若值为真, 执行循环体,然后执行第 ③步,若为假,则结束循环, 转到第⑤步。 ③求解表达式3。 ④转回上面第②步骤继续执行。 ⑤循环结束,执行for语句下面的 一个语句
3.11循环结构和循环语句 说明: ①表达式1可以省略,其后分号不能省略,应在 for语句之前给循环变量赋初值。 例:=1; for(;i<=100;i++)sum=sum+i; ②若表达式2省略,死循环,即表达式2始终为 真. 例:for(i=1;;i++)sum=sum+i; ③表达式3也可省略,但应另外设法保证。 例:for(i=1;iK=100;) sum=sum+i;i++;
3.11 循环结构和循环语句 说明: ①表达式1可以省略,其后分号不能省略,应在 for 语句之前给循环变量赋初值。 例:i=1; for( ;i<=100; i++) sum=sum+i; ②若表达式2省略,死循环,即表达式2 始终为 真. 例: for(i=1 ; ; i++)sum=sum+i; ③表达式3也可省略,但应另外设法保证。 例: for(i=1; i<=100;) { sum=sum+i; i++; }
3.11循环结构和循环语句 ④可以省略表达式1和表达式3,只有表达式2。 例: i=0;for(;i<=100;) i=0; sum=sum+i; while(i<100) i++; 相当于{sum=sum+i; i++; ⑤三个表达式都可省略,如: for(:;)语句 相当于while()语包;
3.11 循环结构和循环语句 ④可以省略表达式1 和表达式3,只有表达式2。 例: i=0; for( ; i<=100 ; ) i=0; { sum=sum+i; while(i<100) i++; 相当于 { sum=sum+i; } i++; } ⑤三个表达式都可省略,如: for( ; ; )语句 相当于 while(1) 语句;