《C++程序设计》实验教学大纲.docx
C + +程序设计实验教学大纲(C+ Programming Design)课程代码:0600002实验学时:30先修课程:C语言程序设计、数据结构一、目的要求目的:让学生熟悉C+语言的调试环境,熟悉应用程序的设计过程,掌握基本的面 向对象的程序设计方法,培养学生用计算机解决实际问题的能力。要求:熟悉C+语言的编程和调试环境,根据实验内容和要求,认真完成程序编写、 上机调试、运行结果分析,撰写实验报告。二、实验项目内容及学时分配实验一、Visual Studio C+ 2010运行环境(2学时).实验目的要求目的:掌握在Visual Studio C+2010环境下如何编辑、编译、连接和运行一个 C+程序;通过运行简单的C+程序,初步了解C源程序的结构和特点。要求:学会独立使用该系统,完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容(1)在Visual Studio C+ 2010中输入并运行一个简单的C程序,观察分析运行 结果;(2)输入一个有语法错误的C+程序,编译、连接、调试该程序,直至程序无语法 错误,然后运行程序,并观察分析运行结果。2 .实验类别:专业基础3 .实验类型:验证.实验要求:必做4 .主要仪器:微型计算机实验二、数据类型、运算符和表达式(2学时).实验目的要求目的:掌握整型、实型与字符型这三种基本类型的概念;掌握常量及变量的使用 方法;掌握基本算术运算符及其表达式的使用方法;掌握+、一运算符、赋值运算符 及其表达式的使用方法。要求:完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容在Visual Studio C+ 2010中输入并运行几个C+程序,观察分析运行结果,并 完成相应思考题。2 .实验类别:专业基础.实验类型:验证3 .实验要求:必做.主要仪器:微型计算机实验三、三种基本结构的实现(2学时).实验目的要求目的:正确使用逻辑运算符和逻辑表达式,应用if语句和switch语句进行编程, 使用while语句、do一while语句和for语句实现一些常用算法(如穷举、迭代、递推 等)的编程,以及学习调试程序。要求:完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容(1)上机编写并调试运行一个程序,输入一个5位正整数,输出该整数的倒序,观 察分析运行结果;(2)上机编写并调试运行一个程序,求一个分数序列的前20项之和,观察分析运 行结果;(3)上机编写并调试运行一个程序,输出100以内的所有素数,观察分析运行结果; 上机编写并调试运行一个程序,输出前2个水仙花数。2 .实验类别:专业基础.实验类型:设计3 .实验要求:必做.主要仪器:微型计算机实验四、指针(2学时).实验目的要求目的:用指针编写求两数在的大者,并掌握指针的概念,会定义和使用指针变量。 能正确使用数组的指针和指向数组的指针变量,正确使用字符串的指针和指向字符串 的指针变量。要求:完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容(1)上机编写并调试运行一个程序,在主函数中输入2个整数,调用函数将它们的 值交换,结果在主函数中输出,观察分析运行结果;(要求使用指针和引用处理)(2)上机编写并调试运行一个程序,在主函数中输入10个整数,调用函数求它们 的和,结果在主函数中输出,观察分析运行结果;(要求使用指针和引用处理)(3)上机编写并调试运行一个程序,在主函数中输入一个字符串,调用函数将该字 符串逆序,结果在主函数中输出,排序结果在主函数中输出,观察分析运行结果。(要求使用指针和引用处理)2 .实验类别:专业基础.实验类型:设计3 .实验要求:必做.主要仪器:微型计算机实验五、结构体和联合体(2学时).实验目的要求目的:编写用结构体和联合体变量或数组存储并处理数据的程序,并上机运行, 掌握结构体和联合体类型变量、数组及指针的定义和使用方法。要求:完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容(1)将一个程序补充完整,该程序用结构体变量存储一个学生的信息,然后输出该 学生的信息,要求用三种不同的方法,观察分析运行结果;(2)上机编写并调试运行一个程序,从键盘输入5个学生的信息(每个学生的信息 包括:学号、姓名、性别、成绩),调用sort函数将它们按成绩从高分到低分排序, 在主函数中输出排序后的每个学生的信息。2 .实验类别:专业基础.实验类型:设计3 .实验要求:必做.主要仪器:微型计算机实验六、类与对象(4学时).实验目的要求目的:编写有关类与对象的程序,正确使用构造函数对类的对象进行初始化,理 解面向对象程序设计思想与过程,掌握多文件的程序编译和运行方法。要求:完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容(1)需要求3个长方柱的体积,编写一个给于对象的程序,数据成员包括长、宽和 高,使用成员函数实现如下几个功能:由键盘分别输入3个长方柱的长、宽、高;计 算长方柱的体积;输出3个长方柱的体积,上机调试并运行;(2)将上题改写为一个包含头文件、类成员函数定义的源程序和包含主函数的源文 件的多文件程序,上机调试并运行;(3)设计实现一个CPoint类,满足以下要求:a.该类包含两个整型成员变量x (横坐标)和y (纵坐标),以及一个输出函数 Print。用来输出横坐标和纵坐标,要求不可以在类的外部直接访问成员变量;b.可以采用没有参数的构造函数初始化对象,此时的成员变量采用默认值0;C.可以采用直接输入参数的方式来初始化该类的成员变量;d.可以采用其它的CPoint对象来初始化该类的成员变量;e.设计一个主函数来测试以上功能。2 .实验类别:专业基础.实验类型:设计3 .实验要求:必做.主要仪器:微型计算机实验七、运算符重载(4学时).实验目的要求目的:编写双目运算符和单目运算重载程序,掌握几种常用运算符重载的方法, 以及了解转换构造函数的使用方法。要求:完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容(1)声明一个复数类,重载运算符使之能用于复数的加法运算;(2)设计一个矩阵类,重载运算符"+”使之能用于矩阵的加法运算;.实验类别:专业基础2 .实验类型:设计.实验要求:必做3 .主要仪器:微型计算机实验八、派生与继承(4学时)1 .实验目的要求目的:编写有关类的派生与继承程序,理解公有派生、私有派生和保护派生的含 义和使用等。要求:完成实验内容,观察实验结果,撰写实验报告。2 .实验主要内容(1)改正一个程序中存在的错误,并理解并分析该程序的输出结果;(2)定义点CPoint类作为基类,在此基础上派生出直线CLine类和圆CCircle类, 并要求基类和各派生类具有以下特点:a. CLine类含有计算直线长度和斜率的成员函数;CCircle类含有计算圆面积的成员函数。3 .实验类别:专业基础.实验类型:设计4 .实验要求:必做.主要仪器:微型计算机实验九、多态性与虚函数(4学时).实验目的要求目的:编写有关类的派生与继承程序,理解多态性的概念,了解虚函数的作用及 使用方法,了解静态关联和动态关联的概念和用法。要求:完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容(1)声明一个描述形状的抽象基类,由它派生出3个派生类:圆形、矩形、三角形, 用一个函数分别输出以上三者的面积,3个图形的数据在定义对象时给定;(2)给定一个程序,按要求修改并做必要的讨论。2 .实验类别:专业基础.实验类型:设计3 .实验要求:必做.主要仪器:微型计算机实验十、某公司人员信息管理系统(4学时).实验目的要求目的:培养学生综合运用C+语言知识编程解决实际问题的能力。要求:完成实验内容,观察实验结果,撰写实验报告。1 .实验主要内容利用面向对象编程方法为某公司设计一个人员信息管理系统。要求:(1)首先定义一个公司职员类,用来描述公司所有人员的共同信息(姓名、个人 编号、级别、月薪总额);(2)然后通过继承定义兼职技术人员类、兼职推销员类、经理类和销售经理类, 分别为每个类定义计算月薪函数和显示人员信息函数。月薪计算方法为:兼职技术人员类:月薪=每小时酬金*本月的工作时数兼职推销员类:月薪=销售提成经理类:月薪;固定月薪销售经理类:月薪=固定月薪+销售提成提示:将公司职员类定义为抽象基类,将计算月薪函数和显示人员信息函数定义为虚函 数。2 .实验类别:专业基础.实验类型:综合3 .实验要求:必做.主要仪器:微型计算机三、考核方式实验成绩:预习10%、操作40%、实验报告40%、原始记录10%