《一章节程序基本结构》由会员分享,可在线阅读,更多相关《一章节程序基本结构(28页珍藏版)》请在金锄头文库上搜索。
1、襄匀撂被惜置沧傈劈弹顿据腕迄读松腑找垒豪阎星砷京吱棉藤贡竟苏元此一章节程序基本结构一章节程序基本结构1第一章第一章 程序的基本结构程序的基本结构絮琳菏犊萤酵烂驳躯弱纤陨唁庸喊尾诣钻砾碧谊狄疙萌枕痘皋嗣郑驮契蹭一章节程序基本结构一章节程序基本结构2教材及授课结构l本章目标本章目标l基本内容基本内容l扩展阅读扩展阅读l上机指导上机指导l应用举例应用举例l习题习题疆寝糠熊窄薄寂涪杆绞姿值弛遗肝扎倘辅葛贬坝鲸揉弊袖将栖恬纺崎咳浪一章节程序基本结构一章节程序基本结构3教学目标l了解程序的基本知识和上机环境,学习了解程序的基本知识和上机环境,学习l1)了了解解主主函函数数和和一一般般函函数数的的概概念念,
2、了了解解结结构构化化程程序序设设计计与与面面向向对对象程序设计的程序框架特征和程序设计技术的应用及发展趋势;象程序设计的程序框架特征和程序设计技术的应用及发展趋势;l2)掌握源程序的书写格式,包括标识符和关键掌握源程序的书写格式,包括标识符和关键(保留保留)字的使用;字的使用;l3)了了解解编编译译预预处处理理、编编译译和和链链接接过过程程和和从从编编辑辑源源程程序序到到程程序序运运行行的操作方法;的操作方法;l4)掌握数据的输入输出(包括输入输出格式)方法。掌握数据的输入输出(包括输入输出格式)方法。沼决迈援琴仔队鲁搽战黑臭拴丹猾啤撵窄拦葵桐搅妨驱搔嘻田美挛该悟淹一章节程序基本结构一章节程序
3、基本结构4基本内容 l1.1几个简单的程序几个简单的程序l1.2程序的基本结构和要素程序的基本结构和要素钠钱贾淌荚嗅瞧着寐邑刺戍痊酗汉袭稽苔惟赊长萨愚醒坦潭咯饯蛙拇腕钉一章节程序基本结构一章节程序基本结构5程序设计语言 l通用应用软件通用应用软件l文字处理: Wordl表格处理: EXCEL l科学计算 MATLAB . l当前流行的程序设计语言工具当前流行的程序设计语言工具lMicrosoft: Visual C+、Visual BasiclBorland: Delphi、C+BuilderlSun: JavalC与与C+空凳怎涧棒聘筹挤筷缘漱墒武缉控刊竖逆您寐奎蓝铝果胳明娩脚葬顺歉松一章节
4、程序基本结构一章节程序基本结构61.1 几个简单的程序/例例1-1:在屏幕上显示:在屏幕上显示:Thisismyfirstprogram!#include/包含基本输入输出库文件包含基本输入输出库文件usingnamespacestd;/使用名字空间使用名字空间stdintmain()/主函数名主函数名coutThisismyfirstprogram!; /屏幕显示语句屏幕显示语句return0;/表示程序顺利结束表示程序顺利结束C+的程序由函数组成。该程序只由一个主函数的程序由函数组成。该程序只由一个主函数main()构成()构成一对花括号一对花括号“”是主函数的定界符是主函数的定界符程序语
5、句全部采用小写字母。区分大小写,书写采用自由格式程序语句全部采用小写字母。区分大小写,书写采用自由格式语句用分号结束;一行可以写多个语句语句用分号结束;一行可以写多个语句注释行注释行:以两个以两个“/”起头的任何文字起头的任何文字疽跌审鹏天钾消胞耐砖谣挖娱钒帚犁侣鲍壬篓刨挣晦颗哄采储强嫌彬膛政一章节程序基本结构一章节程序基本结构7例1-2:加法计算器程序/例例1-2:加法计算器程序:加法计算器程序#include/包含基本输入输出库文件包含基本输入输出库文件usingnamespacestd;/使用名字空间使用名字空间stdintmain()/主函数名主函数名intx,y,sum;/定义三个变
6、量定义三个变量coutxy;/输入两个变量的值输入两个变量的值sum=x+y;/加法计算加法计算coutx+y=sumendl;/输出运算结果输出运算结果return0;/表示程序顺利结束表示程序顺利结束誉拂蕉缓稳补瑚戴绽窖漳哉汾呛候佃诵必锣獭甲愁插起锑诬远涡耻啼省磅一章节程序基本结构一章节程序基本结构8例1-3:根据三角形的三个边长求三角形面积/例例1-3:求三角形面积:求三角形面积#include#include/包含标准数学函数库包含标准数学函数库usingnamespacestd;/定义定义area()函数,其函数的返回值和形式参数函数,其函数的返回值和形式参数a,b,c都是双精度类型
7、都是双精度类型doublearea(doublea,doubleb,doublec)doubles,t;/定义本函数中用到的变量定义本函数中用到的变量s和和t为可描述实数的双精度类型变量为可描述实数的双精度类型变量s=(a+b+c)/2;/计算中间变量计算中间变量st=sqrt(s*(s-a)*(s-b)*(s-c);/调用标准数学开平方函数调用标准数学开平方函数returnt;/将运算结果将运算结果t的值返回,通过函数名的值返回,通过函数名area带回函数调用处带回函数调用处/主函数主函数intmain()doublex,y,z;/变量说明,定义三个可对实数进行操作的双精度类型变量变量说明,
8、定义三个可对实数进行操作的双精度类型变量/调用调用area函数(参数使用几个确定的值)并将计算得到的结果直接输出函数(参数使用几个确定的值)并将计算得到的结果直接输出cout边长分别为边长分别为3、4、5的三角形面积为:的三角形面积为:area(3,4,5)endl;coutxyz;/调用调用area函数(参数为用户任意输入的值)并将计算得到的结果直接输出函数(参数为用户任意输入的值)并将计算得到的结果直接输出cout三角形面积为:三角形面积为:area(x,y,z)endl;return0;唤晴右鹿壤嘎花猛插瀑聪阉鸵妙筑窘票喷奠殖感白扒涪蹈束虑响颅奥臂稼一章节程序基本结构一章节程序基本结构9
9、1.2 程序的基本结构和要素l1.2.1程序的基本结构程序的基本结构l1.2.2输入与输出输入与输出l1.2.3注释注释l1.2.4标识符和关键字标识符和关键字败咋樊土供曳炮巫硷澎淬烬贮贩趋临宰律萤帆颈馏落兵椭迪蹬墙畸吹盅慰一章节程序基本结构一章节程序基本结构101.2.1 程序的基本结构全局变量说明全局变量说明#includeusingnamespacestd;子函数子函数1(形式参数)(形式参数)子函数局部变量说明子函数局部变量说明语句序列语句序列。intmain()局部变量说明局部变量说明语句序列语句序列return0;lC+程序由函数组成;至少包括主函程序由函数组成;至少包括主函数数m
10、ain()和(或)若干个子函数。()和(或)若干个子函数。唯一的主函数唯一的主函数main()是整个程序的入是整个程序的入口点。口点。l一个函数又由变量及参数说明语句和一个函数又由变量及参数说明语句和语句序列构成。语句序列构成。l每个语句必须用分号结尾。一个语句每个语句必须用分号结尾。一个语句行可以写多个语句,一个语句可以写行可以写多个语句,一个语句可以写在多行上。在多行上。lC+语言允许在程序中插入注释行。语言允许在程序中插入注释行。lC+语言提供了包括语言提供了包括I/O功能在内的大功能在内的大量标准库函数,但调用这些函数时,量标准库函数,但调用这些函数时,必须在程序头部包含头文件。必须在
11、程序头部包含头文件。函函数数体体珊近道舜缮龙煌哦展茫销卵隘儿作娥阔共咖掀喻雁折表馏烩板赔许铸风惯一章节程序基本结构一章节程序基本结构111.2.2 输入与输出lcin表示输入流对象,其基本用法为:表示输入流对象,其基本用法为:cinV1V2Vn;l在输入时,应注意用空格或tab键将所输入的数据分隔开。l必须注意所输入数据的类型应与接受该数据之变量的类型相匹配,否则输入操作将会失败或者得到的将是一个错误的数据。lcout表示输出流对象,其基本用法是:表示输出流对象,其基本用法是:cout E1 E2 Em;l在输出时,要注意恰当使用字符串和换行符endl,提高输出信息的可读性。 cout x +
12、 y = sum xy;coutThisismyfirstprogram!;遵犀歧礁温控鹿览纪蒜饺寻垮虎汹敦盖谦嫂屡匀丢贝酱锑闭召恢糙惋戮廉一章节程序基本结构一章节程序基本结构131.2.2 注释lC+的注释有两种形式:的注释有两种形式:l/ 用于单行注释l/* */ 用于多行注释l注释可以出现在空白符允许出现的任何地方,注释可以出现在空白符允许出现的任何地方,但习惯上将注释和其所描述的代码相邻,一般但习惯上将注释和其所描述的代码相邻,一般可以放在代码的上方或右方,不放在下方。可以放在代码的上方或右方,不放在下方。l恰当使用注释可以使程序容易阅读。恰当使用注释可以使程序容易阅读。冯咖示硕敖霄烘
13、当卡棘勤寿矗雹拒遮祝苑泄牌阻袍涯伎谜聊熬曝惦蛰亨遗一章节程序基本结构一章节程序基本结构141.2.2 标识符和关键字l是程序中变量、类型、函数和标号的名称。是程序中变量、类型、函数和标号的名称。l由字母、数字和下划线由字母、数字和下划线“_”组成,第一个字符不能是数字。组成,第一个字符不能是数字。l“大小写敏感大小写敏感”。l各种各种+编译器对在标识符中最多可以使用多少个字符的规定各编译器对在标识符中最多可以使用多少个字符的规定各不相同,不相同,ANSI标准规定编译器应识别标识符的前标准规定编译器应识别标识符的前6个字符。个字符。l在标识符中恰当运用下划线,大、小写字母混用以及使用较长的在标识
14、符中恰当运用下划线,大、小写字母混用以及使用较长的名字都有助于提高程序的可读性。名字都有助于提高程序的可读性。景斩氧经坯甸菠捂体澎氛冗驴储减到债恨漏米方雪峨莫按杂掸奉坪窝狭休一章节程序基本结构一章节程序基本结构15标识符、关键词和标点符号标识符、关键词和标点符号l+关键词关键词asm,auto,bad_cast,bad_typed,bool,break,case,catch,char,class,const,const_cast,continue,default,delete,do,double,dynamic_cast,else,enum,except,extern,explicit,fal
15、se,finally,float,for,friend,goto,if,inline,int,long,mutable,namespace,new,operator,private,protected,public,register,reinterpret_cast,return,short,signed,sizeof,static,static_cast,struct,switch,template,this,throw,try,type_info,typedef,typeid,union,unsigned,using,virtual,void,volatile,whilel+还有还有12个
16、标识符作为编译预处理个标识符作为编译预处理define,elif,else,endif,error,if,ifdef,ifndef,include,line,progma,undeflC+的标点和特殊字符有的标点和特殊字符有!%&*()+=|;:?,./#橡痒汐慧国若鸵绵孝撰仲恶稚床近巷帽伎重荐越槐陆长唯涕俱时它至矮缓一章节程序基本结构一章节程序基本结构16扩展阅读l1.3C/C+背景背景l1.3.1 程序设计语言的发展l1.3.2 从C到C+梧抠索膳痰莽益颤冀怠圃未舌浆粕缘又兜捍殃瓤帽枪俘窃铀童玫员帧且屑一章节程序基本结构一章节程序基本结构17上机指导l1.4VisualC+集成开发环境集成
17、开发环境lVisual C+ 6.0lVisual C+ 2008(Visual C+ 9.0)l其他调试环境其他调试环境蓟芳秋酞铝慷藏扰昧牛潘落躇哗猴俯拇揖掺犁央啄畏独浦姆诅务型份炮眼一章节程序基本结构一章节程序基本结构18应用举例l例例1-4计算下式的结果,其中计算下式的结果,其中x=-3.5,y=6.7#include#include/包含标准数学函数库包含标准数学函数库usingnamespacestd;intmain()doublex,y;/将角度单位由度转换为库函数所要求的弧度值将角度单位由度转换为库函数所要求的弧度值x=-3.5/180*3.14159;y=6.7/180*3.1
18、4159;/计算三角函数并输出计算三角函数并输出coutsin(fabs(x)+fabs(y)/sqrt(cos(fabs(x+y)endl;return0;到宛探稼贞峰篓逐嘻裴禁翠痢馁髓阜置核木裙乎怀趣垮牧易舶槐贰冷香员一章节程序基本结构一章节程序基本结构19应用举例l例例1-5计算保险经纪人月薪计算保险经纪人月薪假定每一名保险经纪人的月工资都由三部分组成:假定每一名保险经纪人的月工资都由三部分组成:底薪奖金业务提成。底薪奖金业务提成。l奖金的颁发方法为:奖金为经纪人在公司的工作年数*10,即每年10元;l业务提成的颁发方法为:当月销售额的3提成。l编程要求:当用户按照屏幕提示分别输入经纪人
19、的底薪、编程要求:当用户按照屏幕提示分别输入经纪人的底薪、工龄以及当月销售额后,程序计算并输出经纪人的月薪。工龄以及当月销售额后,程序计算并输出经纪人的月薪。迄溪行剿净辽术辞汝沉虞峨波盒贼掠撰蛇够浴叭鸽恬募浴储日击晓辨诡盘一章节程序基本结构一章节程序基本结构20算算 法法 分分 析析1.输入底薪输入底薪baseSalary2.输入经纪人在公司的工作年数输入经纪人在公司的工作年数serviceYears3.计算奖金计算奖金bonus=10*serviceYears4.输入经纪人当月销售额输入经纪人当月销售额totalSale5.计算提成计算提成additionalBonus=0.03*total
20、Sale6.计算经纪人的月薪计算经纪人的月薪Salary=baseSalary+bonus+additionalBonus7.输出结果输出结果供货翻夏垒了呆惹坪葡峨卡寺语汗甲傣已慨酷扎索泛图伟釜吟簧舜革果疮一章节程序基本结构一章节程序基本结构21#includeusingnamespacestd;intmain()/声明部分,定义程序中将用到的变量声明部分,定义程序中将用到的变量doublebaseSalary,bonus,totalSale,additionalBonus,Salary;intserviceYears;coutbaseSalary;coutserviceYears;/计算奖金
21、计算奖金bonusbonus=10*serviceYears;couttotalSale;/计算提成计算提成additionalBonusadditionalBonus=0.03*totalSale;/计算经纪人的月薪计算经纪人的月薪SalarySalary=baseSalary+bonus+additionalBonus;cout该经纪人的月薪为:该经纪人的月薪为:Salaryendl;return0;今降暴叭芋浅赐由荣唱泊痛热胁罩蔓岩橇昭哼峨过姜级缄港印喘惮融猴镁一章节程序基本结构一章节程序基本结构22案例:案例:重量单位换算l编写一个重量单位换算程序,输入用公斤表编写一个重量单位换算程序
22、,输入用公斤表示的重量,然后程序能够转换并输出用镑和示的重量,然后程序能够转换并输出用镑和盎司表示的等效重量。盎司表示的等效重量。请输入重量请输入重量(公斤公斤):23转换为用磅表示的重量转换为用磅表示的重量(磅磅):50.7055转换为用盎司表示的重量转换为用盎司表示的重量(盎司盎司):811.287教学设问教学设问如何设计变量及选择相应的数据类型?如何设计变量及选择相应的数据类型?公斤、磅和盎司的转换公式是什么?公斤、磅和盎司的转换公式是什么?* *更多案例见本书配套教材更多案例见本书配套教材C/C+C/C+语言程序设计案例教程语言程序设计案例教程 罗建军等编著,清华大学出版社罗建军等编著
23、,清华大学出版社畏淤当多赣玩旱想塘渣油假秋雄嫁迁债调咀员景倦疲支酝均墙驶栈敖驹街一章节程序基本结构一章节程序基本结构23问题分析l为保证程序能够处理带小数点的数值,变量的数据类为保证程序能够处理带小数点的数值,变量的数据类型需选用可以对实数进行操作的双精度类型型需选用可以对实数进行操作的双精度类型double。故变量列表为:故变量列表为:ldoublekilogram,pound,ounce;/公斤、镑、盎司公斤、镑、盎司l公斤、磅和盎司的转换公式:公斤、磅和盎司的转换公式:l1磅磅=16盎司盎司=0.4536千克(公斤)千克(公斤)l算法如下:算法如下:l1.得到用公斤表示的重量得到用公斤表
24、示的重量l2.将重量转化为磅:将重量转化为磅:pound=kilogram/0.4536;l3.将磅转化为盎司:将磅转化为盎司:ounce=pound*16;l4.输出转换后的重量输出转换后的重量洲汐瞅镰铃茹囱闭义甜卉幂灭拽期许须仰柜抓钡鸟塌度禾凛严豢动筛幽琼一章节程序基本结构一章节程序基本结构24/重量单位换算重量单位换算#includeusingnamespacestd;intmain()doublekilogram,pound,ounce;/公斤、镑、盎司公斤、镑、盎司coutkilogram;pound=kilogram/0.4536;ounce=pound*16;cout转换为用磅表
25、示的重量转换为用磅表示的重量(磅磅):poundendl;cout转换为用盎司表示的重量转换为用盎司表示的重量(盎司盎司):ounceendl;return0;造泳爽健无楔窜钟收歇动志难围瑰忿赦阵柴铜凳映顺敢俯蔷仆书炎邪竟希一章节程序基本结构一章节程序基本结构25进一步思考l如果要想从磅和盎司转换成公斤,应该怎么如果要想从磅和盎司转换成公斤,应该怎么修改程序?修改程序?l如果要想将本案例程序的输出改成如果要想将本案例程序的输出改成*磅磅*盎盎司(磅和盎司都省略小数点后的位数),应司(磅和盎司都省略小数点后的位数),应该怎么修改程序?该怎么修改程序?堕涝副痰拴膏箭枯涧栏海藐默升赛屿埃扳釉匈鞠澈摹
26、裔强谤衰碍卉暴佩清一章节程序基本结构一章节程序基本结构26习题1.在计算机上调试运行本章的所有例题,熟悉实验环境和方法。在计算机上调试运行本章的所有例题,熟悉实验环境和方法。2.修改例修改例1-1程序,使其能够在计算机屏幕上显示:程序,使其能够在计算机屏幕上显示:* Hello World! *3.仿照例仿照例1-2的加法计算器程序,编写一个通用计算器程序,当用户输入的加法计算器程序,编写一个通用计算器程序,当用户输入两个数以后,可以计算并输出这两个数的和、差、积、商。两个数以后,可以计算并输出这两个数的和、差、积、商。4.仿照例仿照例1-3,编写一个计算直角三角形斜边边长的程序,要求当输入直
27、,编写一个计算直角三角形斜边边长的程序,要求当输入直角三角形的两个直角边边长后,能够计算出第三边(即斜边)的边长。角三角形的两个直角边边长后,能够计算出第三边(即斜边)的边长。5.仿照例仿照例1-4,编写程序,计算,编写程序,计算在在x=3时的值。时的值。6.仿照例仿照例1-5,编写一个程序,当输入某学生,编写一个程序,当输入某学生“英语英语”课程的平时成绩、期课程的平时成绩、期中考试和期末考试成绩及各项占总成绩的比例后,可以计算出该生中考试和期末考试成绩及各项占总成绩的比例后,可以计算出该生“英语英语”课程的最终成绩。课程的最终成绩。菲驶帚坞喉娱值恍胡澜助贷磅拦匿曹恿唱阶腆频梭抖乏居沿郊畏汇骇幌挥一章节程序基本结构一章节程序基本结构27学好程序设计语言的唯一途径是学好程序设计语言的唯一途径是 你的编程能力与你在计算机上投入的时间成你的编程能力与你在计算机上投入的时间成 结结 束束 语语磊咀釉锚角展足倚池爷撅筹了胳暂烤荐其午介猾煌拆赌邯尼挚重叛渡结封一章节程序基本结构一章节程序基本结构28