《高级程序设计语言》 第六章 循环控制

高级程序设计语言 吴凡 TEL:83202682 E-mail:cdwf@tom.com
高级程序设计语言 吴 凡 TEL: 83202682 E-mail: cdwf@tom.com

第六章循环控制 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 第六章 循环控制

概述 ●循环结构:在给定条件成立时,反复执行某程序 段,直到条件不成立为止 ●给定的条件称为循环条件,反复执行的程序段称为循 环体 实现循环的四种语句 用goto语句和语句构成循环;(不提倡) 用 While语句;( While型循环,先判断,再执行) ●用 do-while语句;(先执行,再判断) ●用fo语句;(多功能) 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 概述 ⚫ 循环结构:在给定条件成立时,反复执行某程序 段,直到条件不成立为止。 ⚫ 给定的条件称为循环条件,反复执行的程序段称为循 环体。 ⚫ 实现循环的四种语句 ⚫ 用goto语句和if语句构成循环;(不提倡) ⚫ 用while语句;(while型循环,先判断,再执行) ⚫ 用do-while语句;(先执行,再判断) ⚫ 用for语句;(多功能)

goto语句以及用goto语句构成循环 goto语句功能:无条件地转向语句标号所在的语句行出开 始执行 格式为:goto语句标号; 语句标号:属于标识符,命名规则与变量相同 ●不提倡使用,会破坏结构化, 例 例:求1+2+3.+100的和 include stdio. h for main o for(...) int sum= 0 if (disaster) 1oop:if(i<=100){ goto error Sum Sun 1++; goto loop; error: printf("ERROR\n) printf("sum d\n", sum)i 电子科技大
电子科技大学通信与信息工程学院 goto语句以及用goto语句构成循环 ⚫ goto语句功能:无条件地转向语句标号所在的语句行出开 始执行 ⚫ 格式为: goto 语句标号; ⚫ 语句标号:属于标识符,命名规则与变量相同 ⚫ 不提倡使用,会破坏结构化, ⚫ 例: 例:求1+2+3…+100的和 for ( ... ) for ( ... ) { ... if (disaster) goto error; } ... error: printf(“ERROR\n”); #include "stdio.h" main() { int sum = 0, i = 1; loop: if (i<=100){ sum = sum + i; i++; goto loop; } printf("sum = %d\n",sum); }

While语句 格式: While(表达式) 表达式0假) 语句; 非0(真) 语句 ●例:求1+2+3.+100 的和 循环 #include "stdio. h" 变量 main o 当(表达式)为真 nt sum =s0 while <=100) 语句 循环体 sum sum t li 1+十 printf ("sum d\n", sum); 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 while 语句 ⚫ 格式:while (表达式) 语句; ⚫ 例:求1+2+3…+100 的和 语句 当(表达式)为真 语句 表达式 0(假) 非0(真) #include "stdio.h" main() { int sum = 0, i = 1; while (i <= 100){ sum = sum + i; i++; } printf("sum = %d\n",sum); } 循环体 循环 变量

While语句 例:∑冂 例:n! #include stdio.h" #include "stdio. h" main o main o int sum, i int fac, ii int n int n printf ("Input n: \t")i printf("Input n:\ t") scanf("d", &n)i scanf("d &n)i sUIn fac 1 1 while (i < n)[ while (i n sum+=工; sum★ 1++; 1++; printf("sum 号dln",sum); printf("factorial=d\n", fac); 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 while 语句 ⚫ 例:∑n 例:n! #include "stdio.h" main() { int sum, i; int n; printf("Input n:\t"); scanf("%d", &n); sum = 0; i = 1; while (i <= n){ sum += i; i++; } printf("sum = %d\n",sum); } #include "stdio.h" main() { int fac, i; int n; printf("Input n:\t"); scanf("%d", &n); fac = 1; i = 1; while (i <= n){ sum *= i; i++; } printf("factorial=%d\n",fac); }

While语句 ●例:统计从键盘输入一行字符的个数 #include "stdio.h" main() int num o printf("input a string: \t)i while (getchar()!=1\n') num++ printf("character number d\n", num)i 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 while语句 ⚫ 例:统计从键盘输入一行字符的个数 #include "stdio.h" main() { int num = 0; printf("input a string:\t"); while (getchar()!=‘\n’) num++; printf("character number = %d\n", num); }

While语句注意事项 循环前,应先给循环变量赋初值 循环体中,一般应该有修改循环变量值的语句 使循环趋向结東(即使表达式的值变为假) 循环体如包括有一个以上的语句,则必须用复合 语句(即用{}括起来) ●循环体可以为空 ●例:whe(c= getchar()!=Q'); 等价:c= getchar(); while(c! =Q C= getchar 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 while语句注意事项 ⚫ 循环前,应先给循环变量赋初值 ⚫ 循环体中,一般应该有修改循环变量值的语句, 使循环趋向结束(即使表达式的值变为假) ⚫ 循环体如包括有一个以上的语句,则必须用复合 语句(即用{ }括起来) ⚫ 循环体可以为空 ⚫ 例:while ((c = getchar( )) != 'Q' ); 等价:c = getchar( ); while (c != 'Q') c = getchar();

do-While语句 语句 ●格式:do 表达式#C 0(真) 语句; While(表达式); 0(假 ●特点:先执行,再判断 区别:Whle语句:先判断, 语句 再执行 直到(表达式)为假 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 do-while语句 ⚫ 格式:do 语句; while (表达式); ⚫ 特点:先执行,再判断 ⚫ 区别:while语句:先判断, 再执行 语句 直到(表达式)为假 表达式 非0(真) 0(假) 语句

区别: do while& while o while do while include stdio. h" #include "stdio. h main o maIn int sum=0, n; int sum=0, ni scanf(d",&n)i scanf("gd",&n)i while(n 10) do i sum + ni sum + n. n++ n++ }whi1e(n<=10); printf("sum=号d\n SuIn printf ("sum=d\n" sum)i 电子科技大学通信与信息工程学院
电子科技大学通信与信息工程学院 区别:do while & while ⚫ while do while #include "stdio.h" main() { int sum=0, n; scanf("%d",&n); while(n <= 10){ sum += n; n++; } printf("sum=%d\n",sum); } #include "stdio.h" main() { int sum=0, n; scanf("%d",&n); do{ sum += n; n++; } while( n <= 10); printf("sum=%d\n",sum); }
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《高级程序设计语言》 第八章 函数.ppt
- 《高级程序设计语言》 第五章 选择结构程序设计.ppt
- 《高级程序设计语言》 第二章 程序的灵魂——算法.ppt
- 《高级程序设计语言》 第三章 数据类型、运算符与表达式.ppt
- 《高级程序设计语言》 第七章 数组.ppt
- 《高级程序设计语言》 第一章 C语言概述.ppt
- 《计算机辅助设计》AutoCAD教程讲义(共十章).doc
- 黑龙江八一农垦大学:《计算机辅助设计》理论课程各章电子教案.doc
- 黑龙江八一农垦大学:《计算机辅助设计》课程教学大纲(草业科学及园林专业).doc
- 《汇编语言程序设计教程》 第十章 保护模式及其编程.ppt
- 《汇编语言程序设计教程》 第九章 I/0程序设计.ppt
- 《汇编语言程序设计教程》 第八章 汇编语言高级编程技术.ppt
- 《汇编语言程序设计教程》 第七章 常用数据结构.ppt
- 《汇编语言程序设计教程》 第六章 子程序设计.ppt
- 《汇编语言程序设计教程》 第五章 分支与循环程序设计.ppt
- 《汇编语言程序设计教程》 第四章 数据操作.ppt
- 《汇编语言程序设计教程》 第三章 Windows汇编程序基础.ppt
- 《汇编语言程序设计教程》 第二章 Intel80x86系列微处理器.ppt
- 《汇编语言程序设计教程》 第一章 基础知识.ppt
- 《C语言》课程教学资源(作业习题)实例试题100题.doc
- 《高级程序设计语言》 第十一章 结构体与公用体.ppt
- 《高级程序设计语言》 第十章 指针.ppt
- 《高级程序设计语言》 第四章 顺序程序设计.ppt
- 上海交通大学:《接口技术》 实验教学大纲.doc
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)目录(孙德文).ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第十章 微型计算机系统实用接口技术.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第七章 中断.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第八章 可编程接口芯片及其应用.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第九章 总线技术.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第六章 中断控制器、DMA控制器和.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第一章 微型计算机概念.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第二章 80X86微处理器的结构.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第三章 80X86微处理器的指令系统.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第四章 汇编语言程序设计.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第五章 内存储器及其接口.ppt
- 上海交通大学:《微机原理与接口技术》课程PPT教学课件(微型计算机技术)第六章 输入输出.ppt
- 《人工智能》课程教学资源(PPT课件讲稿)第一章 人工智能(AI)概论 Artificial Intelligence.ppt
- 《人工智能》课程教学资源(PPT课件讲稿)第三章 知识表示——框架问题(框架结构).ppt
- 《人工智能》课程教学资源(PPT课件讲稿)第二章 知识表示——产生式系统.ppt
- 《信息检索》课程教学资源(PPT课件讲稿)第一章 信息检索序论(1-1)信息社会中的信息检索.ppt