C++课程实践报告试题及答案

上传人:慢*** 文档编号:178128954 上传时间:2021-04-01 格式:DOC 页数:17 大小:1.96MB
返回 下载 相关 举报
C++课程实践报告试题及答案_第1页
第1页 / 共17页
C++课程实践报告试题及答案_第2页
第2页 / 共17页
C++课程实践报告试题及答案_第3页
第3页 / 共17页
C++课程实践报告试题及答案_第4页
第4页 / 共17页
C++课程实践报告试题及答案_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《C++课程实践报告试题及答案》由会员分享,可在线阅读,更多相关《C++课程实践报告试题及答案(17页珍藏版)》请在金锄头文库上搜索。

1、任务一一、实践任务1试建立一个类PP,求出下列多项式的前n项的值。 二、详细设计1、类的描述与定义(1)私有数据成员l int n:前若干项的项数。l double x:存放x的值。l double *p:根据n的大小动态申请存放Pn(x) 前n项的数组空间。(2)公有成员函数l PP(int num,double x1):构造函数,初始化数据成员n和x,使p指向动态申请的数组空间。l PP():析构函数,释放p指向的动态内存空间。l double fun(int n1,double x):递归函数,用于求多项式的第n1项。注意:将递归公式中的n用作函数参数。本函数供process函数调用。l

2、 void process( ):完成求前n项的工作,并将它们存放到p指向的动态数组中。l void show( ):输出n和x,并将前n项以每行4个数的形式输出到屏幕上。2、主要函数设计在主函数中完成对该类的测试。先输入num和x1,并定义一个PP类的对象items,用num和x1初始化items的成员n和x,调用items的成员函数,求出并输出多项式前num项的值。三、源程序清单#includeclass PPprivate:int n;double x;double*p;public:PP(int num,double x1)n=num;x=x1;p=new doublen;PP()if

3、(p) delete p;double fun(int n1,double x);void process();void show();double PP:fun(int n1,double x)if(n1=0) return 1;else if(n1=1) return x; else if(n11) return (2*n1-1)*x*fun(n1-1,x)-(n1-1)*fun(n1-2,x)/n1;void PP:process()for(int i=0;in;i+)pi=fun(i,x);void PP:show()coutn=nendlx=xendl;for(int i=0;in;

4、i+)coutpitt;if(i+1)%4=0) coutendl;void main()int num;double x1;coutnumx1;PP items(num,x1);items.process();items.show();任务二一、实践任务2试建立一个类SP,求,另有辅助函数power(m,n)用于求。二、详细设计1、类的描述与定义(1)私有数据成员l int n,k:存放公式中n和k的值;(2)公有成员函数l SP(int n1,int k1):构造函数,初始化成员数据n和k。l int power(int m, int n):求mn。l int fun( ):求公式的累加和

5、。l void show( ):输出求得的结果。2、主要函数设计在主程序中定义对象s,对该类进行测试。三、源程序清单#includeclass SPprivate:int n,k;public:SP(int n1,int k1)n=n1;k=k1;int power(int m,int n);int fun();void show();int SP:power(int m,int n) int s=1;for(int i=0;in;i+) s*=m;return s;int SP:fun()int s=0;for(int i=1;i=n;i+)s+=power(i,k);return s;vo

6、id SP:show()coutf(n,k)=fun()endl;void main()int n1,k1;coutn1k1;SP s(n1,k1);s.fun();s.show();任务三一、实践任务3建立一个类MOVE,不进行排序,将数组中小于平均值的元素放到数组的左边,大于平均值的元素放到数组的右边。二、详细设计1、类的描述与定义(1)私有数据成员l float array20:一维整型数组。l int n:数组中元素的个数。(2)公有成员函数l MOVE(float b,int m):构造函数,初始化成员数据。l void average():输出平均值,并将数组中的元素按要求重新放置

7、。l void print():输出一维数组。2、主要函数设计在主程序中用数据1.3,6.2,3,9.1,4.8,7.4,5.6,9.2,2.3对该类进行测试。三、源程序清单#includeclass MOVEprivate:float array20;int n;public:MOVE(float b,int m)for(int i=0;im;i+)arrayi=bi;n=m;void average();void print();MOVE();void MOVE:average()float ave=0;int i,j;for(i=0;in;i+)ave+=arrayi;ave/=n;co

8、utaveendl;float turn20;j=0;for(i=0;in;i+)if(arrayi=ave)turnj=arrayi;j+;j=0;for(i=0;iave)turnn-1-j=arrayi;j+;for(i=0;in;i+)arrayi=turni;void MOVE:print()for(int i=0;in;i+)coutarrayi ;void main()float b1=1.3,6.2,3,9.1,4.8,7.4,5.6,9.2,2.3;int num;num=sizeof(b1)/sizeof(float);MOVE s(b1,num);s.average();

9、s.print();任务四一、实践任务4建立一个类MOVE,将数组中最大元素的值与最小元素的值互换。二、详细设计1、类的描述与定义(1)私有数据成员l int *array:一维整型数组。l int n:数组中元素的个数。(2)公有成员函数l MOVE(int b,int m):构造函数,初始化成员数据。l void exchange():输出平均值,并将数组中的元素按要求重新放置。l void print():输出一维数组。l MOVE():析构函数。2、主要函数设计在主程序中用数据21,65,43,87,12,84,44,97,32,55对该类进行测试。三、源程序清单#includecla

10、ss MOVEprivate:int *array;int n;public:MOVE(int b,int m)array=new intm;n=m;for(int i=0;im;i+)arrayi=bi;void exchange();void print();MOVE()if(array) delete array;void MOVE:exchange() float ave=0; for(int i=0;in;i+)ave+=arrayi;ave/=n;cout平均值为aveendl;int max,min;max=min=array0;int m;for(i=0,m=0;i=max)

11、m=i,max=arrayi;int l;for(i=0,l=0;in;i+) if(arrayimax) l=i,max=arrayi;i=arraym,arraym=arrayl,arrayl=i; void MOVE:print() for(int i=0;in;i+)coutarrayi ;void main() int text=21,65,43,87,12,84,44,97,32,55;int num;num=sizeof(text)/sizeof(int);MOVE s(text,num);s.print();coutendl;s.exchange();s.print();任务五

12、一、实践任务定义一个类Palindrome,实现绝对回文数。设计一个算法实现对任意整型数字判断是否为绝对回文数。所谓绝对回文数,是指十进制数和二进制数均对称的数。二、详细设计1、类的描述与定义(1)私有数据成员l int n:整型数字。l int y: 标记是否为回文数。(2)公有成员函数l Palindrome (int x) :构造函数,根据x参数初始化数据成员n,y初始化为0。l void huiwen () :判断数n是否为绝对回文数。l void show( ) :若该数为回文数,则在屏幕显示。2、主要函数设计在主程序中定义int a,由键盘输入数字。定义一个Palindrome类对象p,用a初始化p,完成对该类的测试。三、源程序清单#includeios

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题 > 初中试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号