《程序设计与问题求解II》实验指导书修订v1.2.doc

上传人:bao****ty 文档编号:132337816 上传时间:2020-05-14 格式:DOC 页数:27 大小:144.50KB
返回 下载 相关 举报
《程序设计与问题求解II》实验指导书修订v1.2.doc_第1页
第1页 / 共27页
《程序设计与问题求解II》实验指导书修订v1.2.doc_第2页
第2页 / 共27页
《程序设计与问题求解II》实验指导书修订v1.2.doc_第3页
第3页 / 共27页
《程序设计与问题求解II》实验指导书修订v1.2.doc_第4页
第4页 / 共27页
《程序设计与问题求解II》实验指导书修订v1.2.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《《程序设计与问题求解II》实验指导书修订v1.2.doc》由会员分享,可在线阅读,更多相关《《程序设计与问题求解II》实验指导书修订v1.2.doc(27页珍藏版)》请在金锄头文库上搜索。

1、程序设计与问题 求解 II 实验指实验指 导书导书 程序设计与问题求解 II 教改项目组编 2014 年年 3 月月 目目 录录 实验一实验一 数组 结构体和函数综合编程数组 结构体和函数综合编程 3 一 实验目的 3 二 实验内容 3 三 实验结果与分析 6 实验二实验二 指针 链表程序设计指针 链表程序设计 7 一 实验目的 7 二 实验内容 7 三 实验结果与分析 8 实验三实验三 类与对象 一 类与对象 一 9 一 实验目的 9 二 实验内容 9 三 实验结果与分析 10 实验四实验四 类与对象 二 类与对象 二 11 一 实验目的 11 二 实验内容 11 三 实验结果与分析 13

2、实验五实验五 继承与多态继承与多态 14 一 实验目的 14 二 实验内容 14 实例讲解 错误 未定义书签 错误 未定义书签 三 实验结果与分析 17 实验六实验六 运算符重载和模板类运算符重载和模板类 18 一 实验目的 18 二 实验内容 18 三 实验结果与分析 19 实验七实验七 流与文件操作编程流与文件操作编程 19 一 实验目的 19 二 实验内容 19 三 实验结果与分析 19 实验八实验八 链表编程链表编程 19 一 实验目的 19 二 实验内容 19 三 实验结果与分析 19 实验一实验一 数组 结数组 结 构体和函数综合编构体和函数综合编 程程 一 实验目的一 实验目的

3、1 理解数组 结构体和函数之间的关 系 2 掌握利用数组 结构体存储数据和 进行编程的方法 3 进一步掌握函数的编写 二 实验内容二 实验内容 1 改错题 改正下列程序中的错误 建立一 个有 n 3 n 10 个学生成绩的结构 记录 包括学号 姓名和 3 门成绩 输出总分最高的学生姓名和总分 输入输出示例 n 5 1 黄岚 78 83 75 2 王海 76 80 77 3 沈强 87 83 76 4 张枫 92 88 78 5 章盟 80 82 75 总分最高的学生是 张枫 258 分 源程序 有错误的程序 include int main void struct students int n

4、umber char name 20 int score 3 int sum int i j k n max 0 printf n scanf d for i 0 i n i scanf d s for j 0 j 3 j scanf d students i sum student i score j k 0 max student 0 sum for i 1 i n i if max student i sum k i printf 总分最高的学生是 s d 分 n student k name student k sum return 0 2 编程题 学生成绩统计 从键盘输入一个班 全班

5、最多不 超过 30 人 学生某门课的成绩 当 输入成绩为负值时 输入结束 分别 实现下列功能 1 统计不及格人数并打印不及格 学生名单 2 统计成绩在全班平均分及平均 分之上的学生人数 并打印这些学生 的名单 3 统计各分数段的学生人数及所 占的百分比 注 将成绩分为六个分数段 60 分以 下为第 0 段 60 69 为第 1 段 70 79 为第 2 段 80 89 为第 3 段 90 99 为第 4 段 100 分为第 5 段 编程要求编程要求 1 较好的用户输入输出提示信息 2 使用子函数来实现上述各个功能 并且要使用结构体数组来实现 该结 构体中包括学生学号和成绩 3 最好不要使用全局

6、变量 提示提示 Struct Student long num 学生学号 float score 学生分数 供参考的函数原型如下 供参考的函数原型如下 函数功能 从键盘输入一个班学生 某门课的成绩及其学号 当输入成绩为负值时 输入结束 函数参数 存放学生信息的 Student 结构体数组 函数返回值 学生总数 int ReadScore Student stu 函数功能 统计不及格人数并打印 不及格学生名单 函数参数 存放学生信息的 Student 结构体数组 整型变量 n 存放学生总 数 函数返回值 不及格人数 int GetFail Student stu int n 函数功能 计算全班平

7、均分 函数参数 存放学生信息的 Student 结构体数组 整型变量 n 存放学生总数 函数返回值 平均分 float GetAver Student stu int n 函数功能 统计成绩在全班平均分 及平均分之上的学生人数并打印其学 生名单 函数参数 存放学生信息的 Student 结构体数组 整型变量 n 存放学生总数 函数返回值 成绩在全班平均分及 平均分之上的学生人数 int GetAboveAver Student stu int n 函数功能 统计各分数段的学生人 数及所占的百分比 函数参数 存放学生信息的 Student 结构体数组 整型变量 n 存放学生总数 函数返回值 无

