C++实验指导书
C语言程序设计实验指导书【范本模板】

青岛科技大学信息科学技术学院C语言程序设计实验指导书目录实验1 C语言入门及选择结构 0实验1.1 Visual C++6。
0开发环境 0实验1.2 C程序快速入门 (7)实验1.3算术运算与赋值运算 (11)实验1。
4逻辑运算及if语句 (17)实验1.5 switch选择结构 (23)实验2循环结构及数组(共8学时) (27)实验2.1 循环结构(2学时) (27)循环结构程序设计补充 (32)实验2.2数组一:一维数组 (36)实验2。
3数组二:二维数组 (43)实验2.4数组三:字符数组 (45)实验3:函数与自定义数据类型 (49)实验3。
1函数一:函数的定义、调用和声明 (49)实验3。
2函数二:函数的参数传递2 (55)实验3。
3函数三:函数的嵌套和递归2 (57)实验3.4 自定义数据类型(2学时) (59)实验4:指针(共6学时) (61)实验4。
1指针一:指针的定义及运算 (61)实验4。
2指针二:指向数组的指针 (67)实验4.3指针三:用指针操作字符串2 (71)实验1 C 语言入门及选择结构实验1.1 Visual C++6.0开发环境一、实验目的1。
熟悉C 语言的系统环境,掌握在集成环境中编辑、编译、连接和运行C 语言程序的方法。
2. 掌握C 语言源程序的结构特点与书写规范. 二、实验学时数2学时三、实验步骤及任务(一) VC++6。
0集成环境(1)运行VC++6。
0a.双击桌面上的VC++6。
0快捷方式,运行VC++6。
0。
b 。
双击"C :\Microsoft Visual Studio\Common\MSDev98\Bin\MSDEV 。
EXE",运行VC++6.0. (2)认识VC++6。
0标题栏的左侧显示当前的文件名,右侧有最小化,最大化和关闭三个按钮。
菜单栏包含了开发环境中几乎所有的命令,其中一些常用的命令还被排列在工具栏中。
工具栏上的按钮提出和一些菜单命令相对应,提供了经常使用的命令的一种快捷方式。
C语言实验

高级语言程序设计I(C语言)实验指导书实验一C语言程序初步一、目的和要求1、熟悉C语言运行环境。
2、掌握C语言程序的书写格式和C语言程序的结构。
3、掌握C语言上机步骤,了解运行一个C程序的方法。
4、本实验可在学习完教材第二章后进行。
二、实验内容1、C语言上机步骤:(A)、启动后请选择进入Windows XP系统。
(B)、实验环境VC++。
(C)、VC++的使用环境参见附录VC++的使用方法。
2、有下面的C程序,目的是想计算由键盘输入的任意两个整数的积。
/********exl.c********/#include (stdio.h);main()scanf(―%x,%y‖,&x,%y)p=prodct(x,t)printf(―The product is :‖,p)int prodct(int a ,int b )int cc=a*breturn c请调试上述程序。
三、实验步骤1、静态地检查上述程序,改正程序中的错误。
2、在编辑状态下照原样键入上述程序。
3、编译并运行上述程序,记下所给出的出错信息。
4、按照事先静态检查后所改正的情况,进行纠错。
5、再编译执行纠错后的程序。
如还有错误,再编辑改正,直到不出现语法错误为止。
6、下面给出6组测试用例,你认为哪几组较好?为什么?(1)0,0(2)0,99(3)20,50(4)33000,20(5)-5,-2(6)-5,2要测试出上述程序中所有错误,你认为应当用几组测试用例?四、分析与讨论1、记下在调试过程中所发现的错误、系统给出的出错信息和对策。
分析讨论对策成功或失败的原因。
2、总结C程序的结构和书写规则。
实验二数据类型一、目的和要求1、了解C语言中数据类型的意义。
2、本实验可在学习了教材第3章后进行。
二、实验内容和步骤1、下面的程序试图计算由键盘输入的任意两个整数的平均值:#include <stdio.h>main(){int x,y,a;scanf(―%x,%y,&x,&y);a=(x+y)/2;printf(―The average is :‖a);}调试无语法错误后,分别使用下列测试用例对上述程序进行测试:(1)2,6(2)1,3(3)-2,-6(4)-1,-3(5)-2,6(6)-1,3(7)1,0(8)1,6(9)32800,33000(10)-32800,330001、分析上述哪几组测试用例较好?通过测试,你发现程序有什么错误了吗?若有错误,请指出错误原因。
C语言程序设计实验指导书

