欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C++程序设计_第3章 结构化程序设计.ppt

    • 资源ID:87453540       资源大小:967KB        全文页数:90页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C++程序设计_第3章 结构化程序设计.ppt

    _ C+输入与输出流_ 选择结构的实现_ 循环结构的实现_ 顺序结构程序设计_ 程序设计举例_ C+基本语句3-1 C+基本语句定义语句定义语句表达式语句表达式语句控制语句控制语句空语句空语句复合语句复合语句2定义语句定义语句定义常量、变量等。定义常量、变量等。int a,b;double x,y,x;char s1,s2;const double PI=3.14159;表达式语句表达式语句在一个表达式后加一个分号,就构成在一个表达式后加一个分号,就构成表达式语句。表达式语句。a=b+c;i+;p=1,sum=0;y=fun(w,v);3空语句空语句 只只有有一一个个分分号号的的语语句句就就是是空空语语句句。它它不不产产生生何何操操作运算。常用于控制结构中。作运算。常用于控制结构中。控制语句控制语句 分支、循环、转移、返回分支、循环、转移、返回分支、循环、转移、返回分支、循环、转移、返回复合语句复合语句 指括在一对花括号指括在一对花括号里的里的语句序列。在语法上可被认为是语句序列。在语法上可被认为是单个语句。只是在花括号外不再单个语句。只是在花括号外不再加分号。加分号。常用于控制结构中及提高程常用于控制结构中及提高程序可读性。序可读性。if(x 抽取操作符抽取操作符抽取操作符抽取操作符coutcout屏幕屏幕屏幕屏幕 插入操作符插入操作符插入操作符插入操作符 表示抽取表示抽取表示抽取表示抽取,即,即,即,即从键盘中抽取输入信息从键盘中抽取输入信息从键盘中抽取输入信息从键盘中抽取输入信息。6C+的的流流输输入入(cin)和和流流输输出出(cout)被被定定义义在在头头文文件件iostream.h中中,在在使使用用cin 和和cout前前,要要用用预预编编译译命命令令#include将头文件包含到源文件中将头文件包含到源文件中(输入输出预说明输入输出预说明)。#include 在由系统指定的文件目录中找该文件在由系统指定的文件目录中找该文件#include iostream.h 在当前目录和系统指定的目录中找该文件在当前目录和系统指定的目录中找该文件73.2.1 输出输出coutcout的的作作用用是是向向输输出出设设备备输输出出若若干干个个任任意意类类型型的的数数据据,cout必必须须配配合合插插入入操操作作符符使使用用,用用于于向向cout输输出出流流中插入数据,引导待输出的数据输出到屏幕上。中插入数据,引导待输出的数据输出到屏幕上。格式如下:格式如下:cout输出项输出项1输出项输出项2.输出项输出项n;输输出出项项:是是需需要要输输出出的的数数据据,可可以以是是变变量量,常常量量或或表表达式。达式。每个输出项前都必须使用插入操作符每个输出项前都必须使用插入操作符进行引导进行引导8#include void main()int a,b;char c;a=1;b=2;c=a;coutabc;结果为:结果为:12acouta=atb=btc=c;a=1 b=2 c=a 当插入操作符当插入操作符后为后为变量变量时,将输出变量的值出来;时,将输出变量的值出来;若为若为常量常量,则直接输出。,则直接输出。9#include void main()cout“hello!n”;cout“I am a student”;例如例如:输出结果为输出结果为:Hello!I am a student10例例3.1#include void main()int a=10;double b=20.3;char c=y;couta,b,c;cout200,2.5,hello;输出结果为:输出结果为:10,20.3,y200,2.5,hello11 插入操作符插入操作符后是后是表达式表达式当插入操作符当插入操作符后是后是表达式表达式时,系统时,系统先计算先计算表表达式的值,然达式的值,然后输出后输出表达式的值。为了避免一些运表达式的值。为了避免一些运算符与插入操作符算符与插入操作符之间发生冲突,通常将表达式之间发生冲突,通常将表达式用用括号括号括起来。括起来。例例例例3.2 3.2 输出表达式的值。输出表达式的值。#include include void main()void main()intint a=9,b=2;a=9,b=2;coutcout(a+ba+b)t(a)t(a-b)t(a*b)-b)t(a*b)t(a/b);t(a/b);输出结果为:输出结果为:11117 718184 4 12在在coutcout中,实现输出数据中,实现输出数据换行换行方法既可以使用转方法既可以使用转义字符义字符nn,也可以使用表示行结束的流操作符,也可以使用表示行结束的流操作符endlendl。例例例例 3.4 3.4 换行的输出。换行的输出。换行的输出。换行的输出。#include include void main()void main()intint a=10;a=10;double b=20.3;double b=20.3;char c=x;char c=x;coutcouta=aa=aendlendl;coutcoutb=bb=bncnc=ccendlendl;输出结果为:输出结果为:a=10b=20.3c=x 13当当当当coutcout后有多个表达式的时候,是按照从右向左的后有多个表达式的时候,是按照从右向左的后有多个表达式的时候,是按照从右向左的后有多个表达式的时候,是按照从右向左的顺序计算出个输出项的值,然后再输出各项的值。顺序计算出个输出项的值,然后再输出各项的值。顺序计算出个输出项的值,然后再输出各项的值。顺序计算出个输出项的值,然后再输出各项的值。例例例例3.3 3.3 多个表达式的输出。多个表达式的输出。多个表达式的输出。多个表达式的输出。#include include void main()void main()intint i=1;i=1;coutcoutii+”从cin输入流中抽取数据。格式格式:cin变量变量1变量变量2.变量变量n;15例例3.6#include#include void main()void main()int a;int a;double b;double b;char c;char c;cinabc;cinabc;couta=a,b=bnc=couta=a,b=bnc=cn;c后面只能是变量名,不得后面只能是变量名,不得出现任何类型的常量(如字符、字符串常量)出现任何类型的常量(如字符、字符串常量)或换行符或换行符endl等。等。如下都是错误的:cinx=x;/错误,因为含有字符串x=cinxx;/错误,因为含有字符常量xcinx10;/错误,因为含有常量10cinxendl;/错误,因为含有endl17 cincin可为各种类型的变量输入数据。当系统执行到可为各种类型的变量输入数据。当系统执行到可为各种类型的变量输入数据。当系统执行到可为各种类型的变量输入数据。当系统执行到cincin时等待用户输入,用户必须输入其所需类型的数时等待用户输入,用户必须输入其所需类型的数时等待用户输入,用户必须输入其所需类型的数时等待用户输入,用户必须输入其所需类型的数据:据:据:据:#include void main()int a;double b;char c;cinabc;couta=a,b=bnc=c”,输入的各个数据之输入的各个数据之间要用一个或多个空格或回车隔开,输入完间要用一个或多个空格或回车隔开,输入完毕后按回车键。毕后按回车键。19#include void main()int a;double b;char c;coutabc;couta=a,b=bnc=cn;当程序中用当程序中用cin输入数据时,最好在该输入数据时,最好在该语句之前用语句之前用cout输出一个需要输入数据输出一个需要输入数据的提示信息,以正确引导和提示用户输的提示信息,以正确引导和提示用户输入正确的数据。入正确的数据。203.3 顺序结构程序设计顺序结构程序设计#include#includevoid main()float a,b,c,s;double area;coutabc;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);cout“area=“areaendl;例例3-6 3-6 已知三条边求三角形面积。已知三条边求三角形面积。abc534sarea6.06.0Please input a,b,c=3 4 5area=621#include#includevoid main()float a,b,c,s;double area;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);coutabc;coutarea=areaendl;正确的位置22#include void main()int a,b,c;coutab;c=a;a=b;b=c;cout“a=”a“tb=“b;abc1212 3412343412例例3.7 3.7 两数交换,方法两数交换,方法1 1Please input a,b=a=34 b=1223#include void main()int a,b;cinab;cout“a=”a“b=“bendl;a=a+b;b=a-b;a=a-b;cout“a=”a“b=“b endl;2 3a=2 b=3a=3 b=2例例3.7 3.7 两数交换,方法两数交换,方法2 224#includevoid main()int a,b,c,d;couta+b+c+dn;/warning C4700:local variable a used without having been itialized 编程中出现的错误编程中出现的错误a,b,c,d a,b,c,d 预先没赋值输出不预先没赋值输出不预先没赋值输出不预先没赋值输出不定数定数定数定数25#includeinclude void main()void main()intint a=56a=56,b,c,d;,b,c,d;b=78b=78;coutcoutPlease input c and d=;cd;cd;coutcouta b c dn;a b c dn;coutcouta+b+c+da+b+c+dn;n;对变量:先定义再使用;先赋对变量:先定义再使用;先赋对变量:先定义再使用;先赋对变量:先定义再使用;先赋值再使用其值。值再使用其值。值再使用其值。值再使用其值。为变量提供值的三种方法:为变量提供值的三种方法:为变量提供值的三种方法:为变量提供值的三种方法:1 1 1 1、初始化、初始化、初始化、初始化 2 2 2 2、赋值表达式、赋值表达式、赋值表达式、赋值表达式 3 3 3 3、输入:程序运行时用户、输入:程序运行时用户、输入:程序运行时用户、输入:程序运行时用户键盘输入键盘输入键盘输入键盘输入 三者选一三者选一三者选一三者选一263.4 选择结构程序设计选择结构程序设计 条件语句条件语句开关语句开关语句27一、一、条件语句条件语句格式:if(expression)statement11.if语句的简单分支语句的简单分支执行:计算执行:计算 表达式的值,表达式的值,若为真,则执行语句;否则若为真,则执行语句;否则不执行语句。不执行语句。v 表达式表达式:表达式为:表达式为任意表达式任意表达式v 语句语句:一条语句。若有若干:一条语句。若有若干语句,要构成复合语句。语句,要构成复合语句。28例:例:C若为大写字母,则把它变为小写字母,否若为大写字母,则把它变为小写字母,否则为则为c本身本身#includevoid main()char ch;cinch;if(ch=A&ch=Z)ch=ch+32;cout=A&cmax?bmax?b bmaxmax输出输出输出输出maxmax的值的值的值的值真真真真假假假假输入输入输入输入a,ba,b的值的值的值的值#includevoid main()int a,b,max;coutab;max=a;if(bmax)max=b;cout“max=“maxendl;30例如:求三个数中的最大值例如:求三个数中的最大值#includevoid main()int a,b,c,max;coutabc;max=a;if(bmax)max=b;if(cmax)max=c;cout“max is“maxendl;#includevoid main()int x,max;coutmaxx;if(xmax)max=x;cinx;if(xmax)max=x;cout“max is“maxendl;31例例3.13:输输入入两两个个数数,按按从从大大到到小小的的顺序输出顺序输出ab?ab?交换交换交换交换a a与与与与b b的值的值的值的值输出输出输出输出a,ba,b值值值值真真真真假假假假输入两个数输入两个数输入两个数输入两个数a,ba,b#includevoid main()int a,b;coutab;if(ab)int t=a;a=b;b=t;coutatbendl;322.if 语句的双分支语句的双分支表达式表达式表达式表达式语句语句语句语句1 1语句语句语句语句2 2真假入口出口 执行:执行:计算计算 表达式的值,表达式的值,若为真,则执行语句若为真,则执行语句1;否则执行语句;否则执行语句2。语句:语句:if(表达式)表达式)语句语句1else 语句语句233例例3.14:求:求x的绝对值的绝对值P44#includevoid main()int x,absx;coutx;if(x=0)absx=x;else absxabsx=-x;=-x;cout“|“x“|=”;coutabsx=0 x=0 x xabsxabsx-x xabsxabsx真真假假程序的正确性测试:每个分支运行一次程序的正确性测试:每个分支运行一次34#include#include void main()double a,b,c,s,area;coutabc;if(a+bc&a+cb&b+ca)/判断是否构成三角形判断是否构成三角形 s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c);/求面积求面积 coutArea=areaendl;else coutCant construct trianglen;/不能构成三角形,输出说明不能构成三角形,输出说明例例3.15:输入三角形的三个边长,求其面积。:输入三角形的三个边长,求其面积。35多分支问题多分支问题真真真真x0 x0输入数输入数输入数输入数x xy=x (0 x5)0 (x5)输出输出输出输出 y y0 0y yx5x5x xy yx x2 2y y真真真真假假假假假假假假S=t2t2-1t2-2t+1t2+4t-17t11t22 t33 t363.if 语句语句多分支多分支if(表达式表达式1)语句语句1else if(表达式表达式2)语句语句2else if(表达式表达式3)语句语句3 .else if(表达式表达式n)语句语句nelse 语句语句n+1 /*/*前面前面前面前面n n个条件均不成立,执行语句个条件均不成立,执行语句个条件均不成立,执行语句个条件均不成立,执行语句n+1*/n+1*/注:注:注:注:else与与if间必须有空格间必须有空格 37else_if else_if 流程图流程图if(if(表达式表达式表达式表达式1 1)语句语句语句语句1 1else if(else if(表达式表达式表达式表达式2 2)语句语句语句语句2 2else if(else if(表达式表达式表达式表达式3 3)语句语句语句语句3 3 .else if(else if(表达式表达式表达式表达式n n)语句语句语句语句n nelse else 语句语句语句语句n+1n+138例例3.16:输入:输入x的值求函数的值求函数y的值的值P46#includevoid main()int x,y;coutx;if(x0)y=0;else if(x=5)y=x;else y=x*x;coutx=xy=yendl;真真真真x0 x0输入数输入数输入数输入数x x输出输出输出输出 y y0 0y yx5x5x xy yx x2 2y y真真真真假假假假假假假假y=x (0 x5)0 (x5)if(x=0&x5)y=x*x;393-4-4 if 语句的嵌套语句的嵌套(多分支问题多分支问题)P48 x*x-4 (x=0)y=x (0 x3)#includevoid main()int x,y;coutx;if(x0)if(x=3)y=x;else y=x*x+4;elsey=x*x-4;cout“y=“yendl;例例:编写程序计算函数编写程序计算函数(实验实验教程教程P43,例例3.4)40最近匹配原则最近匹配原则 if(x3)System.out.println(3x=6);如果如果x的值为的值为8,输出结果,输出结果?41让让else语句匹配前一个语句匹配前一个ifif(x3)System.out.println(3x=6);42开关语句开关语句语法为:语法为:switchswitch(表达式)(表达式)case case 常量表达式常量表达式1:1:语句序列语句序列1 1;case case 常量表达式常量表达式2:2:语句序列语句序列2 2;default:default:语句序列语句序列n n;/可无可无 语义为:语义为:根根据据对对整整型型表表达达式式的的计计算算得得到到的的值值,从从第第一一个个casecase常常量量开开始始从从上上到到下下逐逐个个进进行行匹匹配配,若若相相等等,则则以以此此为为入入口口,顺顺序序向向下执行各条语句序列。下执行各条语句序列。否则,执行否则,执行default后面的语句组。后面的语句组。整型、字符型、枚举类型的表达式43该语句常用来实现多分支结构。但语法上要改进一下:该语句常用来实现多分支结构。但语法上要改进一下:switchswitchswitchswitch(整型表达式整型表达式)case case case case 常量表达式常量表达式1:1:语句序列语句序列1 1;break;break;break;break;case case case case 常量表常量表达式达式2:2:语句序列语句序列2 2;break;break;break;break;.default:default:default:default:语句序列语句序列n n;/可无可无 通通过过加加breakbreak强强行行跳跳转转语语句句,在在执执行行完完第第一一个个语语句句序序列后,就列后,就强行跳出强行跳出switchswitch结构。结构。44#includevoid main()int cj;cincj;switch(cj/10)case 10:case 9:cout“nA”;case 8:case 7:cout“nB”;case 6:cout“nC”;default:cout“nD”;break;break;break;例:输入成绩,若:例:输入成绩,若:90 100:A 70 89 :B 60 69 :C 60 :D45#includevoid main()int cj;cincj;switch(cj/10)default:cout“nD”;case 10:case 9:cout“nA”;case 8:case 7:cout“nB”;case 6:cout“nC”;例:输入:例:输入:58输出:输出:DABC46第三讲作业第三讲作业一、课后作业一、课后作业1.复习教材第三章(复习教材第三章(3.13.4)2.二、上机作业二、上机作业3.1.实验教程实验三:例实验教程实验三:例3.13.4、3.72.实验教程实验三中的实验内容实验教程实验三中的实验内容P49P52:三、预习:三、预习:第三章第第三章第5节节473.5 3.5 循环结构的实现循环结构的实现3.5.1 3.5.1 whilewhile语句语句3.5.2 3.5.2 do-while do-while 语句语句3.5.3 3.5.3 for for 语句语句3.5.5 3.5.5 breakbreak语句语句3.5.4 3.5.4 循环的嵌套循环的嵌套3.5.6 3.5.6 continuecontinue语句语句第三章第三章第三章第三章循环:重复执行一段语句循环:重复执行一段语句语句语句语句语句483.5.1 while 语句语句P56whilewhile语句的一般形式是:语句的一般形式是:while(表达式)语句真真真真假假假假表达式表达式表达式表达式语句语句语句语句假假假假循环循环循环循环控制控制控制控制循环体循环体循环体循环体 while while循环由循环由4 4部分组成:部分组成:循环变量初始化,循环变量初始化,循环循环条件,条件,循环体,循环体,改变循改变循环变量的值。环变量的值。49例例3.25 3.25 求求1+2+3+1001+2+3+100的和的程序的和的程序 p57p57算法设计算法设计1.1.变量赋初值:变量赋初值:i=1,sum=0i=1,sum=02.2.计算前计算前i i项之和:项之和:sum=sum+isum=sum+i3.i=i+13.i=i+14.4.判断判断i i是否大于是否大于100100,如果是,结,如果是,结束;否则,执行步骤束;否则,执行步骤2 2、3 350#includeinclude void main()void main()int int sum,sum,i;i;sum=sum=0;0;i i=1;=1;/循环变量初始化 while(while(i i=100100)/循环条件 /循环体 sum+sum+=i=i;i i+;+;/改变循环变量的值 coutcoutsum;sum;#includeincludevoid main()void main()int sum,i;int sum,i;sum=0;sum=0;i=1;i=1;while(while(i i=100100)sum+=i+;sum+=i+;coutsum;coutsum;51#includeinclude void main()void main()int int sum,sum,i;i;sum=sum=0;0;i i=0;0;while while(i i100100 )i i+;+;sum+=i;sum+=i;coutcoutsum;sum;真真真真i=100i=100i+;i+;假假假假0 0i i0 0sumsumsum+=i;sum+=i;52#includeincludevoid main()void main()int sum,i;int sum,i;sum=0;sum=0;i=0;i=0;while(while(i+100 i+100)sum+=i;sum+=i;coutsum;coutsum;#include#includevoid main()void main()int sum,i;int sum,i;sum=0;sum=0;i=0;i=0;while(sum+=+i,i100);coutsum;533.5.2 do-while语句语句真真真真表达式表达式表达式表达式语句语句语句语句假假假假do 循环体 while(条件表达式);必须加必须加;特点:特点:“先执行,后判断先执行,后判断”54例例3.3.2727 从键盘输入从键盘输入i i的值,求的值,求i100i100的累加和的累加和 p59p59p59p59#includeincludeincludeinclude void main()void main()void main()void main()int int int int sum,sum,sum,sum,i;i;i;i;sum=sum=sum=sum=0;0;0;0;coutcoutcoutcouticinicinicini;do do do do sum+sum+sum+sum+=i;=i;=i;=i;i+;i+;i+;i+;while(while(while(while(i=100i=100i=100i=100););););coutcoutcoutcoutsum;sum;sum;sum;#includeincludeincludeinclude void main()void main()void main()void main()int int int int sum,sum,sum,sum,i;i;i;i;sum=sum=sum=sum=0;0;0;0;cout cout cout couticinicinicini;dodododo sum+sum+sum+sum+=i;=i;=i;=i;while(while(while(while(+i i i i=100=100=100=100););););coutcoutcoutcoutsum;sum;sum;sum;55 while 语句与语句与do-while语句语句 P59#includeincludeincludeinclude void main()void main()void main()void main()int int int int sum,sum,sum,sum,i;i;i;i;sum=sum=sum=sum=0;0;0;0;cincincincini i i i;whilewhile(i=100i=100)sum+sum+=i;=i;i+i+;coutcoutcoutcoutsum;sum;sum;sum;#includeincludeincludeinclude void main()void main()void main()void main()int int int int sum,sum,sum,sum,i;i;i;i;sum=sum=sum=sum=0;0;0;0;cincincincini i i i;do do sum+sum+=i;=i;i+;i+;while while(i=100i=100);coutcoutcoutcoutsum;sum;sum;sum;输入输入:101输出输出:0输出输出:101输入输入:101563.5.3 for语句语句格式如下:for(控制变量设定初值;循环进行条件;迭代部分)循环体:初初初初始始始始化化化化、终终终终止止止止条条条条件件件件以以以以及及及及迭迭迭迭代代代代部部部部分分分分都都都都可可可可以以以以为为为为空空空空语语语语句句句句(但但但但分分分分号号号号不不不不能省能省能省能省)。:在在在在初初初初始始始始化化化化部部部部分分分分和和和和迭迭迭迭代代代代部部部部分分分分可可可可以以以以使使使使用用用用逗逗逗逗号号号号语语语语句句句句,来来来来进进进进行行行行多多多多个个个个操操操操作。作。作。作。例例例例:for(for(for(for(i=0,j=10i=0,j=10i=0,j=10i=0,j=10;ij;ij;ij;ij;i+,j-i+,j-i+,j-i+,j-)表达式表达式表达式表达式循环体循环体循环体循环体控制变量设定初值控制变量设定初值控制变量设定初值控制变量设定初值迭代部分迭代部分迭代部分迭代部分真真真真假假假假57例例3.28 1+2+3+1003.28 1+2+3+100和和 p60p60#include void main()int sum=0;for(int i=1;i=100;i+)sum+=i;coutsumendl;for(int i=1,sum=0;i=100;i+)sum+=i;for(int i=1,sum=0;i=100;sum+=i+);for(int i=0,sum=0;i100)break;/省略终止条件 for(int i=1;i=100;)sum+=i+;/省略迭代部分 int i=1;for(;I100)break;/全部省略59例例 1+1+3+3+9999和和#include void main()int sum=0;for(int i=1;i100;i+=2)sum+=i;coutsumendl;for(for(int int i=1i=1;i100i100;i+i+)if(i%2)if(i%2)sum+=isum+=i;for(for(intint i=1i=1;i=50i=1;i-=2)sum+=i;60例:求例:求例:求例:求1+2+3+1+2+3+1+2+3+1+2+3+i i i i和超过和超过和超过和超过1000100010001000的第一个的第一个的第一个的第一个i i i i值及其和值及其和值及其和值及其和#includeinclude void main()void main()int int sum,isum,i;sum=sum=0;0;i=1;i=1;while(while(sumsum=1000=1000 )sum+sum+=i;=i;i+;i+;coutcouti-1ti-1tsum;sum;#include include void main()void main()intint sum=sum=0,i0,i;for(for(intint i=1i=1;s;s=1000=1000;i+i+)sum+sum+=i=i;coutcouti=i=i-1i-1 tsumtsum=sumsum endlendl;613.5.4 循环嵌套循环嵌套P62 与条件语句的嵌套类似,循环也可以嵌套。三种循环语句可以自身嵌套,也可以相互嵌套。嵌套将循环分为内外两层,外层循环每循环一次,内循环要执行一圈。循环嵌套也称为多重循环。62例例3-31 求求1!+2!+3!+20!double sum=0double sum=0;for(for(int n=1;n=20;n+int n=1;n=20;n+)n!n!s=s+s=s+n!n!;coutsum=sumendlcoutsum=sumendl;n!=1*2*.*n1.i=1,mul=12.mul=mul*i4.i=n,为真时,执行步为真时,执行步骤骤2、3,否则,结束。否则,结束。double mul=1;for(int i=1;i=n;i+)mul*=i;算法设计算法设计1.n=1,sum=01.n=1,sum=02.2.计算计算n n!3.sum+=n!3.sum+=n!4.n=n+14.n=n+15.5.判断判断n n是否小于是否小于2020,如果,如果是,执行步骤是,执行步骤2 2、3 3、4 4;否则输出否则输出sumsum,结束。,结束。3.i+63#include#include void main()void main()doubledouble sum=0;sum=0;int n;int n;for(n=1;n=20;n+)for(n=1;n=20;n+)doubledouble mul=1;/mul=1;/求求n n!for(int i=1;i=n;i+)for(int i=1;i=n;i+)mul*=i;mul*=i;sum+=sum+=mulmul;/;/将各项累加将各项累加 cout1!+2!+3!+20!=sumendl;cout1!+2!+3!+20!=sumendl;k!64例例3-32 输出九九乘法表输出九九乘法表 p63for(int i=1;i=9;i+)for(int i=1;i=9;i+)输出乘法表的第输出乘法表的第i i行行 coutn;coutn;算法设计算法设计1.i=11.i=12.2.输出乘法表的第输出乘法表的第i i行,行,并换行并换行3.i+3.i+4.4.判断判断i i是否小于是否小于9 9,如果,如果是,执行步骤是,执行步骤2 2、3 3;否;否则结束。则结束。651*1=1 1*1=1 1*2=2 2*2=41*2=2 2*2=41*3=3 2*3=6 3*3=91*3=3 2*3=6 3*3=91*4=4 2*4=8 3*4=12 4*4=161*4=4 2*4=8 3*4=12 4*4=161*9=9 2*9=18 3*9=27 4*9=36.1*9=9 2*9=18 3*9=27 4*9=36.1.j=1,s1.j=1,s2.s=i*j2.s=i*j3.3.输出输出i i行第行第j j列的值列的值4.j+4.j+5.5.判断判断j j是否小于是否小于i i,如果,如果是,执行步骤是,执行步骤2 2、3 3、4 4;否则结束。;否则结束。输出乘法表的第输出乘法表的第i i行行for(int j=1,s;for(int j=1,s;j=ij=i;j+);j+)s=i*j;s=i*j;coutj*i=st;coutj*i=st;66例例3-32 输出九九乘法表输出九九乘法表 p63#includevoid main()for(int i=1;i=9;i+)for(int j=1,s=0;j=i;j+)s=i*j;coutj*i=st;cout=20002000止止止止#includeinclude void main()void main()intint i=1i=1,s=0s=0;whilewhile(i=100i=s=20002000)breakbreak;i+i+;coutcout s=s=sstt i i=iendl;iendl;正常出口正常出口正常出口正常出口非正常出口非正常出口非正常出口非正常出口条件型循环条件型循环条件型循环条件型循环69实验教程实验教程P56:例例4.8 4.8 求求100200100200之间的所有素数之间的所有素数voidvoid main()main()for for (int iint i=100;i=200;i+=100;i=200;i+)如果如果如果如果i i是素数是素数,输出输出输出输出 i i 算法设计算法设计1.i=1001.i=1002.2.判断判断i i是否是素数,如是否是素数,如果是,输出。果是,输出。3.i+3.i+4.4.判断判断i i是否小于是否小于200200,如,如果是,执行步骤果是,执行步骤2 2、3 3;否则结束。否则结束。70判断整数判断整数i是否为是否为素数素数int n=(int)sqrt(i);int n=(int)sqrt(i);for(int j=2;j=n;j+)for(int j=2;j=n;j+)if(i%j=0)if(i%j=0)break;break;if(j=n+1)if(j=n+1)coutit;coutit;算法设计算法设计1.j=2,n=(int)sqrt(i)1.j=2,n=(int)sqrt(i)2.2.判断判断i%ji%j是否等于是否等于0 0,如,如果是果是,执行步骤执行步骤5 5;否则,;否则,执行步骤执行步骤3 3、4 4。3.j+3.j+4.4.判断判断j j是否小于是否小于n n,如果,如果是,执行步骤是,执行步骤2 2、3 3;否;否则执行步骤则执行步骤5 5。5.5.判断判断j j是否等于是否等于n+1,n+1,如果如果是,输出是,输出i i;71#include#include#include#include voidvoid main()main()for for(int iint i=100;i=200;i+=100;i=200;i+)int n=(int)int n=(int)sqrtsqrt(i);(i);for(int j=2;j=n;j+)for(int j=2;j=n;j+)if(i%j=0)if(i%j=0)break;break;if(j=n+1)if(j=n+1)coutit;coutit;#include#include#include#include voidvoid main()main()int i,j

    注意事项

    本文(C++程序设计_第3章 结构化程序设计.ppt)为本站会员(asd****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开