
程序设计基础 第6章循环控制结构
程序设计基础 第6章 循环控制结构

循环结构 while循环 do-while循环 for循环 循环嵌套 break和continue 循环结构程序设计 昌6幸循环控制结构 李周承 2/12
第6章 循环控制结构 2/12 while循环 do-while循环 for循环 循环嵌套 break和continue 循环结构程序设计 循环结构 章目录

循环结构 发现重复性动作到写好一个循环结构通常包格: ■循环中涉及哪些变量? ·循环开始前应该赋给它们什么初值? ·循环体中应该如何修改它们? ■在什么情况下应该继续(或应该终止)循环? ·循环终上后如何得到所需要的结果? #include int main() inti=5,Sum=0;//循环变量的初始化 while(i>=O)/循环条件的设置 { Sum=Sum+i;//循环体 i-i 循环控制变量的改变 printf("sum=%od",sum); return 0; 恩6章循环控制结构 3/12
第6章 循环控制结构 3/12 ◼ 发现重复性动作到写好一个循环结构通常包括: ◼ 循环中涉及哪些变量? ◼ 循环开始前应该赋给它们什么初值? ◼ 循环体中应该如何修改它们? ◼ 在什么情况下应该继续(或应该终止)循环? ◼ 循环终止后如何得到所需要的结果? 循环结构 #include int main( ) { int i = 5, sum = 0; //循环变量的初始化 while (i >= 0) //循环条件的设置 { sum = sum + i; //循环体 i-; /循环控制变量的改变 } printf("sum=%d",sum); return 0; }

example 4-15 while循环 程序举例 求1+2+3+.+100的值 begin #include int main() sum=0;i=1; inti=1,sum=0;//循环变量的初始化 1≤100 while(i<=100)//循环条件的设置 sum-sum+ij sum=sum+i;//循环体 i=i+1; ++识 /循环控制变量的改变 输出sum printf("sum=%od\n",sum); return 0; end } 循环条件 初值 真 真 真 真 真 真 真 假 循环次数 1 2 3 4 99 100 101 sum 日 1 3 6 16 5050 1 1 2 3 4 5 100 101 昌6幸循环控结柄 4T2
第6章 循环控制结构 4/12 求1+2+3+.+100的值 #include int main( ) { int i = 1,sum = 0; //循环变量的初始化 while (i <= 100) //循环条件的设置 { sum = sum + i; //循环体 ++i; /循环控制变量的改变 } printf(“sum=%d\n",sum); return 0; } while循环 example 4-15 程序举例

用while语句构成循环 while语句的一般形式: while(表达式) { 0 表达式 语句; } 非0 while(1) 语句 { 看书; 思考; 刷题; ■■■■■口 } 恩6幸循环拉制结构 5/12
第 6 章 循环控制结构 5/12 ◼ while语句的一般形式: while ( 表达式) { 语句; } while(1) { 看书; 思考; 刷题; . }用while语句构成循环

do-while循环 一般形式为: do 循环体语句 { 循环体 非0(真)表达式 }while(表达式): 0(假) ■注意:循环体重少被执行一次。 昌6章循环控制结构 6/12
第6章 循环控制结构 6/12 ◼ 一般形式为: do { 循环体 }while (表达式); ◼ 注意:循环体至少被执行一次。 do-while循环

例求1+2+3+.+100 #include s1m=0 int main( int i=1,sum=0; do { sum=sum+i; sum=sum+i i=i+l i++ }while(i<=100): printf("sum=%d小n",sum); 真 i≤100 return 0; 假 恩6幸循环拉制结构 7/12
第 6 章 循环控制结构 7/12 例 求1+2+3+.+100 #include int main( ) { int i=1,sum=0; do { sum=sum+i; i++; }while (i<=100); printf(“sum=%d \n”,sum); return 0; }

应用举例 关于O]的多组数据输入和输出问题. #include int main() int a,b,sum; while (scanf("od%od",&a,&b)!=EOF) { sum =a b; printf("Ood\n",sum); 2 return O; 程序举例 注意循环条件 昌6章循环控制结构 8/12
第6章 循环控制结构 8/12 关于OJ的多组数据输入和输出问题. 应用举例 #include int main() { int a, b, sum; while (scanf(“%d%d”, &a, &b) != EOF) { sum = a + b; printf(“%d\n”, sum); } return 0; } 程序举例 注意循环条件

应用举倒 由健盘任意输入一串字符,统计大写、小写、数字、其他字符个数· #include int main() { char c;int digcount=0,uppcount=0,lowcount=0,othercount=0; while((c=getchar())!='\n') if(c>='0'&&c='A'&&c='a'&&c<='z') lowcount++; else othercount++; example 4-27 printf("\nDigit character is %d\n",digcount); printf("\nUpper is %od.In",uppcount); 程序举例 printf("\nLower is %od.\n",lowcount); printf("\nOther character is %od.\n",othercount); 注意循环条件 return O; X 恩6幸循环拉制结构 9/12
第6章 循环控制结构 9/12 由键盘任意输入一串字符,统计大写、小写、数字、其他字符个数 . 应用举例 #include int main() { char c; int digcount=0,uppcount=0,lowcount=0,othercount=0; while ((c = getchar()) != '\n') { if ( c>='0' && c= 'A' && c ='a' && c<='z') lowcount++; else othercount++; } printf("\nDigit character is %d\n",digcount); printf("\nUpper is %d.\n",uppcount); printf("\nLower is %d.\n",lowcount); printf("\nOther character is %d.\n",othercount); return 0; } example 4-27 程序举例 注意循环条件

实验要求 ■所有编程题在分析的基础上完成,不要直接 看习题指导或其他人的答亲,更不要拷贝。 同一个问题,不同程序员会给出不同的解答, 不要指望抄人程序成为合格程序员。 昌6章循环控制结构 李周承 10/12
第6章 循环控制结构 10/12 实验要求 章目录 ◼ 所有编程题在分析的基础上完成,不要直接 看习题指导或其他人的答案,更不要拷贝。 ◼ 同一个问题,不同程序员会给出不同的解答, 不要指望抄人程序成为合格程序员