1、二、实验内容1. 面向过程题目(10题)(1)题目:对一维数组进行排序(要求对n个数的排序用函数实现,排序的方法:1插入法(间接)2冒泡法) 源代码 (2)题目求素数100-1000(1判断一个数是否是素数用一个函数来实现2数组的方法),1000以内所有的完数(数的因子) (3)题目对一个字符串逆序(用函数来实现) (4)题目最大公约数和最小公倍数(用2种方法来实现:辗转相除法来实现) (5)题目设计一个函数将一维数组的元素循环右移一位。在主函数中定义int a10=3,7,4,1,8,0,5,9,7,1,调用该函数并输出数组中的元素。 (6)题目把一个字符串里的所有大写字母转换成小写字母(用
2、函数来实现) (7)题目把数字字符串转换成数值”123456”-123456(用指针的方法来实现) (8)题目数字分离(1234逆序输出和正序输出)与数字拼接问题int a5=2,21,321,0,0变成221321 (9)题目从键盘输入两个字符串,分别存放到字符数组s1,s2中,将s2中存放的字符串拼接到s1中 (10)题目函数递归问题:求n的阶乘,的近似值2. 面向对象题目(5题)设计一个长方体类Box,它能计算并输出长方体的体积和表面积。具体要求如下:(1)私有数据成员 数据成员float a,b,c; / 分别存放长方体的三条边长 数据成员float volume,area; /分别存
3、放长方体的体积和表面积(2)公有成员函数 Box(float p,float q,float r); /构造函数,为边长赋值 void getvolume(); /计算体积 void getarea(); /计算表面积 void disp() /输出结果在主函数中定义对象obj,取边长分别为4,5,6,计算长方体的体积和表面积,并输出结果。源代码把定义直角坐标系上的一个点的类point作为基类,派生出描述一条直线的类line,求出两点间的距离。 具体要求如下:(1)类point 保护数据成员: float x1,y1; /点的坐标 公有构造函数: point(float,float); /初始
4、化x1、y1(2)类line float x2,y2; /为直线的另一个点的坐标 line(float,float,float,float); /前两个参数为第一个点(x1,y1)初始化; /后两个参数为第二个点(x2,y2)初始化 公有成员函数: float dis(); /求点(x1,y1)到点(x2,y2)之间的距离 /计算公式:距离的平方=(x1-x2)的平方+(y1-y2)的平方(3)在主函数中,通过键盘输入两个点的坐标,定义line类的对象lin,计算并且输出这两点之间的距离。定义一个圆类circle作为基类,公有派生出圆柱体的类colum,求出圆柱体的体积。(1)类circle
5、float r; /圆的半径 circle(float); /初始化r float getr(); /取圆的半径rdouble area(); /求圆的面积(2)类colum float h; /圆柱体的高 colum(float,float); /初始化r和h float geth(); /取圆柱体的高hdouble vol (); /求圆柱体的体积(3)编写一个程序测试该类,测试数据及要求如下: 圆柱体对象:v(1.0,3.0); 本程序的执行结果如下: 圆柱体属性数据: 半径:1米 高度:3米 面积:3.14平方米 体积:9.42立方米题目: 定义一个类为形状,由它公有派生出圆、正方形、
6、长方形。利用多态性以虚函数的形式完成计算圆、正方形、长方形的面积。(1)形状类名为shape, 圆、正方形、长方形的类名分别为circle,square,rectangle。(2)基类shape中只有一个公有的成员函数:virtual double area(); 用于求面积,操作为空。(3)各派生类的数据成员均是私有的,数据类型为double型。 圆的半径为r,正方形的边长为a、长方形的边长为a,b, 各派生类均需要定义公有的构造函数。(4)设计一个完整的程序,分别计算圆、正方形、长方形的面积并输出结果。 测试数据如下: 圆类对象:C(0.8)、正方形类对象:S(3.2)和长方形类对象:R(
7、4.1,5)。 输出结果为: 园的面积是2.0096 正方形的面积是10.24 长方形的面积是20.5 设计一个圆类circle和一个桌子类table,另设计一个圆桌类roundtable,它是从前两个类派生的,要求输出一个圆桌的高度、面积和颜色等数据。(1)circle类 私有数据成员:double radius;circle(double); /初始化radiusgetarea();/求圆面积(2)table类double height; /桌子的高度table(double); /初始化heightgetheight(); /返回高度(3)roundtable类 继承所有上述类的数据成员和成员函数, 添加了私有数据成员:char *color; /圆桌的颜色 添加了公有构造函数:roundtable(double h, double r, char c) : circle (r) , table (h); /动态生成color,并初始化color 添加了公有成员函数:char *getcolor();/返回颜色(4)编写一个程序测试该类,测试数据及要求如下: 圆桌类对象:rt(0.8,1.2,黑色); 圆桌属性数据:08米 45216平方米 颜色:黑色 三、实验体会四、总结评阅
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1