面向对象程序设计结课作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象程序设计结课
作业
集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]
201509考试批次
《面向对象程序设计》结课作业学生姓名陈明飞学习中心黑龙江鸡西市委党校奥鹏学习中心
学号45考号9
专业计算机科学与技术年级层次 1403
北京语言大学网络教育学院
《面向对象程序设计》结课作业
注意:
本学期所布置的结课作业,请同学一律按照以下要求执行:
1) 结课作业提交起止时间:2015年8月1日—9月28日。(届时平台自动关闭,逾期不予接收。)
2) 结课作业课程均需通过“离线作业”栏目提交电子版,学院不收取纸介的结课作业,以纸介回寄的作业一律视为无效;
3)截止日期前可多次提交,平台只保留最后一次提交的文档,阅卷时以最后一次提交的结课作业为准,截止日期过后将关闭平台,逾期不交或科目提交错误者,按0分处理;
4) 提交文档要求:提交的文档格式为doc、rar,大小10M以内;
5) 必须严格按照每门课程的答题要求完成作业,没有按照学院要求来做的结课作业,将酌情扣分。
一、【程序分析题】(本大题共5小题,请任选其中一道题作答,答题时请注明题号,本题30分,本题要求读懂题目中的程序或函数,写出程序或函数的功能)
1、#include<>
void main()
{
int i,s=0;
for(i=2;i<=30;i+=2) s+=i*i;
cout<<"s="<
}
1、答:程序的功能是:计算并输出22+42+62+……+302的值
2、int s1(int n)
{
int x;
if(n==1) x=1;
else x=s1(n-1)+n*n;
return x;
}
3、void fun5(char* a, const char* b)
{
while(*b) *a++=*b++;
*a=0;
}
4、void fun3(int a[][N], int m, int n, int& row, int& col) {
int x=a[0][0];
row=col=0;
for(int i=0;i for(int j=0;j if(a[i][j]>x) { x=a[i][j]; row=i; col=j; } } 5、char* f8(char* str1, const char* str2) { int i=0,j=0; while(str1[i]) i++; while(str2[j]) str1[i++]=str2[j++] ; str1[i]='\0'; return str1; } 二、【编写程序实现算法】(本大题共5小题,请任选其中一道题作答,答题时请注明题号,本题30分,根据题目要求编写算法实现,要求程序没有语法错误) 1、按照函数原型语句“void p(int n);”编写一个递归函数显示出如下图形,此图形是n=5的情况。 55555 4444 333 22 1 1、答: #include<> void p(int n) { if(n==1) { printf("1\n"); return; }else { for(int i=1; i<=n; i++) { printf("%d",n); } printf("\n"); p(n-1); } } void main() { p(5); } 2、按照函数原型语句“void p(int n);”编写一个递归函数显示出如下图形,此图形是n=5的情况。 1 22 333 4444 55555 3、按照下面函数原型语句编写一个递归函数计算出数组a中n个元素的平方和并返回。 int f(int a[],int n); 4、根据下面类中MaxMin 函数成员的原型和注释写出它的类外定义。class AA { int* a; int n; int MS; public: void InitAA(int aa[], int nn, int ms) { if(nn>ms) {cout<<"Error!"< MS=ms; n=nn; a=new int[MS]; for(int i=0; i } int MaxMin(int& x, int& y); //从数组a的前n个元素中求出 //最大值和最小值,并分别由引用参数x和y带回, //同时若n大于0则返回1,否则返回0。 }; 5、如果A和B都是m行n列矩阵,且它们对应元素相等,则A= =B。试定义矩阵类, 对“= =”运算符重载。 三、【程序设计题】(本大题共5小题,请任选其中一道题作答,答题时请注明题号,本题40分,根据题目要求编写完整程序实现,要求程序能够正常运行,没有语法错误) 1、编写一个程序,计算三角形、正方形和圆形三种图形的面积和周长。(用多态性实现) 2、已有若干个学生数据,包括学号、姓名、成绩,编写程序要求输出这些学生数据并计算平均分。 3、应用C++的多态性编写一个程序,编写程序计算正方体、球体和圆柱体的表面积和体积。 4、编写一个程序,实现图书和杂志销售管理。当输入一系列图书和杂志销售记录后,将销售良好(图书每月售500本以上,杂志每月2500本以上)的图书和杂志名称显示出来。 4、答: #include #include