[教育学]C++教学基础第二章课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《[教育学]C++教学基础第二章课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教育学 C+ 教学 基础 第二 课件
- 资源描述:
-
1、 本章内容本章内容 程序的三种基本结构程序的三种基本结构 C+C+语句语句 选择结构选择结构 循环结构循环结构 跳转语句跳转语句 计算计算顺序结构顺序结构结束结束开始开始输入输入输出输出y=xx+1x10 x10分段函数分段函数语句体语句体1条件成条件成立吗?立吗?语句体语句体2成立成立不成立不成立选择结构(分支结构)选择结构(分支结构)条件条件循环体循环体成立成立不不成成立立(退出循环)(退出循环)条件条件循环体循环体成成立立不成立不成立 循环结构循环结构思考:思考:对对110000内的所有偶数求和。内的所有偶数求和。1 1)判断一个数判断一个数是否是偶数,奇是否是偶数,奇数绕过不计算数绕过
2、不计算 (?(?结构结构)2 2)求)求1000010000内的偶数内的偶数 (?(?结构结构)程序基本结构程序基本结构顺序结构:顺序执行顺序结构:顺序执行分支结构:按条件选择性执行分支结构:按条件选择性执行循环结构:按条件循环循环结构:按条件循环结构化程序设计一般都是由这三种结构化程序设计一般都是由这三种结构进行简单衔接、复合、嵌套等结构进行简单衔接、复合、嵌套等方法组成的。方法组成的。结构化程序只有一个入口和出口结构化程序只有一个入口和出口C+C+语句语句说明语句说明语句 (如:函数原型声明)(如:函数原型声明)表达式语句表达式语句 (m+=5;)复合语句复合语句 (a=b+c;f=a+d
3、;)控制语句控制语句 (选择,循环,转移)选择,循环,转移)函数调用语句函数调用语句 (strcpy(s1,s2)流对象调用语句流对象调用语句 (coutaendl;)选择结构选择结构 if 语句语句形式形式1:if(表达式表达式)语句体语句体形式形式2:if(表达式表达式)语句体语句体1else语句体语句体2形式形式3:if (表达式表达式1)语句体语句体1else if(表达式表达式2)语句体语句体2else if(表达式表达式3)语句体语句体3 else语句体语句体n+1 switch语句语句#include void main()int a;couta;if(a0)a*=a;cout”
4、a=”aendl;#include void main()int a;couta;if(a0)a*=a;/Tab键键 或空格缩进或空格缩进 cout”a=”aendl;例例1 1:一个数,若为正数则原样输出;若为负一个数,若为正数则原样输出;若为负数求平方后输出。数求平方后输出。(演示)演示)请输入一个整数:请输入一个整数:12 a=12 第第1次执行程序:次执行程序:第第2次执行程序:次执行程序:请输入一个整数:请输入一个整数:-5 a=25 if(表达式表达式)语句体语句体 if 语句形式语句形式1:if 语句语句#include/求方程实根求方程实根#include void main(
5、)double a,b,c,x1,x2,d,t;coutabc;d=b*b-4*a*c;t=sqrt(d);x1=(-b+t)/(2*a);x2=(-b-t)/(2*a);cout“x1=x1“,x2=”x2endl;#include#include void main()double a,b,c,x1,x2,d,t;coutabc;d=b*b-4*a*c;if(d=0)t=sqrt(d);x1=(-b+t)/(2*a);x2=(-b-t)/(2*a);cout“x1=x1;cout“,x2=”x2endl;if(表达式表达式)语句体语句体表达式表达式语句体语句体非非00注意:注意:所谓所谓“
6、语句体语句体”应该是一个应该是一个复合语句复合语句。所谓所谓“复合语句复合语句”是指若干语句用大括号是指若干语句用大括号括括在一起,从形式上视为一句。在一起,从形式上视为一句。当复合语句中只有一句时,可以省略大括号。当复合语句中只有一句时,可以省略大括号。if(表达式)(表达式)语句体语句体1else 语句体语句体2 语句体语句体1表达式表达式语句体语句体2非非00 if 语句语句形式形式2:if-else语句语句语句体语句体1、语句体、语句体2同样应该是同样应该是复合语句复合语句。#include#include void main()double a,b,c,x1,x2,d,t;couta
7、bc;d=b*b-4*a*c;if(d0)cout“没有实数根没有实数根;else t=sqrt(d);x1=(-b+t)/(2*a);x2=(-b-t)/(2*a);cout“x1=x1“,x2=”x2endl;#include#include void main()double a,b,c,x1,x2,d,t;coutabc;d=b*b-4*a*c;if(d=0)t=sqrt(d);x1=(-b+t)/(2*a);x2=(-b-t)/(2*a);cout“x1=x1“,x2=”x2endl;else cout“没有实数根没有实数根;if 语句可以语句可以“嵌套嵌套”#include#inc
8、lude void main()double a,b,c,x1,x2,d,t;coutabc;d=b*b-4*a*c;if(d0)cout“没有实数根没有实数根;else if(d=0)x1=-b/(2*a);cout“唯一实根唯一实根x=”x1endl;else t=sqrt(d);x1=(-b+t)/(2*a);x2=(-b-t)/(2*a);cout“实根实根x1=”x1“,实根实根x2=”x2=0)if(b=0)couta/bendl;else couta*b=0)if(b=0)couta/bendl;else couta*b=0)if(b=0)couta/bendl;else cou
9、ta*b=0)if(b=0)couta/bendl;else couta*bendl;输出输出-25 if(表达式表达式1)语句体语句体1 else if(表达式表达式2)语句体语句体2 else if(表达式表达式3)语句体语句体3 else if(表达式表达式n)语句体语句体n else 语句体语句体n+1 if 语句语句形式形式3:if-else if 语句语句#include#include void main()double a,b,c,x1,x2,d,t;coutabc;d=b*b-4*a*c;if(d0)cout“没有实数根没有实数根;else if(d=0)x1=-b/(2*a
10、);cout“x1=”x1endl;else t=sqrt(d);x1=(-b+t)/(2*a);x2=(-b-t)/(2*a);cout“x1=”x1;cout“,x2=”x2endl;#include#include void main()double a,b,c,x1,x2,d,t;coutabc;d=b*b-4*a*c;if(d=0)x1=-b/(2*a);cout“x1=”x1 0)t=sqrt(d);x1=(-b+t)/(2*a);x2=(-b-t)/(2*a);cout“x1=”x1;cout“,x2=”x2endl;最后一项最后一项else可以没有。可以没有。例例3 3:输入一
11、个成绩,给出该输入一个成绩,给出该成绩成绩 的等级:的等级:成绩成绩90 输出输出优优;80成绩成绩90输出输出良良;70成绩成绩60输出输出中中;60成绩成绩70输出输出及格及格;成绩成绩60输出输出不及格不及格。#include void main()float score;coutscore;if(score100)cout=90)cout=80)cout=70)cout=60)cout及格及格n;else cout不及格不及格n;if 选择的是选择的是执行执行还是还是“绕开绕开”的问题,语句体可能的问题,语句体可能不会不会被执行;被执行;if-else 选择的执行语句体选择的执行语句体
12、1还是语句体还是语句体2的问题,两者之中必有一个会被执行;的问题,两者之中必有一个会被执行;if-else if 结结构则是在构则是在n个分支中作出选择。个分支中作出选择。if-else if 结构中提供了一个结构中提供了一个else分支分支,为所有条件都,为所有条件都不满足时的不满足时的“归宿归宿”。也可以没有。也可以没有else分支,当所分支,当所有条件都不满足时,什么都不执行,直接绕过。有条件都不满足时,什么都不执行,直接绕过。else if 不能单独使用,只能是不能单独使用,只能是if-else if 结构中的一个结构中的一个部分。当部分。当if-else if 不需要不需要else
13、if 时,即褪化为时,即褪化为if-else结构;当连结构;当连else也不需要的时候,就褪化为也不需要的时候,就褪化为if 语句。语句。1、问题、问题 if语句中的复合语句,一定用括起来,否语句中的复合语句,一定用括起来,否 则只与最近的结合。则只与最近的结合。#include void main()int x;cinx;if(x%2=0)x+;coutx;#include void main()int x;cinx;if(x%2=0)x+;coutx0)if(ab?a:b)if(m10&m20)if(a+,b+,a+b)#include void main()int x;cinx;if(x
14、)cout“嘻嘻嘻嘻嘻嘻”;else cout“哈哈哈哈哈哈”;/假如运行时输入假如运行时输入10会怎样?会怎样?/输入输入0呢?呢?#include void main()int x;cinx;if(x=0)cout“嘻嘻嘻嘻嘻嘻”;else cout“哈哈哈哈哈哈”;/假如运行时输入假如运行时输入10会怎样?会怎样?/输入输入0呢?呢?#include void main()int x;cinx;if(x=7)cout“嘻嘻嘻嘻嘻嘻”;else cout=0)/判断区间判断区间if(0 x0&xch;if(ch=97&ch=0 x61&ch=a&ch=65&ch=A&ch=Z)NoNo计算
15、表达式值计算表达式值常量常量1常量常量2常量常量ndefault语句语句1语句语句2语句语句n语句语句n+1选选break选选break选选break选选break=YesYesYesYesNoNoNoNoNoNoYesYesYesYesYesYesswitch语句:多个分支语句:多个分支casecasecasecasecasecasedefalutdefalut switch语句的基本形式语句的基本形式switch(表达式表达式)case 常量值常量值1:语句体语句体1break;case 常量值常量值2:语句体语句体2break;case 常量值常量值n:语句体语句体nbreak;defa
16、ult:语句体语句体n+1 break;其中的其中的表达式表达式可以是任何整型、字符型可以是任何整型、字符型表达式。每个每个“常量值常量值i”必须是必须是常量常量,并且每个常量值都不能相同。并且每个常量值都不能相同。case和和default的次序可以任意,不影响的次序可以任意,不影响分支选择分支选择,但,但影响影响结果结果分析程序运行结果分析程序运行结果。#include void main()int x,a,b,c,d;a=b=c=d=0;cinx;switch(x)case 1:a+;break;case 2:b+;break;case 3:c+;break;default:d=1;co
17、utabcdendl;输入输入1 1结果为:结果为:10001000输入输入2 2结果为:结果为:01000100输入输入5 5结果为:结果为:00010001执行程序:执行程序:#include void main()int x,a,b,c,d;a=b=c=d=0;cinx;switch(x)default:d=1;break;case 2:b+;break;case 3:c+;break;case 1:a+;break;coutabcdendl;注意:注意:语句体不是复合语句;语句体不是复合语句;顺序无关;顺序无关;breakbreak语句的作用语句的作用#include void mai
18、n()int x,a,b,c,d;a=b=c=d=0;cinx;switch(x)case 1:a+;case 2:b+;case 3:c+;break;default:d=1;break;coutabcdendl;输入输入1 1结果为:结果为:1 1110110输入输入2 2结果为:结果为:01100110输入输入5 5结果为:结果为:00010001执行程序:执行程序:#include void main()int x,a,b,c,d;a=b=c=d=0;cinx;switch(x)case 1:case 2:cout“小于小于3”;break;case 3:cout“等于等于3”;注意:
19、注意:可以没有可以没有default,所有,所有case都不符合时,直接都不符合时,直接跳过跳过switch结构。结构。注意:注意:表达式和选择项必为整表达式和选择项必为整数;数;选择项可为整数常数或选择项可为整数常数或常数表达式,但值不能常数表达式,但值不能重复;重复;选择项不能为变量表达选择项不能为变量表达式;式;#include void main()int a,b,c,d;double x;a=b=c=d=0;cinx;switch(x)case 1:a+;break;case 2.5:b+;break;case 3:c+;break;default:d=1;coutabcdendl;
20、#include void main()int a,b,c,d;int x;a=b=c=d=0;cinx;switch(x)case 1+2:a+;break;case 3*5:b+;break;case 3:c+;break;default:d=1;coutabcdendl;#include void main()int x,a,b,c,d;a=b=c=d=0;cinx;switch(x)case x0:c+;break;coutabcdendl;/例例2.3,考虑用,考虑用switch语句改写语句改写#include void main()float score;coutscore;if(
21、score100)cout=90)cout=80)cout=70)cout=60)cout及格及格n;else cout不及格不及格n;#include void main()float score;coutscore;switch(int(score/10)case 10:case 9:cout优优n;break;case 8:cout良良n;break;case 7:cout中中n;break;case 6:cout及格及格n;break;default:cout不及格不及格n;2.4循环结构循环结构 程序中有时需要反复地执行某些操作,程序中有时需要反复地执行某些操作,这种结构的程序称为循
22、环结构。这种结构的程序称为循环结构。在屏幕上输出在屏幕上输出“天津大学天津大学”cout“天津大学天津大学n”在屏幕上输出在屏幕上输出“天津大学天津大学”100遍遍for(int i=0;i100;i+)cout“天津大学天津大学n”循环语句循环语句在编写循环结构的程序时,要考虑的问题:在编写循环结构的程序时,要考虑的问题:有一个控制循环的有一个控制循环的循环变量循环变量或或称计数器称计数器,它有初,它有初始值。它在循环执行过程中不断地被修改。始值。它在循环执行过程中不断地被修改。确定一个确定一个条件条件。当该条件成立(为真)时循环被。当该条件成立(为真)时循环被执行;否则循环结束。执行;否则
23、循环结束。C+提供了提供了3种实现循环的语句:种实现循环的语句:while语句语句dowhile语句语句for语句语句 while语句语句 while(表达式表达式)循环体循环体 while语句属于语句属于当型循环当型循环,即当条件成立时执行循环。,即当条件成立时执行循环。while语句是语句是先判断,再执行先判断,再执行,如果第一次判断时表,如果第一次判断时表 达式的值就不成立,则循环体一次也不执行。达式的值就不成立,则循环体一次也不执行。注意循环体用复合语句。注意循环体用复合语句。表达式表达式?语句语句非非00执行流程:执行流程:while循环应用的典型场合循环应用的典型场合#includ
24、evoid main()double x=1000;int i=0;double r=0.0225;while(x=100000)x*=1+r;i+;couti“年年endl;假设在银行存款假设在银行存款1000元,年息为元,年息为2.25,多少年后,多少年后,变为变为10万元?万元?结果:结果:207年年例例6:求自然数求自然数100的累加和。的累加和。#include void main()int i(0),sum(0);while(i101)sum+=i;i+;/循环体循环体 coutsum=sumendl;#include void main()int i(0),sum(0);whil
25、e(i+100)sum+=i;/循环体循环体 coutsumendl;i+:099sum:1100#include void main()int i(1),sum(0);while(i+100)sum+=i;/循环体循环体 coutsumendl;i+:199sum:2100#include void main()int i(0),sum(0);while(+i100)sum+=i;/循环体循环体 coutsumendl;+i:199sum:199 do-while语句语句 do 循环体循环体while(表达式表达式););do while语句属于语句属于直到型循环直到型循环,直至表达式的值为
展开阅读全文