(5.5.2)-4.2-while语句和do-while语句程序设计基础_第1页
(5.5.2)-4.2-while语句和do-while语句程序设计基础_第2页
(5.5.2)-4.2-while语句和do-while语句程序设计基础_第3页
(5.5.2)-4.2-while语句和do-while语句程序设计基础_第4页
(5.5.2)-4.2-while语句和do-while语句程序设计基础_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

循环结构程序设计——while语句和do-while语句程序设计基础(C语言)Fundamentalsofprogramming(Clanguage)Contents目录情境引入讲授新知启发探究123学以致用4课外拓展5目录讲授新知启发探究情景引入学以致用课外拓展循环while和do-while【问题情景】在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:按从1至5报数,最末一个士兵报的数为1;再按从1至6报数,最末一个士兵报的数为5;再按从1至7报数,最末一个士兵报的数为4;最后按从1至11报数,最末一个士兵报的数为10。你知道韩信至少有多少兵?

循环结构这种不厌其烦反复执行的过程激励我们要养成持之以恒、百折不挠以及反复打磨的工匠精神和能力品质。Contents目录情景引入讲授新知启发探索123学以致用4课外拓展5目录讲授新知启发探索情景引入学以致用课外拓展while语句概念while语句一般格式while语句执行过程while语句程序解读#include<stdio.h>intmain(){inti=1,sum=0;while(i<=100){sum=sum+i;i++;}printf("sum=%d\n",sum);}while语句概念一般格式执行过程解读简单程序循环变量的改变,i++等价于i=i+1,循环变量步长值为1while循环语句while关键字目录讲授新知启发探索情景引入学以致用课外拓展while循环体部分,重复执行的内容i<=100:循环条件,控制循环变量终值,表示满足条件为真的最终值为i=100while语句概念目录讲授新知启发探索情景引入学以致用课外拓展一般格式执行过程解读简单程序

while(表达式)

{

循环体语句;

}

while是关键字任意合法表达式

while语句概念目录讲授新知启发探索情景引入学以致用课外拓展一般格式执行过程解读简单程序表达式循环体假(0)真(非0)while语句执行过程do-while语句概念do-while语句一般格式do-while语句执行过程do-while语句程序解读目录讲授新知启发探索情景引入学以致用课外拓展目录讲授新知启发探索情景引入学以致用课外拓展do-while语句概念一般格式执行过程解读简单程序#include<stdio.h>intmain(){inti=1,sum=0;

do{

sum=sum+i;i++;}while(i<=100);printf("sum=%d\n",sum);}循环变量的改变,i++等价于i=i+1,循环变量步长值为1do-while循环语句while关键字do-while循环体部分,重复执行的内容i<=100:循环条件,控制循环变量终值,表示满足条件为真的最终值为i=100dodo-while语句概念目录讲授新知启发探索情景引入学以致用课外拓展一般格式执行过程解读简单程序do{

循环体}while(表达式

);

do、while是关键字不要丢了!do-while语句概念目录讲授新知启发探索情景引入学以致用课外拓展一般格式执行过程解读简单程序表达式循环体假(0)真(非0)do-while语句执行过程Contents目录情景引入讲授新知启发探索123学以致用4课外拓展5目录讲授新知启发探索情景引入课外拓展学以致用while语句与do-while语句有什么区别?#include<stdio.h>intmain(){intsum=0,i;scanf("%d",&i);while(i<=10){

sum+=i;

i++;}printf("sum=%d\n",sum);return0;}#include<stdio.h>intmain(){intsum=0,i;scanf("%d",&i);do{

sum+=i;

i++;}while(i<=10);printf("sum=%d\n",sum);return0;}i的值在什么范围内以上两个程序运行结果一样?#include<stdio.h>intmain(){intsum=0,i;scanf("%d",&i);

while

(i<=10)

{

sum+=i;

i++;

}printf("sum=%d\n",sum);return0;}目录讲授新知启发探索情景引入学以致用课外拓展进入循环前先输入一个数先判断,当i小于等于10时,再执行循环体while循环语句#include<stdio.h>intmain(){intsum=0,i;scanf("%d",&i);