计算机软件基础实验指导书计算中心辽宁工业大学2008年12月目录实验一熟悉C语言编程环境 (1)实验二基本数据处理 (8)实验三计算分段函数 (11)实验四指定次数的循环 (15)实验五分支结构程序设计 (18)实验六循环结构程序设计(一) (24)实验七循环结构程序设计(二) (29)实验八循环结构程序设计(三) (34)实验九循环结构程序设计(四) (39)实验十函数程序设计(一) (43)实验十一函数程序设计(二) (50)实验十二一维数组程序设计 (57)实验十三二维数组程序设计 (63)实验十四字符数组程序设计 (70)实验十五指针程序设计 (76)实验十六结构程序设计 (87)实验十七文件 (93)实验一熟悉C语言编程环境【实验目的】1、熟悉C语言编程环境,掌握C程序在Visual C++ 6.0环境下的编辑、编译、连接和运行。
2、能够编写简单的C程序。
3、掌握程序的调试方法,能够找出并改正程序中的语法错误。
【实验内容】一、在Visual C++ 6.0编程环境下的操作步骤用一个示例详细介绍C语言源程序在Visual C++ 6.0编程环境下,操作的整个过程。
【示例】在屏幕上显示你的学号、姓名和专业源程序:/*在屏幕上显示你的学号、姓名及专业*/#include "stdio.h"void main(){printf("\t08001020\t张楠\t车辆工程\n");}操作步骤:(1)启动VC++。
执行“开始”“程序”“Microsoft Visual Svtudio 6.0”“Microsoft Visual C++ 6.0”命令,进入VC++编程环境(如图1-1所示)。
图1-1 VC++窗口(2)新建文件。
执行“文件”“新建”命令,单击“文件”选项卡(如图1-2所示),选列表中的“C++ Source File”,在“文件”文本框中输入2-1.c,在“C目录”文本框确定存放位置,然后单击确定。
《单片机原理及应用》实验指导书(C语言)

《单片机原理及应用》实验指导书(C语言)《单片机原理及应用》实验指导书(C语言)某某大学物电学院微机教研室某某2022前言由于单片机具有高可靠性、超小型、低价格、容易产品化等特点,在仪器仪表智能化、实时工业控制、实时数据采集、智能终端、通信设备、导航系统、家用电器等控制应用领域,具有十分广泛的用途。
由于目前在国内单片机应用中,MCS-51系列单片机仍然是一种主流单片机,所以本实验指导书为学习MCS-51单片机的学生,配合《单片机原理及应用》课程的教学,结合本学院自制单片机教学实验板编写了这本实验指导书。
《单片机原理应用及》是一门实践性很强的课程,提高教学质量的一个重要环节是上机实习和训练,无论是学习汇编语言程序设计,还是学习接口电路和外设与计算机的连接,或者软硬兼施地研制单片机应用系统,不通过加强动手是不能获得预期效果的。
本实验指导书提供多个实验的指导性材料,有些实验还有一些有一定难度的选做项目,可以根据课时的安排和教学要求进行取舍。
为了达到某些实验的目的,书中提供的参考程序与实际应用中的程序会有些差别,所以不一定是最优的。
由于时间紧迫,需要赶课程进度与实验时间的同步,加上编者学识有限,如有不妥之处,欢迎读者批评指正。
实验须知1.实验前必须阅读教科书的有关部分和本实验指导书,了解实验目的、内容、步骤,做好实验前的准备,编写好实验中要求自编或修改的程序;完成实验前要求完成的准备工作后方可以上机实验,否则不得上机操作。
2.各种电源的电压和极性不能接错,严禁带电接线和接插元器件。
通电前须经过指导教师检查认可后方能通电。
3.不准随意拨弄各种与实验无关的旋钮和开关,凡与本次实验无关的任何设备都禁止动用和摸弄,注意安全。
4.严禁用手触摸实验系统印制电路板和元器件的引脚,防止静电击穿芯片。
5.实验中若损坏仪器或元器件,应及时向指导教师报告。
6.在实验室内保持安静和卫生,不得随意走动和喧哗,集中精力完成实验。
7.实验完成后,关掉电源,及时整理实验台桌面,保持环境整洁。
《程序设计基础(C语言)》实验指导书

