do-while语句 for语句 循环结构的嵌套.ppt
文本预览下载声明
第十讲 do-while语句、for 语句 循环结构的嵌套 5.3 用do-while语句构成的循环 do-while语句的执行过程是:先执行循环体语句,再求表达式的值,若表达式的值为“真”(非0数值)则再执行循环体语句,由此构成循环,直到表达式的值为“假” (数值0)时结束循环。如图所示。 注意点: do-while语句和while语句的区别在于do-while是先执行循环体语句,后判断循环条件,因此do-while至少要执行一次循环体。 5.4 for语句和用for语句构成的循环 for语句的常规使用方法: “表达式1”用来给循环变量赋初值或做一些初始工作; “表达式2”用来作为判断循环是否结束的条件; “表达式3”用来修改循环变量的值,使得循环能够趋于结束。 例5.4 编程计算多个圆的面积 5.5 循环结构的嵌套 * 由do-while语句构成的循环称为”直到型”循环,do-while语句的一般形式为: do 循环体语句 while(表达式); main() { int i, sum; i=1; sum=0; do { sum= sum+i; i++; }while(i=100); printf(sum=%d\n, sum); } 用do-while语句改写例5.3的程序 题目:求1+2+3+…+100的值 注意:N_S流程图的直到型循环结构的循环条件的描述方法与C语言的do-while语句的循环条件的测试方法稍有不同。 这里一定要有一个分号 for语句的一般形式为: for (表达式1;表达式2;表达式3) 循环体语句 for循环语句的执行过程是: (1) 计算”表达式1”的值。 (2) 计算”表达式2”的值; 若其值为非零,转至步骤(3); 若其值为零,则转至步骤(5)。 (3) 执行一次循环体语句。 (4) 计算”表达式3”;然后转向步骤(2),构成循环。 (5) 结束循环,执行for循环之后的语句。 for语句的常规使用方法例 main() /*程序1 */ { int i, sum; for (i=1,sum=0; i=100; i++) sum= sum + i ; printf(sum=%d\n, sum); } “表达式1”是逗号表达式 给循环变量赋初值 做一些初始工作,准备累加! 判断循环是否结束! 使得循环能够趋于结束。 从语法上来讲,三个表达式都可以是任意合法的C表达式,各表达式之间用”;”隔开,并且这三个表达式都是任选项。 例如:我们可以用for循环语句将例5.3的程序改写为如下几种形式,它们都能正确地求出1+2+3+…+100的值。 for语句的非常规使用方法 main() /*程序2 */ { int i=1, sum=0; for ( ; i=100; i++) sum= sum + i ; printf(“sum=%d\n”, sum); } 表达式1省略了! main() /*程序3 */ { int i=1, sum=0; for ( ; i=100; ) {sum= sum + i; i++ ; } printf(“sum=%d\n”, sum); } 循环体语句是复合语句,花括号不能省! 表达式1和表达式3都省掉了! for语句的非常规使用方法2 main() /*程序4 */ { int i=1, sum=0; for ( ; ; ) {sum= sum + i++ ; if i100 goto pend; } pend: printf(“sum=%d\n”, sum); } 三个表达式都被省掉了! 分隔符“ ;”不能省。 由于没有了表达式2,用goto语句结束循环。 main() /*程序5 */ { int i, sum=0; for (i=1; i=100 ; sum=sum+i++ ); printf(“sum=%d\n”, sum); } 循环体语句是一个空语句! 注意在循环体语句之前不能有分号 main() { int i, sum=0; for (i=1 ; i=100; i++) ; sum= sum + i ; printf(sum=%d\n, sum); } main() { int i, sum=0; for (i=1 ; i=100; i
显示全部