【2017年整理】C++初级题目

上传人:豆浆 文档编号:987693 上传时间:2017-05-24 格式:DOC 页数:6 大小:42.44KB
返回 下载 相关 举报
【2017年整理】C++初级题目_第1页
第1页 / 共6页
【2017年整理】C++初级题目_第2页
第2页 / 共6页
【2017年整理】C++初级题目_第3页
第3页 / 共6页
【2017年整理】C++初级题目_第4页
第4页 / 共6页
【2017年整理】C++初级题目_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《【2017年整理】C++初级题目》由会员分享,可在线阅读,更多相关《【2017年整理】C++初级题目(6页珍藏版)》请在金锄头文库上搜索。

1、C+ 题目1. 进行三次淘汰制比赛,分别是四分之一决赛、半决赛、决赛、三四名决赛。每次提问是否获胜。获胜输入“y” ,否则输入其他字母。最终告知获得冠军、亚军还是季军。2. 编写一个程序,用来统计计算学生的成绩。该程序中有一个 Student 类,它的成员及功能是: 数据成员 score,记载学生成绩; 添加适当的构造函数 静态数据成员 total(总分)和 count(总人数) ; 函数成员 setScore(double )用来设置学生成绩; 静态函数成员 sum 用来返回总分; 静态函数 ave 用来求平均值3. 编写一个程序用来对某学校图书馆的书籍资料进行显示、借阅和归还。程序中设计一

2、个 Book 类,它的成员有以下几种。 数据成员 bookName 表示书名, bookPrice 表示书的价格,number 表示存书数量。 函数成员有 show,能够显示图书情况;borrow 表示发生一次借阅需要将当前的存书数目减一,并显示存数量;restore 将存书数目增加一,并显示存书量。 在 main 函数中创建图书对象,对图书进行简单的显示、借阅和归还 添加适当的构造函数 为 Book 类增加数据成员 ISBN 和出版商信息。ISBN 是国际标准书号,由四段共十位数字组成。 当数据成员增加以后,修改相关的函数成员,使其适应改变。4. 根据下面要求编写程序 设计 Date 类,该

3、类用来表示日期; Date 类的构造函数能够检查当前日期是否合法(例如,2010 年 1 月 33 日为非法日期) ,当日期合法时,将初始化数据成员; Date 类函数成员 setDate 在检查日期合法性之后能够重新设置日期。 在 Date 类函数成员 isLeapYear 能够检查某年是否是闰年; extDate 类是 Date 类的共有派生类; extDate 类新增数据成员字符串类型 str,以能够存储日期; extDate 类新增函数成员,该成员能够将输入的数字月份转换成英文并输入,例如输入的月份是“7” 。输出时“ July”。5. 根据要求编写代码。某学校教师的工资构成包括基本工

4、资+课时补贴。其中教授的基本工资是 5000 元,每课时补贴 40 元;副教授基本工资为 4000 元,每课时补贴 30 元;讲师基本工资 2000 元,每课时补贴 20 元。编写程序求若干教师的工资 定义教师抽象类 教师抽象类中定义成员函数 pay,用来计算并返回当前对象的工资,函数成员 set用来设置课时数; 教师抽象类中定义数据成员 name 用来储存姓名,salary 表示基本工资,hourlyWages 表示课时补贴,rank 表示教师职称; 定义教授类,它是教师抽象类的派生类 定义副教授类,它是教师抽象类的派生类; 定义讲师类,它是教师抽象类的派生类; 在 main 函数中创建姓名

5、为“张伟明”的教授,他的课时数为 16; 在 main 函数中创建姓名为“邹洁”的讲师,她的课时数为 48.6. 根据要求编写代码 设计 Shape 类,它是一个抽象基类 Shape 类中的函数成员是 print; Shape 类派生出 TwoDimensionalShape(二维形状类)和ThreeDimensionalShape(三维形状类) ,这两个类也是抽象类 TwoDimensionalShape 包含虚函数 area ThreeDimensionalShape 中包含虚函数 areah 和 volume Circle 类是 TwoDimensionalShape 的派生类,它是一个

