计算机程序设计实践
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
江苏科技大学
课程实践报告
设计题目: 计算机程序设计实践(VC++)
设计时间: 2015. 3.9 至2015. 3.16
学院: 数理学院
专业班级: 13级信息与计算科学1班
学生姓名: 陈明敏学号********** ****: **
2015年5月1日
一、 实践任务
任务一:试建立一个类SP ,求(,)123k k k
k f n k n =+++
+,另有辅助函数power ()用
于求
n m 。具体要求如下。 (1)私有数据成员。
Int n ,k :存放公式中n 和k 的值。 (2)公有成员函数。
①SP(int n1,int k1):构造函数,初始化成员数据n 和k 。 ②int power(int m,int n):求n m 。 ③int fun():求公式的累加和。 ④void show():输出求得的结果。
二、源程序清单
#include
SP(int n1,int k1);
int power(int m,int n); int fun(); void show (); };
SP::SP(int n1,int k1){ n=n1; k=k1; }
int SP::power(int m,int n){ int a=m;
for(int i=1;i a*=m; } return a; } int SP::fun(){ int a=0; for(int i=1;i<=n;i++) { a+=power(i,k); } return a; } void SP::show() { cout< } void main() { int a; int b; cin>>a>>b; SP s(a,b); s.fun(); s.show(); } 三、实践小结 本题用了类的方法求解,让我学会了用构造函数和析构函数写程序,本题还使用了递归的方法 四、运行结果 一、实践任务 任务二:建立一个STRING类,将一个字符串交叉插入到另一个字符串中(假定两字符串等长)。例如,将字符串“abcde”交叉插入字符串“ABCDE”的结果为“aAbBcCdDeE”或“AaBbCcDdEe”。具体要求如下。 (1)私有数据成员。 ①char str1[60]:存放被插入的字符串。 ②char str2[40]:存放待插入的字符串。 ③char str3[100]:存放插入后的字符串。 (2)公有成员函数。 ①STRING(char *s1,char *s2):构造函数,用s1和s2初始化str1和str2。 ②void process():将str2中的字符串插入到str1中。 ③void print():输出插入后的字符串。 (3)在主程序中定义STRING类的对象test对该类进行测试。 二、源程序清单 #include #include class STRING{ private: char str1[80]; char str2[40]; public: STRING(char *s1,char *s2); void process(); void print(); }; STRING::STRING(char*s1,char *s2){ strcpy(str1,s1); strcpy(str2,s2); } void STRING::process(){ char s[80];char*p=str1;char*q=str2; int n=2*strlen(str1)-1; for(int i=0;i s[i]=*p++; i++; s[i]=*q++; } s[i]='\0'; strcpy(str1,s); } void STRING::print(){ cout< } void main(){ char s1[80]={"ABCDE"},s2[40]={"abcde"}; STRING test(s1,s2); test.process(); test.print(); } 三、实践小结 本题用了类的方法求解,让我学会了用构造函数和析构函数写程序,还让我更熟练掌握了有关字符串的排序的求解方式。 四、运行结果 一、实践任务 任务三:建立一个类MOVE,对数组中元素进行循环换位,即每个元素后移三位,最后三个元素移到最前面。具体要求如下。 (1)私有数据成员。 ①int array[20]:一维整型数组。 ②int n:数组中元素的个数。 (2)公有成员函数。 ①MOVE(int b[],int m):构造函数,初始化成员数据。 ②void change():进行循环换位。 ③void print()输出一维数组。 (3)在主程序中用数据{21,65,43,87,12,84,44,97,32,55}对该类进行测试。 二、源程序清单: #include class MOVE { private: int array[20]; int n; public: