




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章流程控制顺序结构选择结构循环结构其它控制语句应用举例
重点纫吵棚烫疥暇勘贸书散沾饥科年屋酒攒茨邮拴朗阐策协浓暮差唐抚协槛蒜03流程控制03流程控制第三章流程控制顺序结构重点纫吵棚烫疥暇勘贸书散沾饥科年1语句序列1语句序列2语句序列1条件?成立不成立语句序列2语句序列不成立成立条件?顺序结构选择结构循环结构流程结构由这三种基本结构经过反复嵌套构成的程序称为结构化程序僚犁搏挤吃窍盗珍婆贯胆建凿俄烧舷蚊培骇成魏费付后穿气恕屏部牙盅妊03流程控制03流程控制语句序列1语句序列2语句序列1条件?成立不成立语句序列22顺序结构顺序结构:按照语句出现的先后顺序依次执行。例1:编写程序:要求输入直角三角形的斜边和一条直角边,求三角形另外一条直角边,周长和面积。#include<iostream>#include<cmath>usingnamespacestd;为烷泻孪检振禹亦禄擞醉戌胁腮规酶枢同梦柴骚润炽路掳疫效碰积周室褐03流程控制03流程控制顺序结构顺序结构:按照语句出现的先后顺序依次执行。例1:编3voidmain(){doublea,b,c;doublel,s;cout<<"输入斜边、直角边的长:";cin>>c>>a;b=sqrt(c*c-a*a);l=a+b+c;s=a*b/2;cout<<"另一直角边="<<b<<endl;cout<<"周长="<<l<<endl;cout<<"面积="<<s<<endl;}监返叉伏割憎郭拴湍莽翼霖碉研纳釜肖牌姆躲尊窿顿柿俭雍背绦官卜脏码03流程控制03流程控制voidmain()cout<<"输入斜边、直角边的长:"4选择结构根据条件的值来判断程序的流向。
if语句,实现n分支,要求n个表达式;switch语句,实现多分支;用1个表达式1.if语句的三种形式if(表达式)语句if(表达式)语句1else语句2不能单独存在软闯亢葡搁滁可猎断份砒操饯恩而芯凛玖猛栅黄埠村淀兑踩庙衡我衣崔胶03流程控制03流程控制选择结构根据条件的值来判断程序的流向。if语句,实现n分5表达式1假真表达式2表达式3表达式4语句5语句4语句3语句2语句1真真真假假假if(表达式1)语句1
elseif(表达式2)语句2
elseif(表达式3)语句3…elseif(表达式m)语句melse语句m+1if语句的三种形式珠佩波测暖江谊泌粤洼遗眼苦曲蓉暂察剂菲惟履揖卢邀备灵葬雷睁侥毛锄03流程控制03流程控制表达式1假真表达式2表达式3表达式4语句5语句4语句3语句26表达式语句假(0)真(非0)第一种形式的条件语句if(表达式)
语句
说明:if后面的表达式类型任意语句可以是一句或复合语句。if(x)语句if(x!=0)if(!x)if(x<y){t=x;x=y;y=t;}
cout<<x<<y;if(x==0)广拨铆佬沁肺难逗衍月弹团夸阑裁嚷击宠碴闽样犯螟采艇篷峰些诌疏彤恋03流程控制03流程控制表达式语句假(0)真(非0)第一种形式的条件语句if(表7#include<iostream>usingnamespacestd;voidmain(){intx,y,t;cout<<"输入xy"<<endl;cin>>x>>y;if(x<y){t=x;x=y;y=t;}//x与y交换cout<<x<<">"<<y<<endl;}差坟燎甫叠拇治犹庶毗谚吨逮吓村丰名粪屯卓椅坛纲次未磋仁考授檬软涨03流程控制03流程控制#include<iostream>差坟燎甫叠拇治犹庶毗谚8第二种形式的条件语句表达式语句1语句2真假if(表达式)语句else语句2不能单独存在非00例2:计算分段函数:if(x)y=sin(x)+sqrt(x*x+1);elsey=cos(x)-x*x+3*x;酗獭坏瘫植盗柄拘医撒热偿契碍滓胎偶棵荧氛螟先激广糊凭筏吓无僚缸非03流程控制03流程控制第二种形式的条件语句表达式语句1语句2真假if(表达式)语9思考:要使max存放x、y中大者,min存放小者,分析下面程序段正确否?if(x>y)max=x;min=y;elsemax=y;min=x;{复合语句}{}{}篓戌讫辱处泪赊鸵杉印啄椅宁确熟谨文斩赶岛宽腑瑟为增枉瘫璃估怪久辰03流程控制03流程控制思考:要使max存放x、y中大者,min存放小者,分析下面10第三种形式的条件语句if(表达式)语句1elseif语句2例:计算分数mark属于优良中及格不及格。表达式1假真表达式2表达式3表达式4语句5语句4语句3语句2语句1真真真假假假elseif语句3else语句4滔展绦集蒂杀蜂仪剐奸踩缸煮罪褐印亡拉缎壳秦为鸥友蔑津本菇宦碱纳幼03流程控制03流程控制第三种形式的条件语句if(表达式)语句1elseif11if(mark>=90)cout<<"优";
elseif(80<=mark&&mark<90)cout<<"良";
elseif(70<=mark&&mark<80)cout<<"中"; elseif(60<=mark&&mark<70)cout<<"及格";
else
cout<<"不及格";
if(mark>=90)cout<<"优";
elseif(80<=mark)cout<<"良";
elseif(70<=mark)
cout<<"中";
elseif(60<=mark)cout<<"及格";
else
cout<<"不及格";
if(mark>=60)cout<<"及格";elseif(mark>=70)cout<<"中";elseif(mark>=80)cout<<"良";elseif(mark>=90)cout<<"优";elsecout<<"不及格";①程序执行一个分支后,其余分支不再执行。②elseif不能写成elseif。③当多分支中有多个表达式同时满足,只执行第一个与之匹配的语句。疼梁间瑰傣锻色扁姿狼梗秩双异分影顺况汹歌琴苇佃拾假肖拔洁剩浅疑庞03流程控制03流程控制if(mark>=90)if(mark>=9012例:编程实现分段函数#include<iostream>usingnamespacestd;voidmain(){doublex,y; cout<<"Pleaseinputx="; cin>>x; if(x<0)
{ y=x+1; cout<<"x="<<x<<",
y=x+1="<<y<<endl; }复合语句啊纤汰优恨雄伙祸玲秘万洞雁宏阿影驳喘壮敛躺温输李歪伪争袭抑娶营扛03流程控制03流程控制例:编程实现分段函数#include<iostream>复13
elseif(x<1) //0≤x<1 { y=1; cout<<"x="<<x<<",y="<<y<<endl; }
else //1≤x { y=x*x*x; cout<<"x="<<x<<",y=x*x*x="<<y<<endl; } }无痞坍苑咕揖畴怒既笨恒腑咙蝗壬稼毖牵读蹿窝哲餐宝蓖趟拨抓辽慑倚身03流程控制03流程控制 elseif(x<1) //0≤x<1无痞14if语句的嵌套if(表达式1)if(表达表2)语句1else语句2elseif(表达表3)语句3else语句4if(表达式1)if(表达式2)语句1else语句2
if(表达式1) if(表达式11)语句11else语句12else语句2else总是和最近的if配对肮鹤费蛀既歧呜阐斩慨恬毗旁清膛喂迎伸柑已面递梅伙具熊聪钞毯厕苑棍03流程控制03流程控制if语句的嵌套if(表达式1)if(表达表2)语句115例:已知x,y,z三个数,使得x>y>z。
if(x<y){t=x;x=y;y=t;}if(y<z)
{t=y;y=z;z=t; if(x<y) {t=x;x=y;y=t;}
}x与y互换z与y互换复合语句为什么要引入中间变量t?式逸指翁掘升条眉鸿茎乾蹬蔽厨来裙玫殖据荧岳焊要另祥堪映皆锻峭讹帛03流程控制03流程控制例:已知x,y,z三个数,使得x>y>z。if(x<y16例:考虑下面程序输出结果:voidmain(){intx=100,a=10,b=20;intv1=5,v2=0;if(a<b)if(b!=15)if(!v1)x=1;elseif(v2)x=10;
x=-1;cout<<x;}结果:-1该语句不属于选择结构中的语句耗梦战咱痈蹈音霹被递惺拷由濒逼支滑资鳃油验卉暴撕辙馏巳巾装刃海俏03流程控制03流程控制例:考虑下面程序输出结果:结果:-1该语句不属于选择结构中的17例:求一元二次方程ax2+bx+c=0的根,其中系数a,b,c为实数,由键盘输入。#include<iostream>#include<cmath>usingnamespacestd;voidmain(){ doublea,b,c,delta,p,q; cout<<"Pleaseintputa,b,c="; cin>>a>>b>>c;
delta=b*b-4*a*c;
p=-b/(2*a);
q=sqrt(fabs(delta))/(2*a);花宙缨吉苦膝剁宏顽峙吱狂媳滤侥疙缝近代框娇芒杉史灶窝吵拇双咒球微03流程控制03流程控制例:求一元二次方程ax2+bx+c=0的根,其中系数a,b18
if(delta>=0)
cout<<"x1="<<p+q<<endl<<"x2="<<p-q<<endl;else {cout<<"x1="<<p<<"+j"<<q; cout<<endl<<"x2="<<p<<"-j"<<q<<endl; } }思考:(1)a=0?(2)a≠0,b=0?(3)a≠0,b≠0?曼颐兰赎鲸陛悄瓜亩叛柔威画弧总何铺呸良眼饵叠厄染犹该椒筷柜不稗香03流程控制03流程控制 if(delta>=0)思考:(1)a=0?(2)19switch语句switch(表达式){case常量表达式1:语句组1;case常量表达式2:语句组2;case常量表达式n:语句组n;…default:语句组n+1;}[break;][break;][break;]必须为整型或字符型姓抄阎捕厉据喷焉柠匆脉犊茶磷冈刃肥焚贤镁傈智予何拜违殴辊犁厂低榜03流程控制03流程控制switch语句switch(表达式){case常量表达20说明:10常量表达式的值必须互不相等。20语句组i可以含有多个语句。30语句中含有break语句时,执行完后退出switch语句。40若某组语句不含break语句,则本组语句执行完毕后将继续执行下一组语句。捡漏品嗓渺次宙陆涅谱现左坊筏廊儿蜘储集躁板其佃者婚拼陨虫右蛹辟搔03流程控制03流程控制说明:10常量表达式的值必须互不相等。20语句组i可以含2150若没有常量值与表达式值相等,执行default语句n+1,若无该语句,退出switch语句。60可以多个case共用一组语句。80用switch语句实现的多分支结构程序,可用if语句或if语句的嵌套来实现。70switch语句允许嵌套。杀鸟缮奥瓣痞案鲜窖蛙饮庇懊店很推承滁供瘪纬番遥蛙退忠尧粪谍压级称03流程控制03流程控制50若没有常量值与表达式值相等,执行default语句n+122例:用switch结构求分段函数2a+1(1<=a<2)b=a2-3(2<=a<4)a其它switch((int)a){case1:b=2*a+1;case2:case3:b=a*a-3;default:b=a;}共用语句组switch((int)a){casea>=1&&a<2:……casea>=2&&a<4:.…..default:b=a;}关系表达式Χ思考:若省去break语句,情况会怎样?break;break;脖窒俄阜皿疫削数尚表食脓记迅龟朴搓册哺瞒逛饼笛拥简伸坊恬甚惰做走03流程控制03流程控制例:用switch结构求分段函数2a+123例:从键盘上输入学生的分数,要求当学生的分数
90~100-verygood!80~90-good60~80-pass0~50-Fail祭啤引张爆弃对侦袍漳电斤泊帛测栈塘薯煮纠崭桅涕台置孤壁浦揍蛰臻剂03流程控制03流程控制例:从键盘上输入学生的分数,要求当学生的祭啤引张爆弃对侦袍漳24#include<iostream>usingnamespacestd;voidmain(){intscore;cin>>score;switch(score/10){
case10:case9:cout<<"Verygood!\n";case8:cout<<"Good!\n";case7:case6:cout<<"Pass!\n";case5:cout<<"Fail!\n";default:cout<<"inputerror";break;break;break;break;}}坊鬼荧演贺刘缀醇柠枫伦邯烯逊珍腊杖疑捧否抛呈哆氢绒蝶琴屹杯膘毁逃03流程控制03流程控制#include<iostream>switch(score25例:执行下列程序段后,输出结果为:inta=1,b=0;switch(a){case1:switch(b);{case0:cout<<“**0**”;break;case1:cout<<“**1**”;break;}case2:cout<<“**2**”;break;}**0****2**坊种泪乌峡肤庙宅沫苫鞘瓶坪榔遗气艺刽刷击佑泛例创扶化稚昼誊爱宦团03流程控制03流程控制例:执行下列程序段后,输出结果为:inta=1,b=0;26#include<iostream>usingnamespacestd;voidmain(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;}cout<<a<<b;}a=2,b=1胃镑匹料忆骏杭灾党跟橙质刃鼎篆梢响陌执莎秒挤摈萌退专蛾焕恢姬用匿03流程控制03流程控制#include<iostream>a=2,b=1胃镑匹料忆27循环结构while 表达式语句假(0)真(非0)do-while while(表达式)
语句do语句while(表达式);forfor(表达式1;表达式2;表达式3)语句丑禾捂蛆匹媒翠泪扮皆翟尽牟悠又猾回动剩漱姚弄件缸盾箔丙怯母兆页昌03流程控制03流程控制循环结构while 表达式语句假(0)真(非0)do-wh28While语句while(表达式)语句;可以是复合语句,其中常含有改变条件表达式值的语句执行过程:先计算表达式的值,当表达式的值为非0时执行语句;为0时执行循环的后继(退出循环)厦耙乒褒忱栓肮搜纸构漠忱佰扇厂缔霸靳邹棒权扁盒姆粕日蛛萝贿涅荣英03流程控制03流程控制While语句while(表达式)语句;可以是复合语29说明:循环体可为任意类型语句下列情况,退出while循环条件表达式不成立(为零)循环体内break,return,goto表达式始终为真:while(1)袱惩甄藕宦噬茨残雌肄轮舜测示锭骸发枚坤检永嘿丹啮洽训透栖津蓝车创03流程控制03流程控制说明:循环体可为任意类型语句下列情况,退出while循环条件30例1:程序的功能?#include<iostream>usingnamespacestd;voidmain(){intn,sum=0;n=1;while(n<=100)
{sum=sum+n;n++;
}cout<<sum);}条件表达式复合语句例1:求∑n的值。侈憨羽厂厂维哗菠剁摊功壶埋釉扫提功南鲜辫砧掂檬焦新擦您证靠桑忠立03流程控制03流程控制例1:程序的功能?#include<iostream>条件表31#include<iostream>usingnamespacestd;voidmain(){intn,sum=0;while(n<=100){sum=sum+n;n++;}cout<<sum;}例1:求∑n的值。n=1;问题:1.语句n=1;能放在循环体内吗?2.若语句n<=100中的等号去掉?3.如要求
1到100的累乘应怎样修改程序?
sum=1;sum=sum*n;
循环体内的语句受循环的控制;在循环体外的语句不受循环的控制。晶佣侵烘帖肝肇粒嫩秃懊坊澄刺小锨将既奴朔纯捎臀挫淤牧席座于旦蚂糟03流程控制03流程控制#include<iostream>例1:求∑n的值。32程序拓展1+1/2+1/3+…+1/100的值。#include<iostream>usingnamespacestd;voidmain(){intn=1;intsum=0;while(n<=100){n++;}cout<<sum;}sum=sum+1/n;floatsum=0;sum=sum+1.0/n;鹅俄孩虑招封洼刨拷谴氖劝纯霹肿渭励绝郊篷氮阑谆焊灿贪逛稿俘塌靡谅03流程控制03流程控制程序拓展1+1/2+1/3+…+1/100的值。#inc33do-while语句do
语句;while(表达式);可以是复合语句,其中常含有改变条件表达式值的语句执行过程:先执行语句,后判断条件。表达式的值为非0时,继续执行语句;表达式的值为0时,执行循环的后继。腕混黑憨武称崩奉不由屹册洼吐茸举圣篇疤咨很啃呻损向哟省矛汹曹吟贸03流程控制03流程控制do-while语句do语句;可以是复合语句,其中常34例:i=11,sun=0;do{sun+=i;i++;}while(i<11);例:i=11,sun=0;while(i<11)
{sun+=i;i++;}酵威熄匈既斗刚兵挣奇睡辙剖慌苛橇党栋测层奔远迅苑骗他剧牟浓晾仙跟03流程控制03流程控制例:i=11,sun=0;例:i=11,sun=0;酵威熄匈35while与do-while的比较:do-while和while可相互转化。当while后面的表达式的第一次的值为“真”时,两种循环的结果相同。否则,二者结果不相同(指二者具有相同的循环体的情况)。杨尝吏痈佯伺逛薪纽压受啄它牲烘召锄愧遏燕菏笛杯枕涵绣鳃怀厌缴忽砖03流程控制03流程控制while与do-while的比较:do-while和whi36求解表达式1表达式2语句求解表达式3下一个语句NT表达式1;while(表达式2){语句;表达式3;}for(表达式1;表达式2;表达式3){循环体}for语句的语法执行一次冤患检递府状奶驹表汰粘篆蚀吠魄懒拢鳃演奶庄奶乍嗣诫渴葛朵朝色揉畴03流程控制03流程控制求解表达式1表达式2语句求解表达式3下一个语句NT表达式1;37注意:1.若省略表达式1,则需在进入循环体之前置初值。for(表达式1;表达式2;表达式3){循环体}for(;表达式2;表达式3){循环体}2.若省略表达式2、表达式3,则在循环体内应有语句能够在一定条件下跳出循环。for(表达式1;;){循环体}3.三个表达式都省略,需用分号分隔,表示表达式2的值为非零。for(;;){循环体}4.表达式1和3可以通过“,”包含一个以上的简单的表达式。for(n=1,sum=0;n<=100;n++){循环体}5.表达式2:关系表达式(i<=100)逻辑表达式(a<b&&x<y)数值表达式;字符表达式
6.for语句后加分号,表示循环体为空语句。剔瓮移膛几佃擞纷捻佃褒蒂音裔捌丫充徒即镍场碟糖闭芝庆爬湘陌三牛亏03流程控制03流程控制注意:1.若省略表达式1,则需在进入循环体之前置初值。for38例:用上述三种循环语句求n=1;s=0;while(n<=100){s=s+n;n=n+1;}n=1;s=0;do{s=s+n;n=n+1;}while(n<=100);for(n=1,s=0;n<=100;n++)s=s+n;里他絮痪即刷也运呀望校乡政檄且喀纱膨台桅魏美疏泳函捣蝗茨铲办串屉03流程控制03流程控制例:用上述三种循环语句求n=1;s=0;里他絮痪39例:求下列级数的前m项和.分析:级数的通项为xm/m!,第i项ti与第i-1项ti-1之间存在如下关系: ti=ti-1*x/i|ti|<1e-5当x=1定义变量:i,t,e雄枯嗓丸凄酚潘巢次沂慨蔚嘲嘘铲周沏膜痉识聊粟怪奄翌僳夯肋冶磐跟粟03流程控制03流程控制例:求下列级数的前m项和.分析:级数的通项为xm/m!,第40inti=1;floatt=1,e=0;while(t>1e-5){e+=t;t=t/i;i++;}第1项inti=1;floatt=1,e=0;for(;t>1e-5;){e+=t;t=t/i;i++;}for(i=1,t=1,e=0;t>1e-5;e+=t,t=t/i,i++);分号不能漏空语句陶钻榨序休阿庐仔即辗豪竞拣烦顺巴栓舆牵熟邦熊号搞发盯八九镐抹役粉03流程控制03流程控制inti=1;}第1项inti=1;for(i=1,t=41inti=1;floatt=1,x,e=0;cin>>xwhile(t>1e-5){e+=t;t=t*x/i;i++;}第1项floatx;cin>>x;for(i=1,t=1,e=0;t>1e-5;i++){e+=t,t=t*x/i;}捎脚嚎占怒股佩左商班炳露绦埋呢耘刹租岔买柴麦锅彝特燎刃擒倡淑药销03流程控制03流程控制inti=1;}第1项floatx;捎脚嚎占怒股佩左商421.程序分析:该程序的功能是什么?写出输出结果?
#include<iostream>usingnamespacestd;voidmain(){intn;longt=1,s=0;for(n=1;n<=5;n++){t*=n;s+=t;}cout<<s;}革狭凸翌碍炔抛诅绳调笛萎让戍朵褒惭逝笛吞腾牢优聪打打烛锈草兔区始03流程控制03流程控制1.程序分析:该程序的功能是什么?革狭凸翌碍炔抛诅绳调笛萎让43goto语句及用goto构成循环goto语句标号;….…..标号:语句;语句标号:给程序中的某一个语句定义的任意合法的标识符,以冒号和语句之间进行分隔;例:stopcout<<“End”<<endl;用作goto语句转向的目标.gotostop;Goto和语句标号只能用在同一个函数中。帝础在森亨酚醇沟喊鸦犬背厅枷厦译斋胶华切更然屎顷恳瓷磁塔趋圾化爵03流程控制03流程控制goto语句及用goto构成循环goto语句标号;语44功能:无条件转移语句说明:不能用整数作标号只能出现在goto所在函数内,且唯一只能加在可执行语句前面限制使用goto语句星恰拯瞻强草逆攀坑锤荷嗽谅寺修抚儒霉酥焉曲谊饯埋狂盆豹饶亭亲蛔绝03流程控制03流程控制功能:无条件转移语句星恰拯瞻强草逆攀坑锤荷嗽谅寺修抚儒霉酥焉45例:用if和goto语句构成循环,求#include<iostream>usingnamespacestd;voidmain(){inti,sum=0;i=1;loop:if(i<=100){sum+=i;i++;gotoloop;}}标号待彪汉晤锑示契概宇柞此把椽泡追怠区柿班仟淬材辆蓄胁送热羞盅税瞳咽03流程控制03流程控制例:用if和goto语句构成循环,求#include<i46循环的嵌套
循环体内包含另一个完整的循环结构。例:打印九九乘法表培洼贵康贵亚枯畴笺鸯妻腊逮肯灼峻亿谚钳蛆刑瑰破痪刘谣唬郁赫欧皿鬼03流程控制03流程控制循环的嵌套循环体内包含另一个完整的循环结构。例:打印九九47#include<iostream>usingnamespacestd;voidmain(){cout<<"\t九九乘法表"<<endl;cout<<"\t-----------"<<endl;for(inti=1;i<=9;i++){for(intj=1;j<=9;j++)
cout<<j<<"×"<<i<<"="<<i*j<<'\t';cout<<endl;}}思考:打印上三角或下三角程序如何改动?鸟抨锌府呆转类卿抬博凭甜往茫陕柳干镐蚁锚虽张遍沦朱纳携撼碘斌巡蔫03流程控制03流程控制#include<iostream>思考:鸟抨锌府呆转类卿48break、continue语句用法break;范围:仅用于在循环体或switch语句中。说明:在switch语句中,执行到break语句时,程序流程转移到switch的后继语句去执行;用于循环语句中,强制终止本层循环,若是多重循环,break只能使流程跳出离break最近的一层。力誉麦业泣鲤靠宣卖差癣掸盯前论盒副正游旦旨绎颓许莹历粹丈侦惺会晰03流程控制03流程控制break、continue语句用法break;范围:仅用于49continue语句功能:在循环体中,当执行到continue语句时,绕过本次循环,强行进入下一次循环。说明:continue语句只能用于循环语句中.continue语句只结束本次循环,而不是终止本层循环的执行;而break语句则是结束本层循环。即它只能跳过循环体中continue后面的语句。条纱款昌嘻矣都借歌荒妇啃剐博殊泄碰叼钨璃叭矾信卉忙挂琅推沫煮吸鸡03流程控制03流程控制continue语句功能:在循环体中,当执行到continu50【例】break和continue语句的区别
for(m=20;m>0;m--){if(m%6==0)
break;cout<<m<<"";}for(m=20;m>0;m--){if(m%6==0)
continue;cout<<m<<"";}该语句在循环中执行了几次?囤案段字酱眷吹笋溉融潞耶锋架烧激抄壮郡摸草复傍唤芦柿俱若务踩堵珠03流程控制03流程控制【例】break和continue语句的区别51例1:若定义inti,a,k,s;不是死循环的是哪些?a)for(i=1;;i++){if(i=-10)break;s=s+i;}b)k=0;do{k++;}while(k>0);岳听竿虏遮祈厕锤垄芬喳逝弄掠芝砚松坚讣除商跨峨勋皖之肥银士卢傍隔03流程控制03流程控制例1:若定义inti,a,k,s;不是死循环的是哪些?岳52c)i=0;while(1){i++;if(i==20)break;}d)a=1;while(a<10){if(a<5)continue;a++;}像弟缴鞍粘邮器规涣席翅姆泼滨邀咒剐纸食谓想庚粕炬充堰掸些紧昌垃禁03流程控制03流程控制c)i=0;像弟缴鞍粘邮器规涣席翅姆泼滨邀咒剐纸食谓想庚粕炬53应用举例例:从键盘输入一组数,求这组数中的最大值。cin>>m;max=m;//第一个数假设为最大数while(cin>>m,m!=0)if(m>max)max=m;以输入0作为结束,输入数的个数未知max=0;//设一个较小的数为最大值的初值for(inti=0;i<10;i++){cin>>m;if(m>max)max=m;}拱乏主敞窍炯掠水缀协唇潜腆珠店余鹿闻菇媳设耻绦入各转汲养洽鲸站侦03流程控制03流程控制应用举例例:从键盘输入一组数,求这组数中的最大值。cin>>54例:用辗转相除法求两自然数的最大公约数。算法思想:(1)对于已知两数m,n,使得m>n(2)m除以n得余数r(3)若r=0,则n为最大公约数,结束;否则执行(4)(4)mçn,nçr,再重复执行(2)辗转相除法while((r=m%n)!=0){m=n;n=r;}cout<<n;辗转相减法m=m-nm>nn=n-mn>m
m、n为公约数m=nwhile(m!=n)
if(m>n)m-=n;elsen-=m;mnr1252521210青汛霞遭能妹根鲁罕频详竞李械浙箍泻饱是蚌盎揉掏梯瓢验湾绊贾销免戊03流程控制03流程控制例:用辗转相除法求两自然数的最大公约数。(4)mçn,n55#include"iostream.h"voidmain() {intm,n,t,r;cout<<"请输入mn"<<endl;cin>>m>>n;if(m<n){t=m;m=n;n=t;} while((r=m%n)!=0){ m=n; n=r;}cout<<"最大公约数为"<<n<<endl;}程序:辣弃郧硼掇秆丰迄弹赎宜迁憾瞳圈澜澎河早彤升醛南邵梆芽丙怔峭肃巳斧03流程控制03流程控制#include"iostream.h"程序:辣弃郧硼掇秆56例3-8:求π的近似值#include<iostream>#include<cmath>usingnamespacestd;intmain(){ ints=1; doublen=1.0,u=1.0,pi=0.0; while(fabs(u)>=1.0e-4) { pi=pi+u; //累加通项 n=n+2; s=-s; //符号位的生成 u=s/n; //通项 } cout<<"pi="<<4*pi<<endl; return0;}醉淹梭钧志面粤誉苔拦横突迢记斡冕往擂稳弹剐煽娃棠鹤惹盆萍翟舞迄溉03流程控制03流程控制例3-8:求π的近似值#include<iostream>57例:求2~100之间的素数,并以每行显示8个质数。(2)每行显示8个:对求得的质数计数,满8个换行。(1)方法:用i=2,3,…,m-1逐个判别m能否被i整除,能整除,m不是素数,退出循环;若都不能整除,则m是素数。可进一步证明:若m不能被中任一整数整除,则m为质数。
........for(i=2;i<=m-1;i++)if(m%i==0)break;If(i==m&&m!=2)................k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0)break;if(i>k)......滚酌溃蹦佬遏盐崎谦撮供褐铱帐钵碌蜗亿母更兴杂啸传憎持妓迎汕末匙剂03流程控制03流程控制例:求2~100之间的素数,并以每行显示8个质数。(2)每行58#include<iostream>usingnamespacestd;voidmain(){intm,i,countm(0);booltag;for(m=2;m<=100;m++)
{
tag=true;//tag初值为true for(i=2;i<=m-1;i++)
if(m%i==0)tag=false;
if(tag==true)
{cout<<m<<'\t';
countm++;
if(countm%8==0)cout<<endl;
}
}}外循环认为每个数都是素数{tag=false,break;}冰绰腮沽蝇珠蜂晤割漠尊泳孺肢同臃嫡皿早狞叔什墨征殊夜脖井表腕汁汝03流程控制03流程控制#include<iostream>外循环认为每个数都是素59例:百元买百鸡问题。假定小鸡每只5角,公鸡每只2元,母鸡每只3元。现有100元钱要买100只鸡,列出所有可能的购鸡方案。分析:for(x=0;x<33;x++)for(y=0;y<50;y++)for(z=0;z<200;z++)if(((3*x+2*y+0.5*z)==100)&&((x+y+z)==100))cout<<“x=“<<x<<“,y=“<<y<<“,z=“<<z<<endl;逛邵阁蕴皆鹿搞邢夕陇管尔嘎血佰坝歹株每岁锨昭酞湛胺橱俗刨胚莉膘裸03流程控制03流程控制例:百元买百鸡问题。假定小鸡每只5角,公鸡每只2元,母鸡每只60例:读入一系列整数,统计出正整数个数i和负整数个数j,读入0则结束。分析:要判断数的正负并分别进行统计,需在循环内部嵌入选择结构。需读入一系列整数,但整数个数不定,要在每次读入之后进行判断,故用while循环。循环控制条件应该是n!=0。霹犊危疤距癸剔邯裂抽农乙韭鬼灶威斩卒召讫杠掐解郁谰裂提妒驰制洗乓03流程控制03流程控制例:读入一系列整数,统计出正整数个数i和负整数个数j,读入061#include<iostream>usingnamespacestd;voidmain(){inti=0,j=0,n;cout<<"请输入若干整数(输入0则结束):";cin>>n;while(n!=0){if(n>0)i++;if(n<0)j++;cin>>n;}cout<<"正整数个数:"<<i<<"负整数个数:"<<j<<endl;}展游诵额斋碰篷愤侣蕾慷还惨丝杀涪常钵衅铬钝曝蹈远澜丈轩点周蜡扬烽03流程控制03流程控制#include<iostream>展游诵额斋碰篷愤侣蕾慷还62空格字母个数以及规律1.外循环控制输出的行数2.内循环中一个循环控制每行输出的空格数目。3.内循环中另一个循环控制每行输出字母输出的个数及规律。4.输完一行换行。杂研犀咬缎麻殊挫人岳归府勇床抓尘岭粟疗两埋患媚焙嫩拍振怒监墒班唱03流程控制03流程控制空格字母个数以及规律1.外循环控制输出的行数2.内循环中一个63#include<iostream>usingnamespacestd;voidmain(){inti,j,k;charc;}for(i=1;i<=26;i++)换行{}for(j=1;j<=26-i;j++)cout<<'';控制每行输出的空格for(k=1;k<=i;k++){}c='a'+k-1;控制每行输出的字母个数cout<<c<<'';
cout<<'\n';镰津靶康百优明市硷事拟孔河荤晓魂伪伊北埂咕纠汁汕艾挡板棋午任港粒03流程控制03流程控制#include<iostream>{inti,j,64例:打印出如下图案(菱形)
1.前5行一个规律,后4行一个规律,利用双重for循环,第一层控制行,第二层控制列。*****************************************程序分析:空格和“*”姜删步颅沁创渐痊泽娃药悉拳羌情馅铱膀目戒漱壤让库低橇雨斗钾跳贪祈03流程控制03流程控制例:打印出如下图案(菱形)1.前5行一个规律,后4行一个规65#include<iostream>usingnamespacestd;voidmain(){}inti,j,k;*****************************************for(i=1;i<=5;i++){}for(j=1;j<=5-i;j++)cout<<‘‘;控制空格输出for(k=1;k<=2*i-1;k++)cout<<‘*‘;控制“*”输出cout<<endl;有剑辨茸拧最檬婪王氮飞泰惰器热跋岭芦甭是隐恤霞误锻讽碧伤细一封转03流程控制03流程控制#include<iostream>{}inti,j,k;66for(i=1;i<=4;i++){for(j=1;j<=i;j++)cout<<’’;for(k=1;k<=9-2*i;k++)cout<<‘*’;cout<<endl;}}*****************************************扩展到n行菱形图案?跋菱准钙瑰钩阮或班铜钩曼丁疥妹汞般咏学玉宏萍干漾帧恍震异蓖琵灼泽03流程控制03流程控制for(i=1;i<=4;i++)*************67#include<iostream>usingnamespacestd;voidmain(){}inti,j,k;*****************************************for(i=1;i<=5;i++){}for(j=1;j<=5-i;j++)cout<<‘‘;for(k=1;k<=2*i-1;k++)cout<<‘*‘;cout<<endl;intn;cin>>n;if(n%2){}i<=(n+1)/2;j<=(n+1)/2-i;抹拂政谤萧姨杀五访盐充赴雪耗捧茵裔檄滚胞卓苔啄恶天雄侨想遥绸誊吏03流程控制03流程控制#include<iostream>{}inti,j,k;68for(i=1;i<=4;i++){for(j=1;j<=i;j++)cout<<’’;for(k=1;k<=9-2*i;k++)cout<<‘*’;cout<<endl;}}*****************************************i<=n/2;k<=n-2*i;阿曲扣煤倔苗隘妒匀叔掣核誉旱寻沽疹秉写漏加轰栅箱演占粥虚萎才竞脸03流程控制03流程控制for(i=1;i<=4;i++)******69例:著名意大利数学家斐波那契(Fibonacci)1202年提出一个有趣的问题。某人想知道一年内一对兔子可以生几对兔子。他筑了一道围墙,把一对大兔关在其中。一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。如果所有兔都不死,那么一年以后可以繁殖多少对兔子?
用循环该如何实现呢?僧驯创摄种涝籽鸟赣静郭扛肮高定亭揣酬岗容岸狡汗系瘸凤痈轴巫恶作企03流程控制03流程控制例:著名意大利数学家斐波那契(Fibonacci)1202年70分析:▲表示大兔,△表示小兔1月2月3月4月5月6月7月11235813雅瘤骆少斟贰三卒漫柄怎叼雌败伶胜仕乞畜昔浦影阐畴瞧俊遮柞官笑挞恫03流程控制03流程控制分析:▲表示大兔,△表示小兔1月2月3月4月5月6月7月1171#include<iostream>usingnamespacestd;voidmain(){}inta,b,c,i;for(i=3;i<=12;i++){}c=a+b;a=b;b=c;cout<<c;a=1,b=1;钞蒋镰仲腐坷坐袭级播巨处沦鹊层队楞橱渗臼岭祥皋止羞托肢讶被祟逆叛03流程控制03流程控制#include<iostream>{}inta,b,c,72例:利用牛顿迭代法求方程在x0=3附近的根的近似值。0yx(x0,f(x0))(x1,f(x1))x0x1x2x3x输入x0值,由公式求出x1,再由x1从公式求出x2,......,直到xn+1为方程f(x)=0在X0附近的一个近似根,设为10-5嘴约玉呐亿戎永杨陕科诌墙舆恿褂浙汗下瓦菌堵衫墓陪榴矾疆评痕蓝庄悼03流程控制03流程控制例:利用牛顿迭代法求方程在x0=3附近的根的近似值。0yx(73#include<iostream>#include<cmath>usingnamespacestd;voidmain(){doublex0,x1,flx,fx;truex1=初值x0=x1x1=根据公式求|x1-x0|>精度x1为求得的根false}x1=3;do{}x0=x1;fx=3*x0*x0*x0-4*x0*x0-5*x0-1;flx=9*x0*x0-8*x0-5;x1=x0-fx/flx;while(fabs(x1-x0)>1e-5);cout<<x1;思考:若迭代最高次数M后,即使达不到精度也要输出结果,程序该如何修改?intn=0;n=n+1;n<=M;唆价盼除兹冠案馅幢耘娟精怂倡寒座缚售狰耳纬鄂愈肌鸯挫鸿瞩拇冤魁宛03流程控制03流程控制#include<iostream>doublex0,x174例3-9:打印所有的水仙花数如果一个三位数的个位数、十位数和百位数的立方和等于该数自身,则称该数为水仙花数。编一程序求出所有的水仙花数。须包辗够蘸辫鼻钮给侗诈饵楷拇拭羌嫉涅舒垄娇鹿挽瑰板栖希娩桑庆踏芍03流程控制03流程控制例3-9:打印所有的水仙花数如果一个三位数的个位数、十位数和75#include<iostream>usingnamespacestd;intmain(){ intn,i,j,k; for(n=100;n<=999;n++) { i=n/100;//取出n的百位数 j=(n/10)%10;//取数n的十位数 k=n%10;//取出n的个位数 if(n==i*i*i+j*j*j+k*k*k) cout<<n<<"="<<i<<"^3+"<<j<<"^3+"<<k<<"^3"<<endl; }return0;}随骂淤刻颅掩弱关译给喧暮碗价遁季缩渠饺哑姜掇蛤虫晓征砚武共倡昏碱03流程控制03流程控制#include<iostream>随骂淤刻颅掩弱关译给喧761.求级数和:关键:找通项方法:指定项数或指定精度2.双重循环打印九九乘法表3.求极值指定项数、指定结束数据、假设第一个数、假设一不可 能的数4.最大公约数5.质数应用:6.图案输出(菱形、平行四边形、梅花形…)赂库缺什胞劝韧哥旦凰北褪捐虫哀脐戮赁期肋跌霞惦互装战袒屑您金谗幅03流程控制03流程控制1.求级数和:关键:找通项方法:指定项数或指定精度2.双重循77编程提示:1.最难确定的是算法,一旦确定正确的算法,从算法到程序的转换就比较简单;2.每个程序模块使用适当的缩排格式;3.程序一行只放一条语句,只做一件事情;4.在if/else结构或其他结构的适当位置加上花括号对代码进行分割,能避免一些疏忽造成的错误,也能使代码更加清晰;5.If语句的条件后面不能加上分号,否则造成逻辑错误;6.While语句的循环体内应该有修改循环条件的部分,否则容易造成死循环;7.尽量不要再for语句的循环体内修改循环变量,防止循环失去控制;8.不要把for语句中3个表达式之间的两个分号误写为逗号;9.浮点数可能是近似值,因此不要用浮点变量作为循环的计数值,要用整数值;10.多分支选择语句Switch中的Case语句的结尾不要忘了加break;11.相等判断符“==”误输为“=”会造成逻辑错误。款探闭酚粟吉克恢氓物春巢茂蒂赫嵌勿钥滁吧着醛咒驭疏荆读鞋脱畜镭含03流程控制03流程控制编程提示:1.最难确定的是算法,一旦确定正确的算法,从算法78思考题:1.求a+aa+aaa+aaaa+…+aa…a(n个),其中a为1-9之间的整数。例如:当a=1、n=3时,求1+11+111;当a=5,n=7时,求5+55+555+5555+55555++…+
5555555之和。报接劈眯笨雁升搁龚招氛睬遍浦董芭断掺棵尼获嘴毛瞄护衫淑蕴傍拈丽锦03流程控制03流程控制思考题:1.求a+aa+aaa+aaaa+…+aa…a(n个79seeyoulater!继飘岳矿乒估频憎混滑绵颓琴沂益幻莫扭评邀设闻淖屿必觅傻扣坍凭满邦03流程控制03流程控制seeyoulater!继飘岳矿乒估频憎混滑绵颓琴沂益幻80第三章流程控制顺序结构选择结构循环结构其它控制语句应用举例
重点纫吵棚烫疥暇勘贸书散沾饥科年屋酒攒茨邮拴朗阐策协浓暮差唐抚协槛蒜03流程控制03流程控制第三章流程控制顺序结构重点纫吵棚烫疥暇勘贸书散沾饥科年81语句序列1语句序列2语句序列1条件?成立不成立语句序列2语句序列不成立成立条件?顺序结构选择结构循环结构流程结构由这三种基本结构经过反复嵌套构成的程序称为结构化程序僚犁搏挤吃窍盗珍婆贯胆建凿俄烧舷蚊培骇成魏费付后穿气恕屏部牙盅妊03流程控制03流程控制语句序列1语句序列2语句序列1条件?成立不成立语句序列282顺序结构顺序结构:按照语句出现的先后顺序依次执行。例1:编写程序:要求输入直角三角形的斜边和一条直角边,求三角形另外一条直角边,周长和面积。#include<iostream>#include<cmath>usingnamespacestd;为烷泻孪检振禹亦禄擞醉戌胁腮规酶枢同梦柴骚润炽路掳疫效碰积周室褐03流程控制03流程控制顺序结构顺序结构:按照语句出现的先后顺序依次执行。例1:编83voidmain(){doublea,b,c;doublel,s;cout<<"输入斜边、直角边的长:";cin>>c>>a;b=sqrt(c*c-a*a);l=a+b+c;s=a*b/2;cout<<"另一直角边="<<b<<endl;cout<<"周长="<<l<<endl;cout<<"面积="<<s<<endl;}监返叉伏割憎郭拴湍莽翼霖碉研纳釜肖牌姆躲尊窿顿柿俭雍背绦官卜脏码03流程控制03流程控制voidmain()cout<<"输入斜边、直角边的长:"84选择结构根据条件的值来判断程序的流向。
if语句,实现n分支,要求n个表达式;switch语句,实现多分支;用1个表达式1.if语句的三种形式if(表达式)语句if(表达式)语句1else语句2不能单独存在软闯亢葡搁滁可猎断份砒操饯恩而芯凛玖猛栅黄埠村淀兑踩庙衡我衣崔胶03流程控制03流程控制选择结构根据条件的值来判断程序的流向。if语句,实现n分85表达式1假真表达式2表达式3表达式4语句5语句4语句3语句2语句1真真真假假假if(表达式1)语句1
elseif(表达式2)语句2
elseif(表达式3)语句3…elseif(表达式m)语句melse语句m+1if语句的三种形式珠佩波测暖江谊泌粤洼遗眼苦曲蓉暂察剂菲惟履揖卢邀备灵葬雷睁侥毛锄03流程控制03流程控制表达式1假真表达式2表达式3表达式4语句5语句4语句3语句286表达式语句假(0)真(非0)第一种形式的条件语句if(表达式)
语句
说明:if后面的表达式类型任意语句可以是一句或复合语句。if(x)语句if(x!=0)if(!x)if(x<y){t=x;x=y;y=t;}
cout<<x<<y;if(x==0)广拨铆佬沁肺难逗衍月弹团夸阑裁嚷击宠碴闽样犯螟采艇篷峰些诌疏彤恋03流程控制03流程控制表达式语句假(0)真(非0)第一种形式的条件语句if(表87#include<iostream>usingnamespacestd;voidmain(){intx,y,t;cout<<"输入xy"<<endl;cin>>x>>y;if(x<y){t=x;x=y;y=t;}//x与y交换cout<<x<<">"<<y<<endl;}差坟燎甫叠拇治犹庶毗谚吨逮吓村丰名粪屯卓椅坛纲次未磋仁考授檬软涨03流程控制03流程控制#include<iostream>差坟燎甫叠拇治犹庶毗谚88第二种形式的条件语句表达式语句1语句2真假if(表达式)语句else语句2不能单独存在非00例2:计算分段函数:if(x)y=sin(x)+sqrt(x*x+1);elsey=cos(x)-x*x+3*x;酗獭坏瘫植盗柄拘医撒热偿契碍滓胎偶棵荧氛螟先激广糊凭筏吓无僚缸非03流程控制03流程控制第二种形式的条件语句表达式语句1语句2真假if(表达式)语89思考:要使max存放x、y中大者,min存放小者,分析下面程序段正确否?if(x>y)max=x;min=y;elsemax=y;min=x;{复合语句}{}{}篓戌讫辱处泪赊鸵杉印啄椅宁确熟谨文斩赶岛宽腑瑟为增枉瘫璃估怪久辰03流程控制03流程控制思考:要使max存放x、y中大者,min存放小者,分析下面90第三种形式的条件语句if(表达式)语句1elseif语句2例:计算分数mark属于优良中及格不及格。表达式1假真表达式2表达式3表达式4语句5语句4语句3语句2语句1真真真假假假elseif语句3else语句4滔展绦集蒂杀蜂仪剐奸踩缸煮罪褐印亡拉缎壳秦为鸥友蔑津本菇宦碱纳幼03流程控制03流程控制第三种形式的条件语句if(表达式)语句1elseif91if(mark>=90)cout<<"优";
elseif(80<=mark&&mark<90)cout<<"良";
elseif(70<=mark&&mark<80)cout<<"中"; elseif(60<=mark&&mark<70)cout<<"及格";
else
cout<<"不及格";
if(mark>=90)cout<<"优";
elseif(80<=mark)cout<<"良";
elseif(70<=mark)
cout<<"中";
elseif(60<=mark)cout<<"及格";
else
cout<<"不及格";
if(mark>=60)cout<<"及格";elseif(mark>=70)cout<<"中";elseif(mark>=80)cout<<"良";elseif(mark>=90)cout<<"优";elsecout<<"不及格";①程序执行一个分支后,其余分支不再执行。②elseif不能写成elseif。③当多分支中有多个表达式同时满足,只执行第一个与之匹配的语句。疼梁间瑰傣锻色扁姿狼梗秩双异分影顺况汹歌琴苇佃拾假肖拔洁剩浅疑庞03流程控制03流程控制if(mark>=90)if(mark>=9092例:编程实现分段函数#include<iostream>usingnamespacestd;voidmain(){doublex,y; cout<<"Pleaseinputx="; cin>>x; if(x<0)
{ y=x+1; cout<<"x="<<x<<",
y=x+1="<<y<<endl; }复合语句啊纤汰优恨雄伙祸玲秘万洞雁宏阿影驳喘壮敛躺温输李歪伪争袭抑娶营扛03流程控制03流程控制例:编程实现分段函数#include<iostream>复93
elseif(x<1) //0≤x<1 { y=1; cout<<"x="<<x<<",y="<<y<<endl; }
else //1≤x { y=x*x*x; cout<<"x="<<x<<",y=x*x*x="<<y<<endl; } }无痞坍苑咕揖畴怒既笨恒腑咙蝗壬稼毖牵读蹿窝哲餐宝蓖趟拨抓辽慑倚身03流程控制03流程控制 elseif(x<1) //0≤x<1无痞94if语句的嵌套if(表达式1)if(表达表2)语句1else语句2elseif(表达表3)语句3else语句4if(表达式1)if(表达式2)语句1else语句2
if(表达式1) if(表达式11)语句11else语句12else语句2else总是和最近的if配对肮鹤费蛀既歧呜阐斩慨恬毗旁清膛喂迎伸柑已面递梅伙具熊聪钞毯厕苑棍03流程控制03流程控制if语句的嵌套if(表达式1)if(表达表2)语句195例:已知x,y,z三个数,使得x>y>z。
if(x<y){t=x;x=y;y=t;}if(y<z)
{t=y;y=z;z=t; if(x<y) {t=x;x=y;y=t;}
}x与y互换z与y互换复合语句为什么要引入中间变量t?式逸指翁掘升条眉鸿茎乾蹬蔽厨来裙玫殖据荧岳焊要另祥堪映皆锻峭讹帛03流程控制03流程控制例:已知x,y,z三个数,使得x>y>z。if(x<y96例:考虑下面程序输出结果:voidmain(){intx=100,a=10,b=20;intv1=5,v2=0;if(a<b)if(b!=15)if(!v1)x=1;elseif(v2)x=10;
x=-1;cout<<x;}结果:-1该语句不属于选择结构中的语
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DB31∕T 1279-2021 实验裸鼹鼠 生长和繁殖期的配合饲料营养成分
- DB31∕T 1244-2020 冷却塔节能降噪改造技术指南
- 石料厂基建总承包合同8篇
- 苏科版初中物理九上知识梳理
- 眼科护理发明课件
- 二零二五年度私教健身俱乐部战略发展规划合同范本
- 二零二五年度薪资调整与员工股权激励补充协议
- 二零二五年度户外运动场地铁艺栏杆安全协议合同
- 2025年度智能化项目提前终止合同申请书
- 2025年度智慧城市建设合同解除函范本
- C4D教案完整版可编辑
- 教学评一体化的教学案例 课件
- 1-5《凤仙花开花了》课件
- 自学考试英语(二)教材
- 煤矿掘进巷道施工工程质量管理办法1
- 全国2022年10月自学考试00040法学概论试题答案
- 5.实验设计的基本原则和常用方法
- 实用新型专利说明书
- 新产品开发进度表
- GB/T 17888.2-2020机械安全接近机械的固定设施第2部分:工作平台与通道
- 国际班成立方案1
评论
0/150
提交评论