6、具体类 Circle 类中数据成 radius 表示半径; Circle 类中数据程艳 radius 表示半径; Circle 类中函数成员 set 能够设置数据成员的值 在 main 函数中声明 Shape 类指针 ps 和 TwoDimensionalShape 类指针 ptr; 对象 c 调用函数成员 set,为当前对象数据成员赋值; 对象 c 的地址为指针 ps 和指针 ptr 赋值; 分别使用 c、ps 和 ptr 调用 area 函数,观察结果7. 有两个函数 maxsort 和 minsort,定义一个函数指针可以指向不同的函数,以实现不同的功能。maxsort (int num

7、,int *a)用于实现对于一个大小为 num 的整型数组进行从大到小的排序,minsort (int num,int *a)用于实现从小到大的排序。设计一个main 函数,读入一个大小为 n 的数组,第一次调用 maxsort 函数,并输出。第二次调用 minsort 函数后输出。8. 设计一个和程序,用指针函数实现以下目的。输入高考成绩(int 型) ,根据输入数据所处的区间,调用不同的函数,输出不同的可供填报的院校名称。9. 去除字符串中所有非字母字符,然后改变字符串中的所有字母的大小写形式【提示】考虑存储为 string 类型的字符串,根据字符串长度设置一个循环过程,在该循环中应用成员

8、函数 findFirstNotOf()查找第一个非字母字符(以 52 个字母(大写小写字母各 26 个)组成的字符串作为该函数的参数) ,然后应用成员函数 erase()删除该字符,直到退出循环过程,结束处理。为简单地改变字母的大小写形式,可以首先定义一个函数(以 char 引用类型作为参数) ,该函数判断字母的大小写形式,然后做出改变。把该函数作为算法 forEach 的第三个参数,即可改变字符串中所有字母的大小写形式。10. 学生成绩极其排名【要求】定义学生结构类型 Student,其结构成员包括学号 sid,姓名 name,成绩 score和排名 rank。按照成绩从高到底排序,并确定其

9、排名。对于成绩相同者,调整其排名也等同。11. 模拟学校的构成:1) 定义学生类 Student,每个学生有学号、姓名、性别、年龄、成绩等信息;2) 定义班级类 Class,每个班级有专业名称、班级编号、学生人数等信息,以及 N 各学生;3) 定义学校类 University,其属性有学校名称、所在城市等信息,假设该学校有 M 个班级;4) 统计该校总人数、男生人数、女生人数;5) 找出该校成绩最好的前 10 个学生予以奖励。【提示】本体主要用到类的符合关系。首先定义学生类 Student,然后定义班级类Class,它需要 Student 数组作为本类的数据成员。接着定义学校类 Univers

10、ity,它需要 Class 数组作为本类的数据成员。为每个类提供基本的输入/输出函数,以及必要的访问函数。12. 编写程序,实现下列要求:1) 定义基类 Employee,并分别从该类派生出 Manager 类和 HourlyWorker 类;2) Employee 类的属性包括姓名 name 和工号 ID,Manager 类的属性包括工资salary,HourlyWorker 类的属性包括 wage 和 hours,分别表示每小时工资数和月工作实数;3) 在各个类中提供必要操作,以构造、析构、修改、输出对象【提示】按照要求定义各基类和派生类。本题重点在于在各个类中提供相同的成员函数计算各自的

11、工资,并能正确计算。13. 编写程序,实现下列要求:1) 定义人员类 Person,其属性(portected 权限)有:姓名、性别、年龄;2) 派生出学生类 Student,添加属性:学号、入学时间和入学成绩3) 从 Person 类再派生出教师类 Teacher,添加属性:职务、部门、工作时间;4) 从 Student 类派生出研究生类 Graduate,添加属性:研究方向和导师5) 由 Graduate 和 Teacher 共同派生出研究生导师类 Supervisor6) 在每个类中提供必要的成员函数,分别实现对象的构造、析构、输入和输出等操作7) 在 main()函数中定义各种对象,并

