C++面向对象_实验报告.docVIP

  • 51
  • 0
  • 约6.65千字
  • 约 10页
  • 2016-08-15 发布于重庆
  • 举报
C面向对象_实验报告

实验1 函数的设计与使用 一、实验目的 1、掌握C++中函数的语法格式及各部分的含义。 2、掌握函数参数列表的分析与设计方法。 3、掌握函数参数传递的三种方式。 4、掌握函数调试方法。 5、掌握函数调用方法。 二、实验任务 1、设计并应用一个函数,完成对用户输入的介于1-15之间的整数的阶乘的求取。如5!=120。 2、设计并应用一个函数,完成对用户输入的任意整数进行中文大写数字形式的转换。如12壹拾贰。 3、设计并应用一个函数,完成对用户输入的整数数组进行元素倒置。如1 2 3倒置为3 2 1。 三、主要代码 四、实验总结 实验2 数组与指针 一、实验目的 1、学习使用数组。 2、学习字符串数据的组织和处理。 3、掌握指针的使用方法。 4、练习通过debug观察指针的内容及其所指的对象的内容。 5、练习通过动态内存分配实现动态数组,并体会指针在其中的作用。 二、实验任务 1、测试3X3矩阵转置函数的程序,程序如下: #include iostream using namespace std; void move (int matrix[3][3]) { int i, j, k; for(i=0; i3; i++) for (j=0; ji; j++) { k = matrix[i][j]; matrix[i][j] = matrix[j][i]; matrix[j][i] = k; } } int main() { int i, j; int data[3][3]; cout 输入矩阵的元素 endl; for(i=0; i3; i++) for (j=0; j3; j++) { cout 第 i+1 行第 j+1 个元素为:; cin data[i][j]; } cout 输入的矩阵的为: endl; for(i=0; i3; i++) { for (j=0; j3; j++) cout data[i][j] ; cout endl; } move(data); cout 转置后的矩阵的为: endl; for(i=0; i3; i++) { for (j=0; j3; j++) cout data[i][j] ; cout endl; } } 2、使用动态内存分配生成动态数组来重新设计一个3X3矩阵转置函数,使用指针实现函数的功能。 3、编程实现两字符串的连接。要求使用字符数组保存字符串,不要使用系统函数。 4、使用String类定义字符串对象,重新实现上一小题。 (选作)5、定义一个Employee类,其中包括姓名、街道地址、城市和邮编等属性,以及change_name( )和display()等函数。display()显示姓名、街道地址、城市和邮编等属性,change_name()改变对象的姓名属性。实现并测试这个类。(提示:对字符数组的赋值可以使用字符串拷贝函数strcpy(char *,char*,name))。 (选作)6、定义包含个5元素的对象数组,每个元素都是Employee类型的对象。 实验3 类与对象 实验目的 掌握类的声明和使用。 掌握类的声明和对象的声明。 复习具有不同访问属性的成员的访问方式。 观察构造函数和析构函数的执行过程。 学习类的组合使用方法。 使用VC++的debug调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。 实验任务 1 声明一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop。其中,rank为枚举类型CPU_Rank,声明为enum CPU_Rank{P1=1,P2,P3,P4,P5,P6,P7},frequency为单位是MHz的整型数,voltage为浮点型的电压值。观察构造函数和析构函数的调用顺序。 2 声明一个简单的Computer类,有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等等,有两个公有成员函数run、stop。cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,声明并实现这个类。 3 (选作)设计一个用于人事管理的People(人员)类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:number(编号)、sex(性别)、birthday(出生日期)、id(身份证号)等等。其中“出生日期”声明为一个“日期”类内嵌子对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数

文档评论(0)

1亿VIP精品文档

相关文档