C语言程序设计-单元五循环结构程序设计课件_第1页
C语言程序设计-单元五循环结构程序设计课件_第2页
C语言程序设计-单元五循环结构程序设计课件_第3页
C语言程序设计-单元五循环结构程序设计课件_第4页
C语言程序设计-单元五循环结构程序设计课件_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

循环结构程序设计C语言程序设计高等教育出版社新形态一体化教材单元五循环结构程序设计C语言程序设计高等教育出版社新形态一体1导学【问题1】某大赛中重复要做的事情是什么?【问题2】满足什么条件大赛可继续执行?导学【问题1】某大赛中重复要做的事情是什么?【问题2】满足什2目录2三种循环语句3循环结构控制语句4循环应用1循环的本质循环的本质目录2三种循环语句3循环结构控制语句4循环应用1循环的本质31循环的本质——引例987771号:总分31分8762号:总分28分▲评委亮分▲计算总分

在某一条件成立的情况下反复做重复性的事情,这就是循环。某大赛重复的事情有:1循环的本质——引例987771号:总分31分8762号:总41循环的本质如何用程序设计语言来描述大赛问题呢?inti=1;设i为评委编号,整型,初始值为1设score存评委分数,sum存总分并设初值为0.0,均为浮点型floatscore,sum=0.0;在

i<=4的条件下反复执行如下操作:scanf("%f",&score);播报(输入)当前评委亮出的分数scoresum+=score; 累加到总分sumi++;评委编号递增1⑴变量定义⑵算法描述1循环的本质如何用程序设计语言来描述大赛问题呢?inti=51循环的本质⑶减少源代码的存储空间,提高程序质量。⑴可重复执行某些相同代码的程序段;⑵将程序员从大量重复编写相同代码的工作中解放出来,提高程序编写效率;循环的本质【循环结构的任务】1循环的本质⑶减少源代码的存储空间,提高程序质量。⑴可重61循环的本质⑶每次循环要做什么,即“反复执行的语句”,称为“循环体”。⑴循环从什么时候开始,即“循环变量初值”。⑵满足什么条件要循环,即“循环控制条件表达式”。i=1;i<=4scanf("%f",&score);sum+=score;i++;循环变量初值循环控制条件表达式循环体循环结构三要素【概括大赛问题】1循环的本质⑶每次循环要做什么,即“反复执行的语句”,称为7目录3循环结构控制语句4循环应用1循环的本质2三种循环语句三种循环语句目录3循环结构控制语句4循环应用1循环的本质2三种循环语句82三种循环语句——while语句while(表达式){

循环体;}【一般格式】

循环控制条件表达式由一条或多条语句组成,当“循环体”仅有一条语句时,可省略“{}”。表达式真?循环体真(非0)假(0)【流程图】2三种循环语句——while语句while(表达式)【一般格92三种循环语句——while语句——示例利用while语句计算大赛选手总分。(有10位评委)#include<stdio.h>voidmain(){

double

score,sum=0;

inti=1;

while(i<=10)

{printf("请第%d位评委亮分:",i);scanf("%lf",&score);sum=sum+score;i++;

}printf(“该选手的总分为:%.2lf.\n",sum);}循环控制条件循环体2三种循环语句——while语句——示例利用while语句计102三种循环语句——while语句——随堂练习利用while语句计算1~n中的奇数之和及偶数之和。【提示】⑴n的值在程序执行时通过键盘输入⑵各变量初值如何设计?⑷循环变量增量如何设计?⑶循环条件如何设计?2三种循环语句——while语句——随堂练习利用while语112三种循环语句——do…while语句do{

循环体;}while(表达式);【一般格式】

表达式后必须有;【流程图】表达式真?循环体真(非0)假(0)2三种循环语句——do…while语句do【一般格式】表达122三种循环语句——do…while语句——示例利用while语句计算大赛选手总分。(有10位评委)#include<stdio.h>voidmain(){

double

score,sum=0;

inti=1;

do

