C611章课后作业参考答案.pdf

上传人:zh****71 文档编号:126717774 上传时间:2020-03-27 格式:PDF 页数:24 大小:311.03KB
返回 下载 相关 举报
C611章课后作业参考答案.pdf_第1页
第1页 / 共24页
C611章课后作业参考答案.pdf_第2页
第2页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C611章课后作业参考答案.pdf》由会员分享,可在线阅读,更多相关《C611章课后作业参考答案.pdf(24页珍藏版)》请在金锄头文库上搜索。

1、第六章类和对象 1 给出以下程序的执行结果 题目见 C 语言程序设计 9 9 9 21 P212 和 C 程序设计教程 6 2 6 4 P115 答案 C 语言程序设计 9 9 运行结果 String 9 10 运行结果 n 6 n 6 n 6 9 11 运行结果 n 10 k 3 n 20 k 3 n 30 k 3 9 13 运行结果 n 2 n 3 9 14 运行结果 Constructor i 0 Destructor 9 15 运行结果 Constructor1 Constructor2 i 0 i 10 Destructor Destructor 9 16 运行结果 A Constr

2、uctor B Constructor Value 0 B Destructor A Destructor 9 17 运行结果 A 7 b 8 9 18 运行结果 5 6 7 9 19 运行结果 Constructor1 Constructor1 Constructor1 Constructor1 Destructor Constructor2 Destructor Constructor3 Destructor x 0 y 0 x 5 y 0 x 2 y 3 Destructor Destructor Destructor 9 20 运行结果 1 2 3 count 2 2 3 4 coun

3、t 2 9 21 运行结果 A Constructor B Constructor n 3 m 2 B Destructor A Destructor 2 编写一个程序 输入若干个学生的英语和数学成绩 求出总分 并按总分从高到低排序 最后输出结果 include iostream include string include iomanip usingnamespace std class Student public char name int eng math sum Student void inscore void display Student Student Student nam

4、e new char 10 void Student inscore cout name cout eng cout math sum eng math void Student display cout setw 10 name setw 6 eng setw 6 math setw 10 sum endl Student Student delete name void equal Student a eng b eng a math b math a sum b sum void sort Student p int n int i j exchange Student tmp for

5、i 0 i i j if p j 1 sum p j sum equal tmp p j 1 equal p j 1 p j equal p j tmp exchange 1 if exchange break void main int n i Student p cout n p new Student n for i 0 i n i p i inscore cout 排序前 endl for i 0 i n i p i display sort p n cout 排序后 endl for i 0 i n i p i display system pause 3 设计一个立方体类Box 它

6、能提供立方体的体积和表面积 include iostream usingnamespace std class Box float a float volume float area public Box Box float r a r void seta float r a r void getvolume volume a a a void getarea area 6 a a void disp cout 体积 volume 表面积 area endl void main Box obj1 5 obj2 obj2 seta 7 obj1 getarea obj1 getvolume co

7、ut obj1 disp obj2 getarea obj2 getvolume cout obj2 disp system pause 4 编写一个程序 已有若干个学生数据 这些数据包括学号 姓名 语文成绩 数学成绩 和英语成绩 求各门课程的平均分 要求设计不同的成员函数来求各门课程的平均分 并 使用成员函数指针来调用它们 include iostream include iomanip include string define N 3 usingnamespace std class Student int no char name 10 int chi int math int eng

8、 staticint sum1 staticint sum2 staticint sum3 public Student int n char na int d1 int d2 int d3 no n strcpy name na chi d1 math d2 eng d3 sum1 chi sum2 math sum3 eng double avg1 return sum1 1 0 N double avg2 return sum2 1 0 N double avg3 return sum3 1 0 N void disp cout setw 4 no setw 10 name setw 6

9、 chi setw 6 math setw 6 eng endl int Student sum1 0 int Student sum2 0 int Student sum3 0 void main double Student fp 定义成员函数指针 本部分没讲 该题可换成其它方法实现 Student s1 1 Li 89 77 98 Student s2 2 Zhang 98 65 82 Student s3 3 Mary 67 65 87 cout 输出结果 endl s1 disp s2 disp s3 disp fp cout 语文平均分 s1 fp endl fp cout 语文平

10、均分 s1 fp endl fp cout 语文平均分 s1 fp endl system pause 5 编写一个程序 统计学生成绩 其功能包括输入学生的姓名和成绩 按成绩从高到低排 列打印输出 对前70 的学生定为合格 PASS 而后 30 的学生定义不及格 FAIL 要求采用面向对象方法编程 include iostream include iomanip include string define N 10 usingnamespace std class Student char name 10 int deg public void setname char na strcpy n

11、ame na char getname return name void setdeg int d deg d int getdeg return deg class Compute int n Student na N public void getdata 读入学生的信息 int i tdeg char tname 10 cout n for i 0 i n i cout 第 i 1 tname tdeg na i setname tname na i setdeg tdeg void sort 对成绩进行排序 int i j pick Student temp for i 0 i n 1

12、 i pick i for j i 1 j na pick getdeg pick j temp na i na i na pick na pick temp void disp int cutoff i cout 输出结果 endl cout 姓名成绩 合格否 endl cout endl cutoff n 7 10 1 for i 0 i n i cout setw 6 na i getname setw 3 na i getdeg if i cutoff cout PASS endl else cout FAIL endl void main Compute obj obj getdat

13、a obj sort obj disp system pause 第七章引用 1 给出以下程序的执行结果 题目见 C 语言程序设计 10 2 10 10 P232 和 C 程序设计教程 7 1 7 2 P130 C 语言程序设计 10 2 10 10 P232 参考答案 10 2 运行结果 n 10 rf 10 n 15 rf 15 n 23 rf 23 10 3 运行结果 n 15 rf 15 public Sample cout 执行类的构造函数 endl Sample cout 执行类的析构函数 endl void main Sample s cout 0 else c void mai

14、n int tn 0 tc 0 char ch cout ch while ch 字符串以 结束 fun ch tn tc cin ch cout 数字字符个数 tn endl cout 其它字符个数 tc endl system pause 第八章友元 1 给出以下程序的执行结果 题目见 C 语言程序设计 11 2 11 5 P243 和 C 程序设计教程 8 1 8 2 P142 C 语言程序设计 11 2 11 5参考答案 11 2 运行结果 A disp b1 num 100 A disp b2 num 200 b1 num 100 b1 num 100 b2 num 200 b2 n

15、um 200 11 3 运行结果 n 100 11 4 运行结果 2 11 5 运行结果 x 5 y 10 x 6 y 9 x 5 y 9 C 程序设计教程 8 1 8 2 参考答案 8 1 运行结果 n 100 8 2 运行结果 the student is Li Hu the teacher is Wan Ping 2 编写一个程序 设计一个点类Point 采用友元函数求两个点之间的距离 并用相关数据 进行测试 include iostream include math h usingnamespace std class Point protected double x y public

16、 Point double x1 double y1 x x1 y y1 frienddouble dist Point p1 Point p2 double d sqrt p1 x p2 x p1 x p2 x p1 y p2 y p1 y p2 y return d void disp cout 点 x y void main Point p1 2 2 p2 3 3 p1 disp cout 到 p2 disp cout 距离为 dist p1 p2 s2 deg return 1 elseif s1 deg s2 deg return 0 elsereturn 1 void main student st student 王华 78 student 李明 92 student 张伟 62 student 孙强 88 int i min 0 max 0 for i 1 i 4 i if compare st max st i 1 max i elseif compare st min st i 1 min i cout 输出结果 endl cout 最高分者 st max getn

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

当前位置:首页 > 商业/管理/HR > 其它文档

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