面向对象程序设计课程设计-学生成绩管理系统(编辑修改稿)内容摘要:
《面向对象程序设计课程设计》说明书 第一章 概述 面向对象编程用语言与其他语言不同,它将客观事物看做具有属性和行为的随想,通过抽象找出同一类对象共同属性 和行为。 主要特点是:抽象、封装、继承和多态。 在本程序的设计过程中,主要运用了抽象和封装的手法。 本程序中将抽出的公共性质和 一部分 功能一起封装成了一个 Student 类 ,功能被设计成相应的函数。 封装中的函数为类提供了外部接口,而类的成员:学号、班级、姓名、成绩数组、平均成绩都已经隐藏起来,这样就达到了对成员访问权限的合理控制,使不同类之间的相互影响减少到最低,保证了数据的安全性。 另一方面,将数据和代码封装成一 个可重用的程序模块,在编写新程序时就可以重复利用已有的成果,从而简化了程序的编写工作。 简介 本 学生成绩管理系统 程序运行后,将显示一个主菜单,用户可以根据主菜单选择不同的选项,对数据进行相应的操作。 当程序运行后要实现输入、查找、和删除,修改 的功能。 在此基础上考虑到输入过程中可能出现误操作情况、学生退学或毕业情况以及需要对成绩排序的需求我又添加了相应的功能。 具体 的功能 可以分为 以下几个模块 :输入学生成绩模块、查找学生成绩模块、修改学生成绩模块、删除学生成绩模块、排序学生成绩模块。 输入学生成绩模块包 含了两个子模块:从键盘输入学生成绩和从文件读取学生成绩。 第二 章 功能实现简介 对学生成绩进行抽象后,设计 stu 类如下: class stu { private: 《面向对象程序设计课程设计》说明书 char name[20]。 double math,chinese,english,tiyu,average,sum。 public: stu(){ } stu(char n[20],double ma,double chin,double eng,double ty)。 double getsum()。 double getaver()。 void in()。 //数据添加函数 void dele()。 //数据删除函数 void modiy()。 //数据修改函数 void search1()。 //数据 总分 查找函数 void search2()。 // 数据姓名查找函数 void show()。 //数据显示函数 void row()。 //排名 }。 键盘输入模块 当 程序运行后 用户从主菜单中选择了“ 录入学生信息”后,程序分步将提示用户输入相应的信息如:姓名、以及各科成绩 等。 输入完学生成绩后,将自动计算出该学生的平均成绩 以及每科平均成绩。 对于成绩的录入采用循环。 核 代码如下: do { cout请输入姓名 :。 cinname。 cout请输入数学成绩:。 cinmath。 cout请输入语文成绩:。 cinchinese。 cout请输入外语成绩:。 cinenglish。 cout请输 入体育成绩:。 cintiyu。 } 《面向对象程序设计课程设计》说明书 while( c==’ y’ )。 显示数据 如果用户选择显示学生数据后,系统将曾文件中提取信息进行显示,其中包括每科的平均成绩以及 大于 90 分的学生信息。 核心代码如下: cout管理系统中没有录入数据或者数据已经被删除 !endl。 cout编号 姓名 语文 数学 外语 体育 总分 平均分endl。 for(int k=0。 ki。 k++) { coutk+1 s[k]name s[k]chinese s[k]math s[k]english s[k]tiyu (*s[k]).getsum() (*s[k]).getaver()endl。 sum1+=s[k]math。 sum2+=s[k]chinese。 sum3+=s[k]english。 sum4+=s[k]tiyu。 } for( k=0。 ki。 k++) { if((*s[k]).getaver()=90) {cout平均分大于 90 的同学如下 :\n。 cout编号 姓名 语文 数学 外语 体育 总分 平均分endl。 break。 } } 《面向对象程序设计课程设计》说明书 for( k=0。 ki。 k++) if((*s[k]).getaver()=90) { coutk+1 s[k]name s[k]chinese s[k]math s[k]english s[k]tiyu (*s[k]).getsum() (*s[k]).getaver()endl。 } if(i!=0) { cout数学平均分 :sum1/ke。面向对象程序设计课程设计-学生成绩管理系统(编辑修改稿)
相关推荐
则输出结果为( )。 B A. 3 B. 4 C. 5 D. 6 二、填空 1. 假定 x=5, y=6,则执行表达式 y+=x计算 后, x和 y的值分别为 __________和 __________。 3 4 11 2. C++常数 0x145对应的十进制值为 __________。 325 3. C++常数 0345对应的十进制值为 __________。 229 4. 十进制常数
台面上,设定开槽深度,脚踩踏板,气缸自动压料,洗槽电机同时升起。 开好燕尾槽。 建筑用木别墅连接件 :建筑用木别墅连接件 :适用于木别墅或阳光房,墙体 和立柱的连接,需配合重型燕尾榫。 :碳纤维 重型燕尾榫 :重型燕尾榫 :端面尺寸 2416mm 长度: 100mm :碳纤维 ,阳光房,木别墅的专用连接件,配合燕尾刀使用。 16 手工工具套装 手工刨子加紧钳多功能手锯套装 :手动工具 刨子套装:
已经提高到一种生活方式与享受的层面,因此橱柜作为家居必备品,开始在市场中应运而生,并且产品逐步走向整体橱柜的发展趋势,海尔倡导推出整体厨房的新概念和新产品。 新杭州市区人口总量目前为 372 万,其中,原城区人口为 179 万,现非农业人 口为 185 万。 以 5 口之家计算,预计家庭共有70~80万户,其中具有中层收入的预计10万 ~1 5 万户,整体消费水平较高的约3 万户。 另根据 03
、问答题(共 30分) 1. ( 4分)画出下列程序产生的对象的内存映象。 includeiostream includestring using namespace std。 class Member { 得分 评卷人 第 3页 共 12 页 int age。 char *name。 public: Member( int a, char *str) { age = a。 name = new
开,升降器臂拉压变形量相等。 图 玻璃升降器工作示意图 1— 传动臂; 2— 球头滚轮轴; 3— 滑槽; 4— 滚轮; 5— 弹簧片 力的传递方式 玻璃升降器是由人力操作的,产生 ,但在各臂开始运动前,手柄的自由转动空行程量应恰当,一般为 78度。 传动路线: 手摇柄→小齿轮→扇形齿轮→升降臂(主动臂与从动臂) →玻璃安装槽板→玻璃升降运动。 如图 图 力的传递过程 玻璃升降器的布置 驱动机构
由被测脉冲序列来同步。 整个测量过程如下。 A 点时计数器对被测脉冲 M1 和高频基准脉冲 M2 同时计数。 到达 B 点时,预设定的测速时间 TC 已到。 系统发出停止计数命令。 而此时,由于预设定的时间 TC 不一定恰好等于整数个被测脉冲的脉冲周期。 所以计数器仍对高频基准脉冲继续进行计数。 在 D 点被测脉冲的上升沿使计数器停止计数。 这样,高频基准脉冲个数 M2 所对应的计时时间就代表了