C++第6周项目2 - 程序填空

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565,本周题目链接:http://blog.csdn.net/sxhelijian/article/details/8748730

【题目】程序填空:按要求将缺少的代码填进去,经调试确认符合要求

a. 用指针访问对象

class A {
private:
    int a;
public:
    A() {a=0;}
    ___(1)___{}  //定义构造函数,用参数aa初始化数据成员a
};
main() {
    ___(2)___;  //定义类A的指针对象p
    ___(3)__;   //用p指向动态对象并初始化为整数
}

参考答案:

(1) A(int aa):a(aa)

(2) A *p

(3) p=newA(5)

 

b.指针类型作为成员函数的参数

#include<iostream.h>
#include<stdlib.h>
class A {
private:
    int *a;
    int n;
    int MaxLen;
public:
    A(): a(0), n(0), MaxLen(0) {}
    A(int*aa, int nn, intMM);
    ~A();
    int GetValue(int i) {return a[i];}//函数体返回a[i]的值
};
A::A(int*aa, int nn, intMM) {
    n=nn;
    MaxLen=MM;
    if(n>MaxLen) exit(1);
    a=new int[MaxLen];
    ___(1)___;  //以i为循环变量把aa数组中每个元素值传送给a数组的对应元素中
}
___(2)___   //析构函数的类外定义,释放指针型数据a所指向的空间

void main()
{
    int b[10]={1,2,3,4,5,6,7,8,9,10};
    A r(b,10,10);
    int i,s=0;
    ___(3)___ ; //以i为循环变量,把r对象的a数据成员中的每个元素值依次累加到s中
    cout<<"s="<<s<<endl;
}

参考 答案:

(1) for(int i=0; i<n; i++) a[i]=aa[i]

(2) A::~A() {delete []a;}

(3) for(i=0;i<10; i++) s+=r.GetValue(i)

 

时间: 2024-08-20 18:26:28

C++第6周项目2 - 程序填空的相关文章

2014秋C++ 第15周项目2程序阅读(加注释)

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目2-阅读程序] 阅读下面的程序,先写出其运行结果,再运行对比. 支招1:按课堂上老师讲课的方式,将变量对应内存的"框子"画出来,用大脑当CPU,写出变量的变化过程: 支招2:单步执行程序,在监视(watch)窗口中观察变量的动态变化,从而掌握程序的运行机理. (1)

C++实践参考:程序填空(范型程序设计)

[项目:程序填空]下面程序运行后,输出结果如下: 请填空将程序补充完整. #include <iostream> #include <vector> #include <algorithm> #include <functional> using namespace std; void Show(double); int main() { double arr1[5] = {2, 4, 8, 10, 16}; double arr2[5] = {1, 3,

C++第4周项目3 - 多文件组织程序

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565,本周题目链接:http://blog.csdn.net/sxhelijian/article/details/8690895 [项目3 - 程序的多文件组织]当程序规模变大后,一个程序用多个文件组织,便于组织生产.这样,不必每次都重复对所有代码进行编译,而只需编译一次即可.把编译后所形成的目标文件保存起来,以后在需要时把它调出来直接与程序的目标文件相连接即可. C++中一

C++第6周项目6 - 有指针成员的工资类

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565,本周题目链接:http://blog.csdn.net/sxhelijian/article/details/8748730 [项目6]设计一个工资类(Salary),其中的数据成员包括职工人数(number,人数不定)和这些职工的工资salary,要求输入职工工资并逐个输出.提示1:第4周项目5 数组作数据成员曾经处理过类似问题,但固定大小的数组,可能造成空间的浪费,也

2013级C++第12周项目——函数应用

课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759 [项目1-当年第几天] 定义一个函数,其参数为年.月.日的值,返回这一天为该年的第几天.要求在main函数中输入年月日,然后调用这个函数求值,并在main函数中输出结果. [项目2-太乐了]先听故事,再编程序. 故事是这样的:话说sin和cos是一对夫妇.一天,sin去听相声了,cos在家.过了一会,有人敲门,cos开门一看,是一个不认识的多项式函数.cos问:你是谁啊?

2015级C++第7周项目 友元、共享数据保护、多文件结构

[项目1-成员函数.友元函数和一般函数有区别]参考解答 (1)阅读下面的程序,体会注释中的说明(要运行程序,请找到课程主页并复制代码) //例:使用成员函数.友元函数和一般函数的区别 #include <iostream> using namespace std; class Time { public: Time(int h,int m,int s):hour(h),minute(m),sec(s) {} void display1(); //display1是成员函数 friend voi

2014秋C++ 第8周项目 分支程序设计

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看. 阅读并验证 阅读下面的两段程序,用"人脑"运行写出输出结果,再在计算机或手机上运行程序,对比自己写出的结果,进行反思.1.#include <iostream>using namespace std;int main(){    int a=1,b=2,c=3;

C++第14周项目5——字符串统计

课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759 [项目5-字符串统计]阅读下面的程序,完成类似的功能 #include<iostream> #include<cstdio> using namespace std; int main() { char str[50]; int i=0,n=0; cout<<"输入字符串:"; gets(str); while(str[i]!

2013-C++第17周项目参考解答链接集

课程主页在:http://blog.csdn.net/sxhelijian/article/details/11890759 [项目1-体会函数参数传递] 设计一个程序,输入3个整数,将其按从大到小的顺序输出,要求 (1)排序功能通过函数实现 (2)写出两个版本的函数,一个采用传地址值的方法,另一个采用引用类型作参数 参考解答在:http://blog.csdn.net/sxhelijian/article/details/8362289(2012级第17周项目1) [项目2-用指针玩字符串]指