3第三章循环结构

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


出一个换行,就可i以=4时输,出j=1五,2,行3,五4,5列, 星输出号5个*并换行
i=5时,j=1,2,3,4,5, 输出5个*并换行
循环嵌套举例
17
要打印如下图形应如何修改下面的双重循环:
程*
设 #include <stdio.h> /*例3.1的程序*/
计 main()
|
{ int i,sum,score; sum=0; for(i=1; i<=5; i++)
第 三
{ scanf("%d",&score); sum=sum+score; }

printf("\n平均成绩为:%6.2f \n",
5
5!
设 {float n=1,s…2u0m=0,t=12;…0!
计 do{t=t*n;
|
sum=sum+t;
33+5! … …
真(n=6) …
假(n=21) 结束循环
第 三
n++; }while(n<=20);
章 printf("1!+2!+3!+ … + 20!=%e \n ", sum);
}
循环嵌套
sum/5.0); }
while语句举例
11
程 例 计算1至20之间的奇数之和及偶数之和。
序 说明:
程序
设 ➢判断一个数n是否为偶数的常用方法为:

n%2==0。
| ➢判断一个数n是否为某个数的倍数的常用方法

为:n%某个数==0,如 n%5==0 可用于判断n是


否为5的倍数。
使用while语句应注意的问题 12
程 制省变略量分同号时。控例制如循:环
序 省f略o表r(达i=式0,1j=10;i<j;省i+略+表,j达--式)3{ 循环体 }
设 计
iffo=sosr1ruu(;语mm;==句is0<u;允=m1+许0i;;在i+循+)环体内fo改r{(变si循u=m1环=;si控u<m=制+1i0变;;)量i+的+;值} for(count=1;count<=100;count++)
先判断后执行循环体
三 printf("1--10的累加和为%d",sum);}

如何修改程序可求2+4+6+ … +10的值
Do--while语句
13
程 序
语句形式:do 语句;
可以是复合语句,其 中必须含有改变条件 表达式值的语句
while(表达式);

计 执行过程:先执行语
|
句,后判断条件。 表达式的值为非0时,
以下循环语句可在双同重一循环行的上执行输过出程五如下个:星号:
for(j=1;j<i==51时;,j+j=+1),2,p3,r4,i5n,tf输(出"5*个"*)并;换行 i=2时,j=1,2,3,4,5, 输出5个*并换行

若让该循环语句执i=行3时五,j次=1,,2,3且,4每,5,执输行出一5个次*并输换行
|
{
第 scanf(“%d”,&nu循mb环er体)由;s多um个+语=n句um组be成r时; ,
三 章
省略表i达f(式su2m时>,=3000应) 该c写ou成nt复=1合0语0 句;}的形式
循环将变成死循环
在循环体外的语句不受循环的控制,在循环体内
while语句
9
语句形式:while(表达式) 语句;
15
在循环体内又包含另一个完整的循环结构称
程 为循环嵌套。内层循环中再包含其它循环结

构,称为多重循环嵌套。 C语言中的三种

循环语句(for、

while、do— while)可以互相
|
嵌套,构成所需

的多重循环结构

章 循环嵌套时,内层循环必须被完全包含于外层
循环内,不允许循环结构交叉。
循环嵌套举例
10
问题:
wenku.baidu.com程 例:求∑n的值 n=1
1.语句 n=1;能放在循环体内吗?
序 main()
2.语句 n<=10 中的等号能去掉吗? 3.语句 n++ 能去掉或放在循环外吗?
设 { int n,sum=0; 4.如要求 1到 10 的累乘 应怎样修改
n=1;
程序?
计 while(n<=10)
|

{ sum=sum+n; n++; }
16
例3.10 打印由星号组成的5行5列的矩形
程 序
多** 重** 循**环**的**执行过
for(i=1;i<=5;i++) { for(j=1;j<=5;j++)


|

程为* :* 外* 循* 环* 跨一步, 内循** 环** 转** 一** 圈**
printf("*"); printf("\n"); }
159+78 237+83 320+75 结束循环
|
for(i=1; i<=5; i++)
第 { scanf("%d",&score); sum=sum+score; }

printf("\n平均成绩为:%6.2f \n",

sum/5.0);
}
for语句举例
7
例 从键盘上输入一个大于2的整数n,判断程序n是
2
3
4
5
for语句举例
6
例 从键盘上输第入i次张循三环同学i五<=门5 的课值程的成su绩m的6值7、
程 92、78、83、75,1 计算出平均真成绩并输出0。+67
2

67+92

3

设 #include <stdio4.h>
main()
5
真 真
计6

{int i,sum,score; sum=0;
第 三
继续执行语句;表达

式的值为0时,执行
循环的后继。
Do--while语句举例
14
程 例 求1!+2!第1+3n次!循+4环!t+的1!…值 +s20u+0m1!的! 的值值。n真<=(2n0=的2)值
2
2! 1+2!
真(n=3)

3
3! 3+3!
真(n=4)
4
4! 9+4!
真(n=5)
main()
程 不是素数。

只能被1和它本身整除的整数称为素数。在
设 数学中,要判断n是否为素数,通常让n除以2到n 计 的平方根之间的每一个整数,如果n能被2到n的
平方根之间的某个整数整除,则说明n不是素数,
| 否则n一定是素数。
第 三 章
使用for语句应注意的问题 8
ffoorr语语句句中的可任应何用一逗个号表表达达式式都,可使以两省个,或但多不个能控


可以是复合语句,其 中必须含有改变条件

表达式值的语句

执行过程:先计
|
算表达式的值,当

表达式的值为非 0

时执行语句;为 0

时执行循环的后继
while语句举例
10
例 从键盘上输入张三同学五门课程的成绩67、
程 92、78、83、75,计算出平均成绩并输出。
序 对下面的程序进行修改,用while代替for
相关文档
最新文档