实验06 数组、指针与字符串(4学时)
(第6章 数组、指针与字符串)
一、实验目的
(1) 学习使用数组数据对象。 (2) 学习字符串数据的组织和处理。 (3) 学习标准C++库的使用。 (4) 掌握指针的使用方法。 (5) 练习通过调试功能观察指针的内容及其所指的对象的内容。 (6) 练习通过动态内存分配实现动态数组,并体会指针在其中的作用。 (7) 分别使用字符数组和标准C++库练习处理字符串的方法。 二、实验任务
6_1(习题6-25)编写并测试3×3矩阵转置函数,使用数组保存3×3矩阵。 6_2(习题6-26)使用动态内存分配生成动态数组来重新完成上题(n阶方阵),使用指针实现函数的功能。
6_3 编程实现两字符串的连接。要求使用字符数组保存字符串,不要使用系统函数。
6_4 使用string类声明字符串对象,重新实现上一小题。 6_5(习题6-27)声明一个Employee类。
其中包括姓名、街道地址、城市和邮编等属性,以及change_name()和display()等函数。display()显示姓名、街道地址、城市和邮编等属性,change_name()改变对象的姓名属性,实现并测试这个类。
6_6(习题6-27)声明包含5个元素的对象数组,每个元素都是Employee类型的对象。
6_7 修改实验4中的people(人员)类。
具有的属性如下:姓名char name[11]、编号char number[7]、性别char sex[3]、生日birthday、身份证号char id[16]。其中“出生日期”声明为一个“日期”类内嵌子对象。
用成员函数实现对人员信息的录入和显示。
要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数、聚集。 在测试程序中声明people类的对象数组,录入数据并显示。
1
三、实验步骤
1.(编程,习题6-25)编写矩阵转置函数,输入参数为3×3整型数组。
使用循环语句实现矩阵元素的行列对调,注意在循环语句中究竟需要对哪些元素进行操作,编写main()函数实现输入输出。程序名:lab6_1.cpp。
参考运行结果:
★ 程序及运行结果:
//lab6_1.cpp #include } for(i=0;i<3;i++){ for(j=0;j<3;j++) cout< 使用指针对数组元素进行操作,在main()函数中使用new操作符分配内存生成动态数组。通过调试功能观察指针的内容及其所指的对象中的内容。程序名:lab6_2.cpp。 注:可使用一维动态数组,或二维动态数组。 ★ 程序及运行结果: (1) 使用一维动态数组表示方阵。 //lab6_2.cpp #include } } void main(){ int i,j,n,*mat; cout<<\输入方阵的阶数:\; } cin>>n; mat=new int[n*n]; cout<<\输入\< (2) 使用二维动态数组表示方阵。(参考实验提示) //lab6_2.cpp #include