


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、上机强化训练题目在下列选项中选择题做,要求: 选做内容一至内容六的同学,要求每个内容中必选 1 道题做(做 10 道题)。 选做内容六、七的同学可不选做其他题(内容六、七的 6 道题要求都做) 。 选做综合程序设计的同学可不选做其他题(综合的 3 道题要求都做) 。 选做网页制作的同学可不选做其他题。一、控制结构训练目的:本次实验旨在加强学生对程序控制结构概念的理解和应用。训练目标:条件结构。循环结构。训练内容:1. 编写一个模拟简易计算器的程序。输入两个数(X和Y),再输入一个运算符(+、 -、*、/ 中的某一个运算符) ,计算并输出其运行结果。 (分别用 if else 和 switch
2、case 语句实现。)2. 用循环语句编写两个整数相乘的程序。提示:整数X*Y相当于丫个X相加。3. 编写程序实现一个简单的登录界面。程序运行时首先提示用户输入密码,然后判 断密码正确性。如果输入密码正确,屏幕显示“成功登录,欢迎! ”;如果输入密码不正 确,则显示“密码错误,请再输入一次” ,密码登录次数不得超过 3 次,超过 3 次,显 示“对不起!你不能使用该系统! ”并退出系统。4. 用走马灯形式显示“ 0 1 2 3 4 5 6 7 8 9”,然后再用动画形式一一擦除。5. 编写程序计算 5年中每个月银行账户余额。 这个账户开始有 2000元,并且没有进 行过存取。利息每月以复式利息
3、计算。年利率从键盘输入。结果输出到屏幕。提示:如果年利率为x,则月利率为x/12,每月利息为:M=P0(x/12) 。其中,Po为开始一个月的本金。月末本金(也是接下来一个月开始的本金)为:Pf= P0+M= P0+ P0(x/12)= P 0(1+x/12)二、函数训练目的:本次实验旨在加强学生对函数概念的理解和应用。 训练目标:函数的调用。函数的递归调用。结构体。函数的重载。函数模板的应用。训练内容:1. 求一元二次方程的根。设计三个函数,分别求出判别式大于0、等于 0 和小于 0时的根。2. 用递归方法编写两个整数相乘的程序。提示:整数X*Y相当于丫个X相加。3. 编写计算面积的函数,可
4、以计算圆、矩形的面积。要求函数名相同,圆的半径为 实型,矩形的边长可以是整型,也可以是实型。4. 应用函数模板求三个数中最大数,要求分别处理整型、浮点型、字符型数据。5. 用函数重载方式实现学生记录的查询。 定义同名 lookup 函数完成根据学号和根据 姓名查找学生记录的功能。学生信息定义一个结构体 Student 来包含。三、类与对象训练目的:本次实验旨在加强学生对类和对象概念的理解和实际运用。训练目标:类的定义格式 。构造函数和析构函数的定义方式和实现。 类的成员和成员函数的定义和实现。类的包含。训练内容:1. 设计一个银行账户 (Account) 类,包含户名、帐号以及当前余额属性,可
5、完成开 户、存款、取款和查询余额等行为。 用类 Account 创建具体的对象, 如张三的账户, 然后对该账户对象做具体的处理。银行账户类的定义如下:class Accountprivate:char mName20; /银行账户的户名long mSN;/本账户的帐号float mBalance; /本账户当前的余额public :Account(char name,long num,float amount);/ 类的构造函数Account(); /类的析构函数void deposit(float amount); /往账户中存款int withdraw(float amount); /从账
6、户中取款float getBalance(); / 查询余额;请根据上述给定的类,完善其相应的成员函数的定义,并编写主函数实现测试。2. 设计一个楼房基类building,其中的变量floors表示层数,areas表示建筑面 积,name表示建筑名称。建立派生类 house表示居住楼,增加变量ds表示单元数。再 建立派生类 office 表示办公楼,增加变量 cs 表示公司数。3. 设计一个一元二次方程类,数据成员有系数a、b、c 和根 root ,成员函数有构 造函数、析构函数、求根函数、显示函数,能实现求根运算。4. 设计一个用于学生管理的 Student 类,属性有:学号、年龄、性别、出
7、生日期、 家庭地址等。其中“出生日期”声明为一个“日期”类的内嵌子对象。用成员函数实现 对学生信息的录入和显示。 要求包括:构造函数和析构函数、 拷贝构造函数、 类的包含。四、数组与指针训练目的:本次实验旨在加强学生数组和指针概念的理解和实际运用。 训练目标:对象数组。对象指针和成员指针。 动态内存分配。训练内容:1. 使用对象数组,实现一个简单的银行账户管理系统,完成开户、存款、取款和查 询余额等行为(用类 Account 创建具体的对象数组, 如张三的账户、 李四的账户和王五 的账户,然后对该组账户对象做具体的处理。 )2. 设计一个学生对象数组, 实现学生基本信息输入与输出。 学生类可参
8、考类和对象 中的训练内容 4。五、类的继承训练目的:本次实验旨在加强学生对类的继承概念的理解和实际运用。 训练目标:类的声明和使用类的继承关系,声明派生类。 区别公有、私有和保护继承。训练内容:1. 编写一个基类Shape,在此基础上派生出类Triangle和Circle,二者都有计算对 象面积的函数 GetArea( ) 和计算对象周长的函数 GetPerim()。2. 设计一个楼房基类 building ,其中的变量 floors 表示楼房层数, areas 表示建 筑面积,name表示建筑名称。建立派生类house表示居住楼,增加变量ds表示单元数。 建立派生类 office 表示办公楼
9、,增加变量 cs 表示公司数。为每个类定义一个输出函数 print() ,输出该类相关信息。3. 新建一个雇员类,它的数据成员有雇员代号,年龄,工资,性别,姓名,输入雇员资料方法,打印雇员资料方法。以此雇员类为基类,从中派生出教师类、实验员类和 行政管理人员,其中要求在教师类中加入一个计算教师工资的方法,教师工资=基本工资(1000)+课时(月工作量)x 20。要求在实验员类中加入一个计算实验员工资的方 法,实验员工资=基本工资(800)+实验课时(月工作量)x 10。要求在行政人员类中加 入一个计算行政人员工资的方法,行政人员工资=基本工资( 900)+行政补贴( 300)。4. 开发一个简
10、单的大学人员管理程序,该程序可以管理大学的一些基本人员:学生(student )、教师(teacher )、教授(professor )。首先设计一个虚基类 person。通过 该类保存人员的最基本信息:姓名(name、年龄(age)和性别(sex)。然后使用该类 派生出学生类 student 和教师类 teacher ,在其中添加各自的特性,如在 student 类中 添加如下信息:专业( speciality ),在 teacher 类中添加院系( department )等。还 有部分教师在工作的同时在职修读学位,因此同时具有教师和学生双重身份,所以由 student 类和 teache
11、r 类再次派生出 stuTeacher 类。在教授类中添加教授级别 ( level ) 区分是教授还是副教授。为每个类定义一个输出函数 print() ,输出该类相关信息。六、多态训练目的:本次实验旨在加强学生对多态概念的理解和实际运用。训练目标:对多态性的理解。运算符重载。虚函数和抽象类。训练内容:1 .设计一个抽象类 Shapeo在此基础上派生处 Triangle、Rectangle和Circle,三 者都有计算对象面积的函数 GetArea和计算对象周长的函数 GetPerim。编写程序实现测 试。2. 新建一个名称为车的基类,包括数据成员有车名,车主名,购买日期,同时包括 一个显示车信
12、息的虚函数。以此车类为基类,从中派生出小汽车类,在此基类基础上另 加入的数据成员有:座位数,显示小汽车函数。以此车类为基类,从中派生出货车类, 在此基类基础上另加入的数据成员有:吨位,显示货车函数。3. 设计数组类。把运算符“ +”和运算符“ - ”分别重载为类的成员函数,把运算符 “”重载为类的友员函数,实现两个二维数组的相加和相减。编写程序测试,要求第 一个二维数组对象的值由构造函数设置,另一个二维数组对象的值由键盘输入。七、输入输出流训练目的:本次实验旨在加强学生对输入输出流概念的理解和实际运用。训练目标:了解流类库中常用的输入 / 输出流类。掌握基本的输入 / 输出方法。掌握C+文件的
13、使用方法。训练内容:1. 设计一个学生信息类CStudent,通过该类创建二进制文件 Student.bin 用于存 放学生记录,其中每条记录包括姓名、性别、年龄和平均成绩。2. 在内容 1 的基础上扩展学生信息类 CStudent 的功能,实现向二进制文件中添加 记录的功能。最简单的设计是在 CStudent 中添加一个成员函数 appendfile() 即可。3. 在内容 1 和内容 2 的基础上扩展学生信息类 CStudent 的功能,输出前面创建的 二进制文件。八、综合程序设计训练目的:本次实验旨在加强学生对面向对象程序设计思想和方法的理解和应用。训练目标:综合使用C+语言的语法和算法
14、,编写规模较大、较为复杂的 C+程序。训练内容:1.用运算符重载设计有理分数类,实现 +、 -、 *、 / 等操作。提示:创建一个有理分数类 Rational ,有两个数据成员,一个构造函数,四个“ +、 -、*、/ ”运算符重载函数,一个插入运算符“ ” 重载函数,一个显示函数和一个约简函数。其中数据成员有分子 numerator 和分母 denominator ,构造函数可以避免分母为 0,对不是约化型的分数进行约化。 显示函数显 示计算结果,约简函数对分数进行化简。 2使用面向对象设计方法实现几何形状的处理:根据用户输入的形状类型(例如圆) 和相应参数(例如位置和半径) ,显示相应形状信
15、息。要求程序能处理圆、矩形。提示:根据需要,可以设计如下几个类。形状类Shape (抽象类)一作为所有具体形状类的共同基类,包含两个数据成员和 两个成员函数。其中两个数据成员 x, y 表示形状的坐标位置。而两个成员函数 GetD() 和disp(),分别用于获取形状的描述和显示形状,由于在Shape中无法准确定义GetD() 和 disp() 的动作,所以将它们设计为纯虚函数。圆类Circle (派生自Shape) 表示圆形,增加一个数据成员radius,表示半径, 从基类继承的数据成员x和y表示圆心的坐标,该类重定义Shape类中的纯虚函数GetD() 和 disp() ,实现圆形的描述获
16、取和显示。矩形类 Rectangle( 派生自 Shape) 表示矩形,增加两个数据成员 length 和 width , 表示矩形的长度和宽度,从基类继承的数据成员x和y表示矩形左上角顶点的坐标,该类重定义Shape类中的纯虚函数GetD()和disp(),实现矩形的描述获取和显示。主函数只需根据用户输入的形状类型,创建相应类型的形状对象,然后可以让该对 象自己获取关于形状描述的参数并进行显示。要求用多态实现。3. 设计一个图书管理的简单程序,提供的基本功能包括:可连续将新书存入文件 “book.dat ”中,新书信息加入到文件的尾部;也可以根据输入的书名进行查找;把文件 “book.dat
17、 ”中同书名的所有书显示出来。为简单起见,描述一本书的信息包括:书号, 书名,出版社和作者。提示:可以把描述一本书的信息定义为一个Book类,它包含必要的成员函数。把加入的新书总是加入到文件尾部,所以,以增补方式打开输出文件。从文件中查找书时, 总是从文件开始位置查找,以读方式打开文件。用一个循环语句实现可连续地将新书加 入文件或从文件中查找指定的书名。由于是以一个Book类的实例进行文件输入输出的,所以,这文件的类型应该是二进制文件。九、网页制作训练目的: 本次实验旨在加强学生对网页制作的应用。训练目标:综合运用flash和ASP等技术制作一个网页。训练内容: 模拟现实网站,例如购物网、校园网等,设计一个小型的网站,要求后台用数据库参考书目:1. 王晓东 主编C+程序设计简明教程中国水利水电出版社2. 郑莉主编C+语言程序设计案例教程 清华大学出版社3. 李师贤主编C+程序设计实验教程高等教育出版社4. 网页制作三剑客 (到百度去搜)上机强化训练验收1验收学生程序,记录学生成绩(第 10 周为最后期限)。学生给老师演示其通过的程序,老师提适当问题。根据学生程序和学生回答问题给 出成绩。2学生在强化训练结束后,要交一份强化训练报告,报告要用“课
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 协议书和合同怎么查找
- 租地协议书合同
- 求兼职主播合同协议书
- 租房协议书没有合同
- 双人餐饮合同协议书
- 合同违约协议书范本
- 运费协议书合同
- 种植基地终止合同协议书
- 男女合同协议书
- 网络员考试题及答案
- DINEN1706铝和铝合金铸件化学成分和机械性能(中文版)
- 朝韩语二级笔译实务样题
- 小儿推拿技术操作规范
- 科大讯飞:2022智能教育发展蓝皮书-智能技术助力教学减负增效
- 大学生器乐训练基础知到章节答案智慧树2023年丽水学院
- 企业数字化转型的国外研究现状共3篇
- T-GDWCA 0033-2018 耳机线材标准规范
- NB/T 10533-2021采煤沉陷区治理技术规范
- 无形资产转让协议书(2篇)
- GB/T 37356-2019色漆和清漆涂层目视评定的光照条件和方法
- GB/T 262-2010石油产品和烃类溶剂苯胺点和混合苯胺点测定法
评论
0/150
提交评论