}
运行结果:
2、设计处理二维数组的程序,要求如下。
(1)定义函数void input(int a[][4],int n),用于对二维数组进行初始化。 (2)定义函数void output(int (*a)[4],int n),用于输出二维数组中的元素。
(3)定义函数int search_max(int a[][4],int n,int &cool,int &vol),用于查找二维数组a中的最大值元素,并记录其行下标和列下标,其中最大值元素的值通过函数返回值带回主函数,对应的下标分别存储到col和vol中。 (4)在主函数中进行测试。 #include
int k[][4]={{1,2,3,4},{6,7,8,9},{10,11,12,13}}; for(int i=0;i void output(int(*a)[4],int n){ for(int i=0;i void main(){ int a[10][4];int col,vol; input(a,3); output(a,3); cout< 运行结果: 3、设计程序,求两个整数的最小公倍数。 #include if(k<=0) cout<<\请输入有效数据!\ else for(k;k<=x*y;k++) if(k%x==0&&k%y==0){ cout<<\最小公倍数\ break; } } void main(){ int a,b; cin>>a>>b; fun(a,b); } 运行结果: 第七章: 1、定义一个Point类表示平面上的一个点,再定义一个Rectangle类表示平面上的矩形,用Point类的对象作为Rectanlge类的成员描述平面上的矩形的顶点坐标。要求类Point中有相应的成员函数可以读取点的坐标值,类Rectangle中含有一个函数,用以计算并输出矩形的面积及顶点坐标。在主函数中对类Rectangle进行测试。 #include Point(float x,float y){a=x;b=y;} ~Point(){}; float geta(){return a;}; float getb(){return b;}; }; class Rectangle{ float area,x1,y1,x2,y2; public: Rectangle(Point p1,Point p2){ x1=p1.geta(); y1=p1.getb(); x2=p2.geta(); y2=p2.getb(); } void print(){ area=fabs(x1-x2)*fabs(y1-y2); cout<<\面积是:\ cout<<\顶点坐标是(\< void main(){ Point p1(2,3); Point p2(6,7); Rectangle r1(p1,p2); r1.print(); } 运行结果: 2、定义一个类,用于删除字符串中多余的字符,使其中的字符互不相同,具体要求如下: (1)类的数据成员(字符串)用指针表示,并在构造函数中根据参数的实际情况为该成员指针申请内存空间。 (2)删除多余字符串时,只能在原字符串空间中进行,不得借助其他辅助空间。 #include char *s; public: D(char *p){ int n=strlen(p); s=new char[n+1]; strcpy(s,p); } ~D(){delete []s;} void deal(); void print(); }; void D::deal(){ int i,j,k,flag; for(i=0;s[i];i++) for(j=i+1;s[j];j++){ if(s[i]==s[j]){ k=j; flag=1; while(s[k]){ s[k]=s[k+1]; k++; } if(flag=1){ flag=0; j--; } } } void D::print(){ cout< void main(){ char a[100]; cin.getline(a,100); D d1(a); d1.deal(); d1.print(); } } 运行结果: 第八章: 1、教师月工资的计算公式为:基本工资+课时补贴。教授的基本工资为5000元,补贴为50元/课时;讲师的基本工资为3000元,补贴为20元/课时。设计一个程序求教授和讲师的月工资,具体要求如下。 (1)定义教师类Teacher作为基类,包含数据成员姓名、月工资和授课时数,以及构造函数(初始化姓名和月授课时数)、输出数据成员的函数。 (2)定义教师类Teacher的公有派生类Professor 表示教授,公有派生类Lecturer表示讲师,并分别计算其月工资。 (3)在主函数中对定义的类进行测试。 #include char *name;float wage;float hour; public: Teacher(char *p,float w,float t){ int n=strlen(p); name=new char[n+1]; strcpy(name,p); wage=w; hour=t; } ~Teacher(){delete []name;} void print(){cout<<\姓名\月工资\授课时数\}; class Professor:public Teacher{ public: Professor(char *p,float t):Teacher(p,5000+50*t,t){} }; class Lecturer:public Teacher{ public: Lecturer(char *p,float t):Teacher(p,3000+20*t,t){} }; void main(){ char p1[10]=\float t=10; Professor k1(p1,t); k1.print(); Lecturer k2(p2,t); k2.print();