资源描述:
《第1章 面向对象程序设计概论(改)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、面向对象程序设计江汉大学数学与计算机科学学院2011-2012C++语言程序设计关于本课程重要性:在计算机专业的课程体系中是最重要的专业基础课学时与学分:56学时,讲授32学时,另有24学时的上机实验学习内容:面向对象的程序设计方法和技巧(1-8章)课程目标:训练基本的程序设计方法和技巧;培养程序员的基本素质,学习的心得!作业与实验:平时抽查,最后全交考试方式:笔试,120分钟第1章面向对象程序设计概论1.1程序设计方法1.2面向对象程序设计的基本概念1.3面向对象程序设计语言1.4C++对面向对象程序设计方法的支持1.5C++程序的实现1.1程序设计方法1.1.1结构化程序设计方法
2、1.1.2面向对象的程序设计方法目前有两种重要的程序设计方法:1.1.1结构化程序设计方法结构化程序设计的概念由瑞士计算机科学家Niklaus提出来-----例如C语言。结构化程序设计方法--面向过程的程序设计1.强调程序结构的规范性,强调程序设计的自顶向下,逐步求精的演化过程。在这种方法中,待解问题和程序设计语言中的过程紧密相联。1.1.1结构化的程序设计方法2、结构化程序设计方法重点放在如何实现细节过程方面,每个模块就是一个过程,由函数来实现。形式:主模块+若干个子模块(如C:main()+子函数)。特点:自顶向下,逐步求精——功能分解。缺点:效率低,是手工作坊式的编程。结构
3、化程序设计举例:分数排序任务:输入三个数,从大到小的顺序的输出。如果大于等于85,在该数后面输出‘A’,小于85且大于等于70,则输出‘B’,小于70且大于等于60输出‘C’,如果小于60,则输出‘D’。结构化设计思路:scanf()输入分数;另建一个排序函数;判断并输出等级函数;打印分数及等级的函数;voidsortabc(){floatt;if(ab>c*/floata,b,c;voidmain(){scanf("%f,%f,%f",&a,&b,&
4、c);/*输入*/sortabc();/*排序*/putabc();/*输出a,b,c三个数*/}结构很清楚,思考-复杂的程序这样设计行不行?chargrade(floatx){if(x>=85)return('A');elseif(x>=70)return('B');elseif(x>=60)return('C');elsereturn('D');}voidputabc(){charg;g=grade(a);printf("%f:%c",a,g);g=grade(b);printf("%f:%c",b,g);g=grade(c);printf("%f:%c",c,g);}1.1
5、.2面向对象程序设计1、面向对象程序设计观点自然界是由各种各样的实体(对象)所组成,每种对象都有自己的内部状态和运动规律,不同对象之间的相互联系和相互作用就构成了各种不同的系统,进而构成整个客观世界.2、程序设计方法:使用面向对象的观点来描述模仿并处理现实问题。程序=对象+消息3、目的:实现软件设计的产业化。1.1.2面向对象程序设计4、基本概念对象客观存在的实体称为对象属性描述对象的特征的数据行为对象自身的行为,对现实世界某些信息的应.对象之间通过传递消息相互影响属性行为对象由属性和行为构成思考:同一个程序采用不同的程序设计方法有什么不同?1.1.2面向对象程序设计方法【例1.1】
6、用C++语言描述,用结构化程序设计方法计算矩形的面积。#includeusingnamespacestd;intmain(){floatlength,width,area;//定义变量长、宽、面积cout<<"pleaseinputlengthandwidth"<>length>>width;//输入长、宽值area=length*width;//计算面积cout<7、rea{public:voidSetData(floatL,floatW);//输入长、宽值floatCompueterArea();//计算面积voidOutputArea();//输出面积private:floatlength,width,area;//定义长、宽、面积};voidRectangleArea::SetData(floatL,floatW){…..}floatRectangleArea::CompueterArea(){……}voidRe