do

{

sum+=i;

i++;

}while(i<=10);printf("sum=%d\n",sum);return0;}目录讲授新知启发探索情景引入学以致用课外拓展进入循环前先输入一个数do-while循环语句先执行循环体再判断i是否小于等于10do-while先执行一次循环体,后判断表达式循环体至少被执行一次while先判断表达式,后执行循环体循环体有可能一次也不被执行while语句与do-while语句的区别目录讲授新知启发探索情景引入学以致用课外拓展Contents目录情景引入讲授新知启发探索123学以致用4课外拓展5目录启发探索情景引入学以致用课外拓展讲授新知三完善程序二算法流程图一编程点拨韩信点兵问题四完整程序目录讲授新知启发探索情景引入学以致用课外拓展问题:韩信有一队兵,他想知道有多少人,便让士兵排队报数:按从1至5报数,最末一个士兵报的数为1;按从1至6报数,最末一个士兵报的数为5;按从1至7报数,最末一个士兵报的数为4;最后再按从1至11报数,最末一个士兵报的数为10。编程求韩信至少有多少兵?总人数%6=5总人数%5=1总人数%7=4

总人数%11=10总人数%5==1&&总人数%6==5&&总人数%7==4&&总人数%11==10表示判断的时候需要改成“==”四完整程序二算法流程图三完善程序一编程点拨目录讲授新知启发探索情景引入学以致用课外拓展i++;假i=1;真i%5==1&&i%6==5&&i%7==4&&i%11==10?四完整程

序二算法流程图一编程点拨三完善程序

while循环语句printf输出#include<stdio.h>intmain(){longi=1;while((1))

{

(2);

}//此处的花括号{}可省略printf("总人数为:%d\n",(3));return0;}目录讲授新知启发探索情景引入学以致用课外拓展!(i%5==1&&i%6==5&&i%7==4&&i%11==10)或者:

i%5!=1||i%6!=5||i%7!=4||i%11!=10i++四完整程

序二算法流程图一编程点拨三完善程序i目录讲授新知启发探索情景引入学以致用课外拓展四完整程

序二算法流程图一编程点拨三完善程序讲授新知启发探索#include<stdio.h>intmain(){longi=1;

while(!(i%5==1&&i%6==5&&i%7==4&&i%11==10))//等价于while(i%5!=1||i%6!=5||i%7!=4||i%11!=10)

{

i++;

}//此处的花括号{}可省略printf("总人数为:%d\n",i);return0;}方法一:用while语句实现

程序如下:目录讲授新知启发探索情景引入学以致用课外拓展一编

程点

拨三完

善程序二算

法流程图四完整程序讲授新知启发探索#include<stdio.h>intmain(){longi=1;

do{

i++;

}

while

(!(i%5==1&&i%6==5&&i%7==4&&i%11==10));//等价while(i%5!=1||i%6!=5||i%7!=4||i%11!=10);printf("总人数为:%d\n",i);return0;}方法二:用do-while语句实现

程序如下:Contents目录情景引入讲授新知启发探索123学以致用4课外拓展5目录讲授新知启发探索情景引入学以致用课外拓展【课外思考】请问“韩信点兵”问题中改成让士兵各以三人、五人、七人排成一排,输入三个非负整数a,b,c,表示每种队形排尾的人数(a<3,b<5,c<7),输出总人数的最小值(或报告无解)。已知总人数不小于10,不超过100。编程实现其功能。目录讲授新知启发探索情景引入学以致用课外拓展#include<stdio.h>intmain(){inta,b,c,i=10;

scanf("%d%d%d",&a,&b,&c);

while(i<=100)

{

if(i%3==a&&i%5==b&&i%7==c)

break;

i++;

}if(i>100)printf("Noanswer");elseprintf("%d\n",i);return0;}

#include<stdio.h>intmain(){inta,b,c,i=10;

scanf("%d%d%d",&a,&b,&c);

do

{

温馨提示

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

评论

0/150

提交评论