《程序设计基础(C语言)》目录第1 章概述 (1)1.1 课程简介 (1)1.2 实验环境选择 (1)第 2 章实验要求 (1)2.1 实验过程要求 (1)2.2 考核及评分标准 (1)第 3 章实验内容 (2)3.1 实验1 熟悉C语言运行环境 (2)3.2 实验2 数据类型 (3)3.3 实验3 运算符和表达式 (4)3.4 实验4 顺序结构及输入和输出 (6)3.5 实验5 选择结构 (7)3.6 实验6 循环结构 (9)3.7 实验7 数组(1) (11)3.8 实验8 数组(2) (12)3.9 实验9 字符串及其操作 (13)3.10 实验10 函数 (14)3.11 实验11 结构体 (15)3.12 实验12 指针 (16)第 1 章概述1.1 课程简介《程序设计基础(C语言)》是软件工程各专业或其它相近专业学生的公共职业基础课,是软件类各专业的入门课程,直接影响学生后继职业技术课程的学习及可持续发展能力的培养。
通过本书,学习基本的程序设计概念和程序设计方法,学会使用C语言解决实际问题,进行初级的程序设计。
1.2 实验环境选择VC++6.0第 2 章实验要求2.1 实验过程要求本课程中,实验者必须服从指导教师和实验室工作人员的安排,遵守纪律与实验制度,爱护设备及卫生。
在指定的实验时间内,必须到机房内实验,其余时间可自行设计和分析。
本课程所涉及的程序代码,都要求有较高的可读性和效率,多文件表示。
2.2 考核及评分标准若实验者在指定上机时间三次不到课,取消考核资格。
请假,必须提前出具正式假条,不接受事后假条。
如果发现抄袭、篡改、伪造实验数据,或实验报告和设计报告雷同,涉及的所有学生的该课程成绩计为0 分。
本课程采用结构化评分,主要由指导教师灵活处理,可以是考勤等。
第 3 章实验内容3.1 实验1 熟悉C语言运行环境一、实验目的1.了解什么是C语言2.熟悉C语言程序开发环境二、实验内容和步骤1.大学生涯的第一个程序1)运行Microsoft Visual Studio 2008或者VC6.02)创建项目,选择win32控制台应用程序或者空项目,项目名为MyFirstApp3)新建项目,选择C++源文件,文件名为HelloWorld4)在程序编辑窗口,输入如下代码#include <stdio.h>/* 主程序*/void main(){printf("hello world\n");}5)执行程序,Ctrl+F56)观察输出结果,并记录2.修改程序1)增加语句,观察输出结果是否不同printf("hello world\n");printf("world is me\n");2)删除输出字符串中的“\n”,观察输出结果是否不同printf("hello world\n");3)进行换行输出,观察输出结果是否不同printf("hello, ");printf("world");printf("\n");4)将上个程序块中的printf("\n");去掉,观察输出结果是否不同3.用自己的语言,描述下对C语言程序的第一印象4.简单描述下,第二步骤中,输出结果相同与不同的原因;以及“\n”的用途3.2 实验2 数据类型一、实验目的1.掌握变量的命名规则和定义2.掌握C语言程序中的各种数据类型并使用它们二、实验内容和步骤1.定义3个变量numInt、numFloat、charInfo,他们的类型分别为整型,单精度类型,字符型;并分别初始化为2,2.0和‘A’,最后输出这三个变量的值。
c语言程序设计实验指导书

