永发信息网

c++问题求助

答案:1  悬赏:80  手机版
解决时间 2021-05-12 08:56

第一个

//要求下面程序输出结果为"d=800,f=60"
//提示:a数组的前4个元素相乘得800;a数组的所有元素相加得60。
//第5到20行语句有三行存在错误,请改正错误并调试得到要求的结果。
#include<iostream.h>
class A //1行
{
int a[10]; int n; //2行
public: //3行
A(int aa[], int nn): n(nn) //4行
{
for(int i=0; i<n; i++) aa[i]=a[i]; //5行
} //6行
int Get(int i) {return a[i];} //7行
int SumA(int n); //8行
}; //9行
int A::SumA(int n) { //10行
int s=0; //11行
for(int j=0; j<n; j++) s+=a[j]; //12行
return s; //13行
} //14行
void main() { //15行
int a[]={2,5,8,10,15,20}; //16行
A x(a,6); //17行
int d=1; //18行
for(int i=0; i<4; i++) d*=x.a[i]; //19行
int f=SumA(6); //20行
cout<<"d="<<d<<','; //21行
cout<<"f="<<f<<endl; //22行
} //23行

第二个

//在下面一段类定义中,Derived类公有继承了基类Base。
//此程序输出为333,
//请修改程序(即在恰当的位置添加一条语句),使输出变为:111 222 333

#include <iostream>
using namespace std;
class Base
{
private:
int mem1,mem2; //基类的数据成员
public:
Base(int m1,int m2) { mem1=m1; mem2=m2;}
void output(){cout<<mem1<<' '<<mem2<<' ';}//输出数据成员mem1和mem2的值
};
class Derived: public Base
{
private:
int mem3;//派生类本身的数据成员
public:
Derived(int m1,int m2, int m3); //构造函数,由m1和m2分别初始化mem1和mem2,由m3初始化mem3

void output() //输出mem1,mem2和mem3数据成员的值
{
cout<<mem3<<endl;
}
};
Derived::Derived(int m1,int m2, int m3): Base(m1,m2){mem3=m3;}
void main()
{
Derived s(111,222,333);
s.output();
}

最佳答案

第一题:


#include<iostream.h>
class A
{
int a[10]; int n;
public:
A(int aa[], int nn): n(nn)
{
for(int i=0; i<n; i++) a[i]=aa[i]; //将形参aa赋值给成员变量a!
}
int Get(int i) {return a[i];}
int SumA(int n);
};
int A::SumA(int n) {
int s=0;
for(int j=0; j<n; j++) s+=a[j];
return s;
}
void main() {
int a[]={2,5,8,10,15,20};
A x(a,6);
int d=1;
for(int i=0; i<4; i++) d*=x.Get(i); //不能直接访问私有成员. 用成员函数Get访问!


int f=x.SumA(6); //SumA是成员函数.必须用类对象去调用
cout<<"d="<<d<<',';
cout<<"f="<<f<<endl;
}



第二题:



#include <iostream>
using namespace std;
class Base
{
private:
int mem1,mem2; //基类的数据成员
public:
Base(int m1,int m2) { mem1=m1; mem2=m2;}
void output(){cout<<mem1<<' '<<mem2<<' ';}//输出数据成员mem1和mem2的值
};
class Derived: public Base
{
private:
int mem3;//派生类本身的数据成员
public:
Derived(int m1,int m2, int m3); //构造函数,由m1和m2分别初始化mem1和mem2,由m3初始化mem3

void output() //输出mem1,mem2和mem3数据成员的值
{
Base::output(); //添加这句!
cout<<mem3<<endl;
}
};
Derived::Derived(int m1,int m2, int m3): Base(m1,m2){mem3=m3;}
void main()
{
Derived s(111,222,333);
s.output();
}

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
如果兼职被骗了怎么办,请问,一般兼职打字员
摩托车YAMAHA VINO125好呢?还是整个本田DIO6
伊布和比利亚是什么类型的中锋
人为什么永远都满足不了
英语翻译帮我用英语翻译下这几句话1.2008北京
今天 有哪个东西营业啊?。?。?!八月15日
校园情景剧剧本谁有?
真心相爱心相连,秋水滔滔话缠绵,奈何旁人尔
哪一种水溶性的彩铅比较好?
凯悦这款车上路需要多少钱!
月经越来越少怎么回事!
超市对顾客的祝福语,五一节日祝福语。
海贼王 梅丽号被烧毁时的背景歌曲是什么
兰州工专“建筑电气工程技术”专业,就业前景
相遇问题应用题
推荐资讯
贬低文人的诗句有哪些,随性洒脱的文人名士
带三岁的网名什么意思,网名后面加三岁什么意
关于秋天小草的诗句,三国群英五下载什么地方
玩狼人杀是什么意思,狼人杀如何练就JY一样的
胯宽的女生穿什么裙子,胸大、肩宽、上身胖的
现在DNF上海一区信念碎片能卖多少钱?
6300待机怎么样啊?
富士康主要生产什么,河南支柱产业有哪些
谁能给我一个pes2010基于3.0补丁的最新转会存
一般家用车开多少公里,一般汽车能开多少年呢
11番队长是 ?
河南省高考
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?