12、分别测试它们的操作【提示】本体设计多重继承以及虚拟继承1) 定义人员类 Person 作为基类,并提供合适的构造函数,访问函数和输出函数2) 以 Person 类作为虚基类,定义派生类 Student。以 Person 类作为虚基类,定义派生类 Teacher。3) 以 Student 类作为基类,定义派生类 Graduate。以 Graduate 类和 Teacher 类作为基类,定义派生类 Supervisor。4) 在各类中提供合适的构造函数、访问函数,并定义成员函数 Print()输出各自的信息。在 main()函数中定义对象并测试各自的 Print()函数。14. 含有一个纯虚函数

13、Show 的抽象类 person,含姓名:char *Name;派生出两个类,学生类 Student 及教师类。三门课考试成绩都在 75 分以上的学生为优等生,教师一年发表的论文数量在 3 篇以上(含 3 篇)的为合格教师。请用 main()函数进行测试。15. 设计一个类,初始化一个一维数组,派生出两个子类,分别可以正向、逆向输出这个数组。这两个子类又共同派生出一个子类,可以把数组中的数由小到大输出。并用main()函数进行测试。16. 定义一个多项式类来表示多项式 ax3 +bx2 +cx +d。请开发一个完整的类,包括构造函数,析构函数以及 get 函数(读取值)和 set 函数(设置值

14、) 。该类还要提供下述重载的运算符:1) 重载加法运算符“+ ”,将两个多项式相加。2) 重载减法运算符“-” ,将两个多项式相减。3) 重载赋值运算符“= ”,将一个多项式赋给另一个多项式。4) 重载乘法运算符“* ”,将两个多项式相乘。5) 重载加法赋值运算符+=,减法赋值运算符-=以及乘法赋值运算符*=。请用 main()函数进行测试17. 类 Shape 中的虚函数 Area()用来计算各类形状的面积。它有三个共有派生类:类 Circle用来描述原型,类 Rectangle 用来描述矩形,类 Cube 用来描述立方体。并用 main()函数进行测试。18. 假设图书馆的图书包含书名、编

15、号、作者属性,读者包括姓名、借书证属性。每位读者最多借 5 本书,请编写一个建议的图书管理借书系统。19. 定义一个磁盘类 Disk,其成员方法 Write 和 Remove 分别用于在磁盘中写入和删除内容。从 Disk 类派生出硬盘类 HardDisk 和光盘类 CDROM。其中光盘不允许删除,硬盘在写入空间不足时会提示用户是否删除其他内容。20. 定义一个美元类和一个人民币类,并通过重载“+” 、 “-”实现它们的加法,返回值要求是人民币。假设人民币对美元的汇率为 1:7.21. 设计一个自动售货机商品存入及销售控制程序,要求管理员通过密码进入系统从而可以更改系统内的数据,在一次输入后可以

16、选择继续输入还是退出系统;消费者购买时显示柜内商品名称、价格及余量,消费者选购商品后输出其购买的商品单价、名称、余量及总钱数,并可以选择是重复购买还是退出系统。22. 用类的思想编写一个测试小朋友识别字符用的程序,使其能够统计字符串中的大小写字母、数字以及其他符号的个数及总字数。当回答正确提示,并回答下一题,当回答错误时,提示,并要求重新作答,知道回答正确再进行下一个字符的识别。【提示】如输入”welcome to the world of C+!”则提问:“字符串中总共有多少个字符” “字符串中有多少个大写字”“字符串中总共有多少个小写字母” “字符串中总共有多少个数字”“字符串中总共多少个其他字符”等。如果回答正确则进入下一题,回答错误则继续作答,知道回答正确为止23. 编写一段程序,注意区分继承与组合。程序包含 Person 类,Documents 类和 Book 类 3个类。其中 Book 类是有 Documents 类 public 派生而来,并且其数据

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号