c语⾔程序设计实验指导书《C 语⾔程序设计》实验指导书实验⼀C 程序的运⾏环境⼀、实验⽬的1、了解所⽤的计算机系统的基本操作⽅法,学会独⽴使⽤该系统;2、了解在该系统上如何编辑、编译、连接和运⾏⼀个C 程序;3、通过运⾏简单的C 程序,初步了解C 程序⼆、实验预习1、认真阅读简单的C 程序介绍,C 程序上机步骤部分内容;2、编写好所需要的程序,程序的书写应该清楚整洁,⼀般检查应该是没有明显的错误。
如果在程序中有疑问的地⽅,可以标记起来,以便于上机调试时予以注意。
初学者特别忌讳上机前⾃⼰不编写程序,到时随便地抄别⼈的程序。
三、实验指导1、输⼊并运⾏⼀个简单的程序,从⽽熟悉所⽤系统的上机⽅法与步骤。
(1)选择“File”—“New”—“Win32 console application”,输⼊⼯程名称,确定。
直接选择第⼀项“An empty project”,点击“Finish”。
“File”—“New”—File框下⾯选择⽂件类型“C++ Source File” ,输⼊⽂件名称,点击“OK”。
(2)输⼊下⾯的程序(例题1.1)#includevoid main( ){printf("This is a C program.\n");}(3)选择“Build”菜单下“Compile”选项,快捷键为Ctrl+F7。
编译过程将源代码转化成⽬标⽂件格式,后缀名为.o。
选择“Build”菜单下“Build”选项,快捷键为F7。
如果出现“出错信息”,则应找出原因并改正之,再进⾏编译构建。
(4)如果编译⽆错误,选择“Build”菜单“Execute”选项,运⾏程序,快捷键为Ctrl+F5,观察分析运⾏结果。
2、输⼊并编辑⼀个C 程序(1)同上,新建⼯程和⽂件。
(2)输⼊以下程序(例题1.2,但故意漏打或打错⼏个字符)#includevoid main( ){int a,b,sum ;a=123 ;b=456 ;sum=a+b ;printf("sum is %d\n",sum);}(3)以下步骤同上⼀例题3、输⼊并运⾏⼀个需要在运⾏时输⼊数据的程序(1)清空编辑窗⼝,输⼊下⾯的程序(例题1.3)。
c语言程序设计实验指导(学生用)

C语言程序设计实验指导(学生用)计算机基础教研室《C语言程序设计》课程组2012年9月前言《C语言程序设计》是计算机科学技术系面向全校理工科开设的一门专业平台课程。
通过这门课程的学习,可以让学生了解程序设计的思想和方法,掌握高级语言程序设计的基本知识,提高问题求解和程序语言的应用能力。
《C语言程序设计实验指导书》是《C语言程序设计》的配套指导书。
本指导书本着“厚基础,重实践,以专业为导向”的原则,其中程序设计基础、数组、函数这三个实验项目是所有学科专业都必须掌握的,其他实验项目根据专业特点,设计了不同的要求:对于普通专业侧重循环、数组、函数、结构体等,生化类专业包含数据文件的处理,机械电子类专业包含位运算,数理类专业包含数值计算等内容。
每个实验本着循序渐进的原则,由简到难,逐步深化,另外配有相应的实验练习,学生可根据自己的情况选择完成。
本指导书所有程序代码均在Visual C++环境下调试通过。
本指导书在编写过程中得到了系领导的大力支持,王海燕主任在百忙中多次参加我们的课程研讨,庄波老师、宫锋老师在大纲编写、指导书任务设计方面给出了切实可行的意见和建议,在此深表感谢。
本指导书由计算机基础教研室《C语言程序设计》课程组全体人员共同编写,谢玉华老师负责统筹安排,实验一、实验二、实验三、实验七由张志芬老师编写,实验四、实验六由陈春华、薛红芳老师编写,实验五由陈庆燕老师编写,最后由张志芬老师统稿,在此一并感谢。
由于水平有限,本指导书难免存在疏漏和不足之处,望各位老师在使用过程中多提宝贵意见,有利于我们进一步改进。
《C语言程序设计》课程组2012年9月目录实验一基本控制结构的应用 (1)1.1 熟悉编程环境 (1)1.2 顺序结构程序设计 (1)1.3 选择结构程序设计 (2)1.4 循环结构程序设计 (4)实验二数组的应用 (7)2.1 一维数组的应用 (7)2.2 二维数组的应用 (10)2.3 字符数组的应用 (12)实验三函数的应用 (13)实验四位运算的综合应用 (15)实验五数据文件的处理 (22)实验六数值计算 (25)实验七简单学生成绩管理系统 (30)实验一基本控制结构的应用1.1 熟悉编程环境一、实验目的1.了解C语言程序的开发环境,掌握C语言源程序的编辑、编译、连接及运行过程;2.通过运行简单的C程序,初步了解C语言源程序的特点及基本结构。
C语言实验指导书

