清华大学出版社 TSINGHUA UNIVERSITY PRESS C语言程序设计 FOR循环
C语言程序设计 ---FOR循环
清华大学出版社 TSINGHUA UNIVERSITY PRESS 知识点回顾 goto标号; goto语句 标号:语句; whle语句 般形式如下: whil(表达式) 循环体语句; ·Do- while 一般形式如下: 循环三要素? do 循环体语句 whil(表达式); break
• goto语句 • while语句 • Do-while • 循环三要素? • break 知识点回顾 一般形式如下: while(表达式) 循环体语句; 一般形式如下: do 循环体语句 while(表达式); goto 标号; ….….. 标号:语句;
清华大学出版社 TSINGHUA UNIVERSITY PRESS or 语句 循环的嵌套 continue语句
• for 语句 • 循环的嵌套 • continue 语句
清华大学出版社 TSINGHUA UNIVERSITY PRESS 6.5for语句 C语言中的for语句使用最为灵活,不仅可以用于循 环次数已经确定的情况,而且可以用于循环次数不 确定而只给出循环结束条件的情况,它完全可以代 替 while语句。 for语句的一般形式为 for(表达式1;表达式2;表达式3) 语句
6.5 for 语 句 C语言中的for语句使用最为灵活,不仅可以用于循 环次数已经确定的情况,而且可以用于循环次数不 确定而只给出循环结束条件的情况,它完全可以代 替while语句。 for语句的一般形式为 for(表达式1;表达式2;表达式3) 语句
清华大学出版社 TSINGHUA UNIVERSITY PRESS (1)先求解表达式1 [求角 解表达式1 (2)求解表达式2, a:若其值为真(值为非0),则执行 for语句中指定的内嵌语句,然后 <表达式2、假 执行下面第3)步。 b:若为假(值为0),则结束循环,转 真 到第(5步。 语句 (3)求解表达式3 (4)转回上面第(2)步骤继续执行 求解表达式3 (5)循环结束,执行for语句下面的 个语句。 for语句的 可以用图66来表示fo语句的执行 下一语句 过程。 图66
(1) 先求解表达式1。 (2) 求解表达式2, a:若其值为真(值为非0),则执行 for语句中指定的内嵌语句,然后 执行下面第(3)步。 b:若为假(值为0),则结束循环,转 到第(5)步。 (3) 求解表达式3。 (4) 转回上面第(2)步骤继续执行 (5) 循环结束,执行for语句下面的 一个语句。 可以用图6.6来表示for语句的执行 过程。 图6.6
清华大学出版社 TSINGHUA UNIVERSITY PRESS for(循环变量赋初值;循环条件;循环变量增值)语句 例如: for(i=1;i<=100;i++) sum=sumti 它的执行过程与图62完全一样。可以看到它相当于以下语句 while(i<=100) sumEsumfI i+十
for(循环变量赋初值;循环条件;循环变量增值) 语句 例如: for(i=1;i<=100;i++) sum=sum+i; 它的执行过程与图6.2完全一样。可以看到它相当于以下语句: i=1; while(i<=100) {sum=sum+i; i++; }
清华大学出版社 TSINGHUA UNIVERSITY PRESS for语句 例如:求1+3+5++201的和。 maino maino Int l, sum; int i sum=0 for(i=1;i<=201;i+=2) sumU sumt=l while( i<=201) printf( sum is %d", sum) {Sum+=i;i+=2;} printf( sum is %d\n",sum);
for语句 例如:求1+3+5+…+201的和。 main() { int i,sum; i=1; sum=0; while( i<=201 ) { sum+=i; i+=2; } printf("sum is %d\n",sum); } main() { int i,sum=0; for( i=1; i<=201 ; i+=2) sum+=i; printf("sum is %d",sum); }
清华大学出版社 TSINGHUA UNIVERSITY PRESS FOR编程 ·编程序计算100以内能同时被3和5正整除的所有数的和? #include maino i int i, sum; i-l; sum=0 while(i<100) if(i%3=0&&i%5==0) sum=sum+i i++;} printi(“sum=%dⅦm”);
FOR编程 • 编程序计算100以内能同时被3和5正整除的所有数的和? #include main() { int i,sum; i=1; sum=0; while(i<100) { if(i%3==0&&i%5==0) sum=sum+i; i++; } printf(“sum=%d\n”); }
清华大学出版社 TSINGHUA UNIVERSITY PRESS 在使用for语句时,有以下注意事项: (1)for语句的一般形式中的“表达式1”可以省略, 此时应在for语句之前给循环变量赋初值。注意 省略表达式1时,其后的分号不能省略。如 for(;i=100;计+)sum=sum+i;执行时,跳过 “求解表达式1”这一步,其他不变。 (2)如果表达式2省略,即不判断循环条件,循环无 终止地进行下去。也就是认为表达式2始终为真
在使用for语句时,有以下注意事项: (1) for语句的一般形式中的“表达式1”可以省略, 此时应在for语句之前给循环变量赋初值。注意 省略表达式1时,其后的分号不能省略。如 for(;i<=100;i++) sum=sum+i;执行时,跳过 “求解表达式1”这一步,其他不变。 (2) 如果表达式2省略,即不判断循环条件,循环无 终止地进行下去。也就是认为表达式2始终为真
清华大学出版社 TSINGHUA UNIVERSITY PRESS 例如: for(i=l; i++) sum=sum+i; 表达式1是一个赋值表达式,表达式2空缺。它相当 于 while(1) tsum=sum+l; i++;} (3)表达式3也可以省略,但此时程序设计者应另外 设法保证循环能正常结束
例如: for(i=1; ;i++) sum=sum+i; 表达式1是一个赋值表达式,表达式2空缺。它相当 于: i=1; while(1) {sum=sum+1; i++;} (3) 表达式3也可以省略,但此时程序设计者应另外 设法保证循环能正常结束