{printf("请第%d位评委亮分:",i);scanf("%lf",&score);sum=sum+score;i++;

}while(i<=10);printf(“该选手的总分为:%.2lf.\n",sum);}2三种循环语句——do…while语句——示例利用while132三种循环语句——do…while语句——随堂练习利用do…while语句计算1+1/2+1/3+…+1/n。【提示】⑴n的值在程序执行时通过键盘输入⑵各变量的数据类型如何设计?⑶“1”与“1.0”有什么区别?2三种循环语句——do…while语句——随堂练习利用do…142三种循环语句——for语句【一般格式】

【流程图】for(表达式1;表达式2;表达式3){

循环体;}表达式之间用;分隔表达式2?循环体真(非0)表达式1表达式3假(0)2三种循环语句——for语句【一般格式】【流程图】for(152三种循环语句——for语句——示例利用for语句计算大赛选手总分。(有10位评委)#include<stdio.h>voidmain(){

double

score,sum=0;

inti;

for(i=1;i<=10;i++)

{printf("请第%d位评委亮分:",i);scanf("%lf",&score);sum=sum+score;}printf(“该选手的总分为:%.2lf.\n",sum);}2三种循环语句——for语句——示例利用for语句计算大赛选162三种循环语句——for语句——随堂练习利用for语句计算1+1/2+1/3+…+1/n。【提示】⑴n的值在程序执行时通过键盘输入⑵各变量的数据类型如何设计?⑶若“intn=2;”,“1/n”的值是多少?“1.0/n”又是多少?2三种循环语句——for语句——随堂练习利用for语句计算117目录4循环应用1循环的本质2三种循环语句3循环结构控制语句循环结构控制语句目录4循环应用1循环的本质2三种循环语句3循环结构控制语句183循环结构控的制语句——break语句——引例while(表达式1){……if(表达式2)

break;……

}在程序执行的过程中,如果“表达式2”为真,则执行break语句,此时也会终止循环。正常情况下,该循环结构的执行由循环控制条件“表达式1”控制,当“表达式1”为假时,循环结束。【一般格式】

break;结束循环3循环结构控的制语句——break语句——引例while(193循环结构控的制语句——break语句——示例

设计一个程序实现:输入若干字符,对输入的英文字母原样输出,其他字符不输出,直到输入回车键结束。#include<stdio.h> voidmain()

{

char

ch;

while(1)

{ch=getchar();

if(ch=='\n')

break;

elseif(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')

putchar(ch);

}

}结束循环3循环结构控的制语句——break语句——示例203循环结构控的制语句——continue语句

——引例while(表达式1){……if(表达式2)

continue;……

}在执行循环体的过程中。如果“表达式2”为真,执行continue语句,即不再执行continue后面的循环体语句,转到“表达式1”进行下一次循环控制条件的判定。在循环控制条件“表达式1”成立的情况下,则执行循环体。【一般格式】

continue;结束本次循环,进行下一次是否执行循环的判定。3循环结构控的制语句——continue语句——引例whi213循环结构控的制语句——continue语句

——示例

设计一个程序实现:输入若干字符,对输入的英文字母原样输出,其他字符不输出,直到输入回车键结束。#include<stdio.h> voidmain()

{

char

ch;

while((ch=getchar())!='\n')

{

if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')

continue;

putchar(ch);

}

}结束本次循环,进行下一次是否执行循环的判定。3循环结构控的制语句——continue语句——示例22目录1循环的本质2三种循环语句4循环应用循环应用3循环结构控制语句目录1循环的本质2三种循环语句4循环应用循环应用3循环结构234循环应用

【应用1】自幂数是指一个n位整数,它的每个位上的数字的n次幂之和等于它本身。当n为4时,自幂数称为玫瑰花数,试编程输出1000~9999范围内所有的玫瑰花数。(形如14+64+34+44=1634)【分析】设这个四位整数为n,它的各位数字从低到高分别为a、b、c和d。a=n%10

b=n/10%10

c=n/100%10

d=n/1000个位十位百位千位4循环应用【应用1】自幂数是指一个n位整数,它244循环应用#include<stdio.h>voidmain(){int

i,n,a,b,c,d;

for(i=1000;i<=9999;i++)

{n=i;

a=n%10;

b=n/10%10;

c=n/100%10;

d=n/1000;

if(a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d==n)

printf("%6d",n);

}}163482089474输出结果4循环应用#include<stdio.h>1634输出结254循环应用

【应用2】百元百鸡问题。我国古代数学家张丘键在《算经》中出了一道题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?【分析】设一百只鸡中公鸡、母鸡、小鸡分别为x,y,z,问题化为三元一次方程组。

(百钱)(百鸡)x、y、z的取值范围:⑴x的取值范围为1~20;⑵y的取值范围为1~33;⑶z的取值范围为3~99,步长为3。x、y、z为正整数,且z是3的倍数;由于鸡和钱的总数都是100。用穷举的方法,遍历x,y,z的所有可能组合,最后得到问题的解。4循环应用【应用2】百元百鸡问题。我国古代数学家张26#include<stdio.h>voidmain(){

intgongji,muji,xiaoji;

for(gongji=1;gongji<=20;gongji++)//公鸡可能的数量范围

{

for(muji=1;muji<=33;muji++)

//母鸡可能的数量范围

{

for(xiaoji=3;xiaoji<=100;xiaoji=xiaoji+3)//小鸡可能的数量范围

{

if((xiaoji/3+muji*3+gongji*5==100)&&(xiaoji+muji+gongji==100))

printf("%4d\t%4d\t%4d\n",gongji,muji,xiaoji);

}

}

}}4循环应用输出结果:公鸡

母鸡

小鸡418788118112484#include<stdio.h>4循环应用输出结果:公鸡27目录2三种循环语句3循环结构控制语句4循环应用1循环的本质目录2三种循环语句3循环结构控制语句4循环应用1循环的本质28总结循环可减少重复代码,提高程序质量循环的本质三种循环语句循环结构控制语句while语句是先判断、后执行的语句do…while是先执行、后判断的语句for循环适用于循环次数确定的情况continue;结束本次循环,进行下一次循环break;结束循环总结循环可减少重复代码,提高程序质量循环的本质三种循环语29谢谢!谢谢!30循环结构程序设计C语言程序设计高等教育出版社新形态一体化教材单元五循环结构程序设计C语言程序设计高等教育出版社新形态一体31导学【问题1】某大赛中重复要做的事情是什么?【问题2】满足什么条件大赛可继续执行?导学【问题1】某大赛中重复要做的事情是什么?【问题2】满足什32目录2三种循环语句3循环结构控制语句4循环应用1循环的本质循环的本质目录2三种循环语句3循环结构控制语句4循环应用1循环的本质331循环的本质——引例987771号:总分31分8762号:总分28分▲评委亮分▲计算总分

在某一条件成立的情况下反复做重复性的事情,这就是循环。某大赛重复的事情有:1循环的本质——引例987771号:总分31分8762号:总341循环的本质如何用程序设计语言来描述大赛问题呢?inti=1;设i为评委编号,整型,初始值为1设score存评委分数,sum存总分并设初值为0.0,均为浮点型floatscore,sum=0.0;在

i<=4的条件下反复执行如下操作:scanf("%f",&score);播报(输入)当前评委亮出的分数scoresum+=score; 累加到总分sumi++;评委编号递增1⑴变量定义⑵算法描述1循环的本质如何用程序设计语言来描述大赛问题呢?inti=351循环的本质⑶减少源代码的存储空间,提高程序质量。⑴可重复执行某些相同代码的程序段;⑵将程序员从大量重复编写相同代码的工作中解放出来,提高程序编写效率;循环的本质【循环结构的任务】1循环的本质⑶减少源代码的存储空间,提高程序质量。⑴可重361循环的本质⑶每次循环要做什么,即“反复执行的语句”,称为“循环体”。⑴循环从什么时候开始,即“循环变量初值”。⑵满足什么条件要循环,即“循环控制条件表达式”。i=1;i<=4scanf("%f",&score);sum+=score;i++;循环变量初值循环控制条件表达式循环体循环结构三要素【概括大赛问题】1循环的本质⑶每次循环要做什么,即“反复执行的语句”,称为37目录3循环结构控制语句4循环应用1循环的本质2三种循环语句三种循环语句目录3循环结构控制语句4循环应用1循环的本质2三种循环语句382三种循环语句——while语句while(表达式){

循环体;}【一般格式】

循环控制条件表达式由一条或多条语句组成,当“循环体”仅有一条语句时,可省略“{}”。表达式真?循环体真(非0)假(0)【流程图】2三种循环语句——while语句while(表达式)【一般格392三种循环语句——while语句——示例利用while语句计算大赛选手总分。(有10位评委)#include<stdio.h>voidmain(){

double

score,sum=0;

inti=1;

while(i<=10)

{printf("请第%d位评委亮分:",i);scanf("%lf",&score);sum=sum+score;i++;

}printf(“该选手的总分为:%.2lf.\n",sum);}循环控制条件循环体2三种循环语句——while语句——示例利用while语句计402三种循环语句——while语句——随堂练习利用while语句计算1~n中的奇数之和及偶数之和。【提示】⑴n的值在程序执行时通过键盘输入⑵各变量初值如何设计?⑷循环变量增量如何设计?⑶循环条件如何设计?2三种循环语句——while语句——随堂练习利用while语412三种循环语句——do…while语句do{

循环体;}while(表达式);【一般格式】

表达式后必须有;【流程图】表达式真?循环体真(非0)假(0)2三种循环语句——do…while语句do【一般格式】表达422三种循环语句——do…while语句——示例利用while语句计算大赛选手总分。(有10位评委)#include<stdio.h>voidmain(){

double

score,sum=0;

inti=1;

do

{printf("请第%d位评委亮分:",i);scanf("%lf",&score);sum=sum+score;i++;

}while(i<=10);printf(“该选手的总分为:%.2lf.\n",sum);}2三种循环语句——do…while语句——示例利用while432三种循环语句——do…while语句——随堂练习利用do…while语句计算1+1/2+1/3+…+1/n。【提示】⑴n的值在程序执行时通过键盘输入⑵各变量的数据类型如何设计?⑶“1”与“1.0”有什么区别?2三种循环语句——do…while语句——随堂练习利用do…442三种循环语句——for语句【一般格式】

【流程图】for(表达式1;表达式2;表达式3){

循环体;}表达式之间用;分隔表达式2?循环体真(非0)表达式1表达式3假(0)2三种循环语句——for语句【一般格式】【流程图】for(452三种循环语句——for语句——示例利用for语句计算大赛选手总分。(有10位评委)#include<stdio.h>voidmain(){

double

score,sum=0;

inti;

for(i=1;i<=10;i++)

{printf("请第%d位评委亮分:",i);scanf("%lf",&score);sum=sum+score;}printf(“该选手的总分为:%.2lf.\n",sum);}2三种循环语句——for语句——示例利用for语句计算大赛选462三种循环语句——for语句——随堂练习利用for语句计算1+1/2+1/3+…+1/n。【提示】⑴n的值在程序执行时通过键盘输入⑵各变量的数据类型如何设计?⑶若“intn=2;”,“1/n”的值是多少?“1.0/n”又是多少?2三种循环语句——for语句——随堂练习利用for语句计算147目录4循环应用1循环的本质2三种循环语句3循环结构控制语句循环结构控制语句目录4循环应用1循环的本质2三种循环语句3循环结构控制语句483循环结构控的制语句——break语句——引例while(表达式1){……if(表达式2)

break;……

}在程序执行的过程中,如果“表达式2”为真,则执行break语句,此时也会终止循环。正常情况下,该循环结构的执行由循环控制条件“表达式1”控制,当“表达式1”为假时,循环结束。【一般格式】

break;结束循环3循环结构控的制语句——break语句——引例while(493循环结构控的制语句——break语句——示例

设计一个程序实现:输入若干字符,对输入的英文字母原样输出,其他字符不输出,直到输入回车键结束。#include<stdio.h> voidmain()

{

char

ch;

while(1)

{ch=getchar();

if(ch=='\n')

break;

elseif(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')

putchar(ch);

}

}结束循环3循环结构控的制语句——break语句——示例503循环结构控的制语句——continue语句

——引例while(表达式1){……if(表达式2)

continue;……

}在执行循环体的过程中。如果“表达式2”为真,执行continue语句,即不再执行continue后面的循环体语句,转到“表达式1”进行下一次循环控制条件的判定。在循环控制条件“表达式1”成立的情况下,则执行循环体。【一般格式】

continue;结束本次循环,进行下一次是否执行循环的判定。3循环结构控的制语句——continue语句——引例whi513循环结构控的制语句——continue语句

——示例

设计一个程序实现:输入若干字符,对输入的英文字母原样输出,其他字符不输出,直到输入回车键结束。#include<stdio.h> voidmain()

{

char

ch;

while((ch=getchar())!='\n')

{

if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')

continue;

putchar(ch);

}

}结束本次循环,进行下一次是否执行循环的判定。3循环结构控的制语句——continue语句——示例52目录1循环的本质2三种循环语句4循环应用循环应用3循环结构控制语句目录1循环的本质2三种循环语句4循环应用循环应用3循环结构534循环应用

【应用1】自幂数是指一个n位整数,它的每个位上的数字的n次幂之和等于它本身。当n为4时,自幂数称为玫瑰花数,试编程输出1000~9999范围内所有的玫瑰花数。(形如14+64+34+44=1634)【分析】设这个四位整数为n,它的各位数字从低到高分别为a、b、c和d。a=n%10

b=n/10%10

c=n/100%10

d=n/1000个位十位百位千位4循环应用【应用1】自幂数是指一个n位整数,它544循环应用#include<stdio.h>voidmain(){int

i,n,a,b,c,d;

for(i=1000;i<=9999;i++)

{n=i;

a=n%10;

b=n/10%10;

c=n/100%10;

d=n/1000;

if(a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论