C语言上机实验指导实验一熟悉C语言程序开发环境一.目的要求1.熟悉在所用的计算机系统上如何编辑、编译、连接和运行一个C语言程序。
2.掌握C语言的数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法。
3.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加和自减运算符的使用。
4.通过运行简单的C语言程序,初步了解C语言程序的结构特点。
二.实验内容1.调用编辑程序,输入以下程序,并进行编译和运行。
熟悉所用的系统使用什么命令进行编译和连接运行的。
编译和连接后所得到的目标程序的后缀是什么形式?main( ){printf(“This is a c program.\n”);}2.从键盘依次输入两个整数,计算并输出这2个整数之差。
# include “stdio.h”main(){ float a,b,c;printf(“input a,,b,:\n”);scanf(“%d, %d,”,&a,&b);c=a-b;printf(“c=%d\n”,c);}具体要求:①在Turbo C或其他编译环境编辑窗口输入该程序,然后进行编译连接。
如果在编译过程中有错误发生,则仔细检查并修改程序,再进行编译连接,直到没有错误为止。
②运行时按程序中要求的格式依次输入下列2个数:212,843.输入并运行以下程序,分析结果,体会自增自减运算符的特点,上机验证;main( ){int i,j,m,n,u=0,v=0;i=8;j=10;m=++i;n=j++;u+=i--;n-=--j;pr intf(“i=%d,j=%d,m=%d,n=%d,u=%d,v=%d\n”,i,j,m,n,u,v);}4.输入并运行下面的程序。
main(){int m,n;m=120;n=112;printf(“%d\t%d\n”,m,n);}要求:①运行程序记下结果。
②在程序的最后增加一句:printf(“%c\t%c\n”,m,n);再运行程序,并分析结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++程序设计实验指导书实验一C++ 程序的运行环境和运行( 2 学时)实验名称:C++程序的运行环境和运行实验目的:1、熟悉C 与C++ 的编程区别;2、熟悉C++ 的函数重载。
实验要求:求两个数的平方和。
要求如下:1、有int ,float 和long 型的数据各3 个;2、重载SumSqure 函数求两个相同类型变量的平方和。
实验步骤:1、添加头文件#include <iostream> 和名字空间using namespace std。
若要使用cin 和cout 标准输入输出流,则必须添加上述两个内容。
2、构建重载SumSqure 函数。
SumSqure函数的功能是对输入的两个同类型形参a, b求其平方和,并将结果返回。
对于输入和返回的不同类型int,float,Io ng,其函数内部实现代码是一样的,所以可利用函数的重载写出三个SumSqure 函数。
3、main 函数中的赋值。
定义int,float,Io ng三种类型的数据,分别调用SumSqure函数,测试其结果。
4、调用SumSqure 函数。
注意SumSqure函数重载的调用,根据SumSqure函数的定义可知:实参必须是同一种类型的变量才能调用不同的SumSqure,针对不同类型求平方和。
实验二类与对象(一)( 4 学时)实验名称:类与对象(一)实验目的:1、掌握类的设计;2、掌握对象的创建;3、实现一个简单的成员函数设计。
实验要求:求 3 个长方体的体积,编写一个基于对象的程序,数据成员包括lenth ,width ,height 。
要求用成员函数实现以下功能:1、由键盘分别输入3 个长方体的长、宽、高;2、计算长方体的体积;3、输出3 个长方体的体积。
实验步骤:1、建立三个文件,分别存储长方体类的声明头文件,长方体类的定义文件和main 函数测试文件。
注意:类的头文件和类的定义实现文件的命名要一致!2、头文件信息:头文件长方体类的声明中,类成员变量有:lenth,width,height ;类成员函数有:VolumeCalculation(), InputData()。
注意:不用声明构造函数与析构函数。
3、长方体类定义文件:在定义文件中,需编写上面两个函数——VolumeCalculation 和InputData 的实现主体。
InputData 的作用是对某个对象的lenth,width,height 三个类成员变量赋值,VolumeCalculation 作用是用来返回lenth*width*height 的值,求出长方体的体积。
注意:不用在定义里写构造函数和析构函数。
4、main 函数中的成员函数的调用:在main 函数中用长方体类定义三个对象,分别对三个对象调用InputData 和VolumeCalculation 输入原始数据——长,宽,高,然后再输出体积。
实验三类和对象(二)( 6 学时)实验名称:类和对象(二)实验目的:1、掌握类的封装技术;2、掌握累的声明与类的实现分离技术;3、掌握对象的动态建立和释放;4、掌握静态成员变量和成员函数的应用。
实验要求:1、构造一个类CalculateFun ,公有部分包含构造、析构函数、外部接口函数void AllByOne() 、和静态成员函数static void ShowSequence()。
私有部分包含:void InsideCalculation()、void SetData()、int x、int y 和静态成员变量static int snCount。
2、构造函数CalculateFun()初始化x 和y 的值,InsideCalculation 和SetData 函数仅供AllByOne 函数调用,而外部main 函数中对于Calculation 的任意对象仅仅调用AllByOne 就可以实现从键盘上输入x、y的值,求出(x+2)*(y+3)的结果并显示出来。
其中SetData用于键盘输入x和y 的值,InsideCalculation 用于计算(x+2)*(y+3) 并显示结果。
3、建立void ObjectOperating(CalculateFun *pObject) 普通函数,功能是对形参中的对象指针调用其接口函数AllByOne(),并且调用静态成员函数ShowSequenee来显示是第几次调用对象。
4、main 函数中建立一个含三个元素的对象指针数组pArr ,分别对其三个元素new 出三个对象,并调用ObjectOperating 函数。
完了后用delete 释放new 出的内存。
实验步骤:1、建立三个文件,分别存储CalculateFun 类的的声明头文件、其定义实现文件和main 函数测试文件。
2、头文件信息:头文件类的声明中,按照实验要求1来添加各成员变量和成员函数。
3、类定义实现文件:通过对成员函数等编写具体实现内容,完成类的构造。
4、main 函数文件:参照实验说明4。
实验四运算符重载( 4 学时)实验名称:运算符重载实验目的:1、掌握普通运算符重载常用方法及应用;2、掌握输入输出流运算符重载的方法。
实验要求:1、编写矩阵类,定义矩阵类Matrix 中的private 类型的int 型成员变量matrixArray[2][3] ;2、定义类成员函数InputData ,对变量matrixArray 进行以此赋值;3、利用operator + 实现两个矩阵类对象的加法。
4、重载流插入运算符“<<”和流提取运算符“>>”,使之能用于该矩阵的输入和输出。
实验步骤:1、建立三个文件:三个文件分别存储Matrix 类的声明头文件、Matrix 类的定义实现文件和main 函数测试文件。
注意:类的头文件和类的定义实现文件的命名要一致!2、头文件信息:Matrix 类头文件中需要定义private 型的int 型成员变量matrixArray 。
声明public 类型的一个默认构造,一个Display 成员函数,显示矩阵的各个元素,和InputData 对matrixArray 进行数据的输入。
声明成员函数运算符操作Matrix operator + ( Matrix &mat )或友元函数Matrix operator + (Matrix &mat1, Matrix &mat2) 。
将流重载符都声明为用友元函数,friend istream& operator>>(istream &in,Matrix &m) 和friend ostream& operator<<(ostream&,Matrix&);3、类定义文件:构造函数可在函数体内部将matrixArray 进行初始化为0(用两个for 循环依次对每个元素赋值为0。
InputData 函数依次输入每个元素的值。
Display 函数显示矩阵的每个元素,在屏幕上的打印效果为2行3列。
operator +函数实现两个矩阵的每个元素值的相加。
两个流重载运算符分别实现矩阵的输入和输出。
4、main 函数:定义两个Matrix 类的对象,并依次调用InputData 进行赋值,然后再调用operator+ 函数,对两个对象进行相加,再将相加后的结果用Display 函数显示出来,数据的输入和输出要调用流重载运算符所在的友元函数。
实验五继承与派生( 6 学时)实验名称:派生与继承实验目的:1、掌握类的继承、派生构造函数设计;2、掌握protected 类型的用法。
实验要求:先定义一个基类Pers on, Person里有5个protected类型的成员,分别是:stri ng name (姓名)、int age (年龄)、char sex (性另U)、stri ng address (地址)、teleph one (电话)。
然后分别定义Teacher (教师)类和Cadre (干部)类,分别用这两个类虚继承Person 类,把其作为虚基类。
再采用多重继承方式由这两个类派生出新类Teacher_Cadre (教师兼干部)类,注意Teacher_Cadre构造函数初始化的问题。
要求:(1 )在Teacher类中还包含数据成员title (职称),在Cadre类中还包含数据成员post (职务))在Teacher_Cadre类中还包含数据成员wages (工资)。
(2)对Teacher和Cadre类的声明中都添加display函数,其函数定义里要输出各自类里所有成员数据(包括继承的Person 里的数据)。
(3)在类体中声明成员函数,在类外定义成员函数。
(4)在派生类Teacher_Cadre的成员函数show中调用Teacher类中的display函数,并用cout 语句输出该类自己定义的变量wage。
实验步骤:1 、建立三个文件:三个文件分别存储Person、Teacher、Cadre和Teacher_Cadre类的声明头文件、其定义文件和main 函数测试文件。
注意:类的头文件和类的定义实现文件的命名要一致!2、头文件信息:头文件声明中要把Teacher、Cadre和Teacher_Cadre三个类的声明全写上。
Teacher、Cadre类声明中要含有void display ()函数用以显示Teacher和Cadre类里的所有成员变量,Teacher_Cadre中也声明一个void show()函数,功能见下一步。
3、类定义文件:Teacher类中display函数中将其类的所有成员变量都输出。
在Teacher_Cadre中成员函数首先利用Teacher类中的show函数首先调用Teacher类中的display函数输出所有Teacher 类中的成员变量,然后再输出Teacher_Cadre类中的wages变量。
4、main 函数:main函数里只需定义一个Teacher_Cadre类的对象,并对其初始化,然后调用show 函数,看看显示的是什么情况。
想想其调用原理。
实验六多态性与虚函数( 6 学时)实验名称:多态性与虚函数实验目的:掌握类的多重继承方法。
实验要求:写一个程序,定义抽象基类Shape,由它派生出5个派生类:Circle (圆形)、Square (正方形)、Rectangle (矩形)、Trapezoid (梯形)、Triangle (三角形)。
用虚函数分别计算几种图形面积,并求他们的和。
要求用基类指针数组,使它的每一个元素指向一个派生类对象。
实验步骤:1、建立一个各种累声明的头文件和一个定义实现文件:将Shape、Circle 、Square、Rectangle、Trapezoid、Triangle 类的声明和实现分别写在一个头文件和一个定义文件里。