8、void GetDetail Student stu int n 3 选做题 成绩排名次 某班期末考试科目为数学 MT 英语 EN 和物理 PH 有最多不 超过 30 人参加考试 要求 1 计算每个学生的总分和平均分 2 按总分成绩由高到低排出成绩 的名次 3 打印出名次表 表格内包括学 生编号 各科分数 总分和平均分 4 任意输入一个学号 能够查找 出该学生在班级中的排名及其考试分 数 编程要求编程要求 1 较好的用户输入输出提示信息 2 使用子函数来实现上述各个功能 3 必须用结构体数组实现 提示提示 设计好存放学生信息的结构体 方便 编程 用函数编程实现计算每个学生的总分 用函数编程实现

9、按总分由高到低对学 生成绩排序 用函数编程实现查找学号为 k 的学生 在班级中的排名名次及相关成绩等信 息 找不到时返回 1 值 三 实验结果与分析三 实验结果与分析 将源程序 运行结果和分析以及 实验中遇到的问题和解决问题的方法 写在实验报告上 实验二实验二 指针 链表指针 链表 程序设计程序设计 一 实验目的一 实验目的 1 理解指针 地址和结构体之间的关 系 2 掌握链表的创建方法和查找方法 3 了解链表插入和删除操作 二 实验内容二 实验内容 1 改错题 改正下列程序中的错误 有 n 个 整数 使前面各数顺序往后循环移动 m 个位置 m n 编写一个函数实现 以上功能 在主函数中输入

10、n 个整数 并输出调整后的 n 个数 输入输出示例 Input n m 5 3 1 2 3 4 5 After moved 3 4 5 1 2 源程序 有错误的程序 include void mov int x int n int m int main void int a 80 i m n p printf Input n m scanf d d for p a i 0 i n i scanf d mov a n m printf After moved for i 0 i n i printf 5d a i return 0 void mov int x int n int m int i

11、 j k for i 0 i0 j x j x j 1 x 0 x n 1 2 编程题 建立 查找链表 1 输入一个正整数 n 0 n 10 然 后输入 n 个整数建立一个单链表 并 输出该链表 2 输入序号 k 0 k n 查找序 号为 k 的结点 并输出该结点值 3 输入值 x 查找值为 x 的结点 若查找成功输出该结点序号 否则给 出信息 3 3 选做题 在上述建好的链表中选做题 在上述建好的链表中 1 插入结点 输入序号 k 0 k n 和值 x 在序号为 k 的 结点后插入 x 并输出该链表 2 删除结点 输入序号 k 删除序号 为 n 的结点 并输出该链表 三 实验结果与分析三 实

12、验结果与分析 将源程序 运行结果和分析以及 实验中遇到的问题和解决问题的方法 写在实验报告上 实验三实验三 类与对象类与对象 一 一 一 实验目的一 实验目的 1 初步掌握面向对象的思想 类的 封装 多文件项目 2 掌握类的概念 类的成员的概念 和类的封装性 3 掌握类对象的定义 4 理解类的成员的访问控制的含义 公有 私有和保护成员的区别 5 初步掌握用类和对象编制基于对 象的编程 6 学习检查和调试基于对象的程序 7 掌握工程文件的编译方法 8 逐步从面向过程编程转到面向对 象编程 二 实验内容二 实验内容 1 1 改错题 改错题 请检查下面程序 找出其中的错 误 先不要上机 自己先检查

13、并 改正之 然后上机调试 使之能正常 运行 运行时从键盘输入时 分 秒 的值 检查输出是否正确 include using namespace std class Time int hour int minute int sec void set time void show time Time t int main set time show time return 0 void set time cin t hour cin t minute cin t sec void show time cout t hour t minute t sec endl 2 2 编程题 求长方体的体积 编

14、程题 求长方体的体积 需要求三个长方体的体积 请编 写一个基于对象的程序 数据成员包 括 length 长 width 宽 height 高 要求用成员函数实现以下功能 1 由键盘输入三个长方体的长 宽 高 2 计算三个长方体的体积 3 输出三个长方体的体积 三 实验结果与分析三 实验结果与分析 将源程序 运行结果和分析以及 实验中遇到的问题和解决问题的方法 写在实验报告上 实验四实验四 类与对象类与对象 二 二 一 实验目的一 实验目的 1 进一步加深对类和对象的理解 2 掌握构造函数和析构函数的含义 与作用 定义方式和使用方法 能够 根据要求正确定义和重载构造函数 能够根据给定的要求定义类

15、并实现类 的成员函数 3 掌握类的组合与对象成员的使用 二 实验内容二 实验内容 1 改错题 请检查下面程序 找出其中的错 误 先不要上机 自己先检查 并 改正之 然后上机调试 使之能正常 运行 检查输出是否正确 进一步掌 握普通构造函数 复制构造函数和析 构函数的调用过程 include using namespace std class Box Box int 10 int 10 int Box Box b Box cout destrctor endl int Volume private int height int width int length Box Box b height

16、b height width b width length b length cout copy constructor endl Box int h int w int len height h width w length len cout constructor endl Volume return height width length void func1 Box b cout b Volume endl Box func2 Box b 20 30 int main Box box1 10 20 10 Box box2 box1 cout Volume endl func1 box1 Box box3 cout box3 Volume endl box3 func2 cout box3 Volume endl return 0 include using namespace std class Box public Box int 10 int 10 int 10 Box Box Box cout destrctor endl int Volume private int h

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

当前位置:首页 > 高等教育 > 其它相关文档

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