C++编程题目

建立一个名为CStudent的类,该类有以下几个私有成员变量:学生姓名、学号、性别、年龄和成绩。还有以下几个函数成员:(1)一个带函数参数默认值的构造函数,用于初始化学生... 建立一个名为CStudent的类,该类有以下几个私有成员变量:学生姓名、学号、性别、年龄和成绩。还有以下几个函数成员:
(1)一个带函数参数默认值的构造函数,用于初始化学生姓名、学号、性别、年龄和成绩;
(2)一个输入函数,用于键盘输入学生的信息;
(3)一个输出函数,用于屏幕输出学生的所有信息。
编写主函数:不带参数调用构造函数声明一个学生对象,调用输入函数输入该学生的信息;带参数调用构造函数声明另一个学生对象。
最后调用输出函数在屏幕上输出两个学生的信息。
定义一个CShape抽象类,再利用CShape类分别定义两个派生类CRectangle(表示矩形)和CCirle(表示圆)。三个类都有计算对象面积的成员函数GetArea()和计算对象周长的成员函数GetPerimeter(),在主函数中声明基类指针和派生类对象,并通过基类指针调用不同对象的计算面积和周长的成员函数。
展开
 我来答
wsnbbchen
推荐于2018-04-12 · TA获得超过386个赞
知道小有建树答主
回答量:89
采纳率:0%
帮助的人:98.5万
展开全部
// 先做第一题:

class CStudent //基类在校人员的声明
{
string Name; //学生姓名
int Id; //学号
string Male; //性别
int Age; //年龄
int Score; //成绩

public:
CStudent(const string name="", int id=0, const string male="", int age=0, int score=0) //(1)一个带函数参数默认值的构造函数,用于初始化学生姓名、学号、性别、年龄和成绩;
: Name(name), Id(id), Male(male),Age(age),Score(score)
{
}

void Input() // (2)一个输入函数,用于键盘输入学生的信息;
{
cout << "输入姓名" << endl;
cin >> Name;
cout << "输入学号" << endl;
cin >> Id;
cout << "输入性别" << endl;
cin >> Male;
cout <棚春< "输入年龄" << endl;
cin >> Age;
cout << "输入成绩" << endl;
cin >> Score;
}

void Output( ) //输出数据成员的函数(不含编号)
{
cout << "姓名:" << Name << endl;
cout << "学号:" << Id << endl;
cout << "性别:" << Male << endl;
cout << "年龄:" << Age << endl;
cout << "成绩:" <<拆逗 Score << endl;
}
};

void main()
{
CStudent s1; //不带参数调用构造函数旅和卖声明一个学生对象
s1.Input(); //调用输入函数输入该学生的信息
CStudent s2("xs2", 10, "fmale", 20, 100); //带参数调用构造函数声明另一个学生对象
s1.Output(); //调用输出函数在屏幕上输出两个学生的信息
s2.Output();
}

=================================================================
/// 第二题

class CShape
{
public:
virtual float GetArea() = 0;
virtual float GetPerimeter() = 0;
};

class CRectangle : public CShape
{
float W,H;
public:
CRectangle(float w, float h):W(w),H(h) {};
virtual float GetArea() { return W*H; };
virtual float GetPerimeter() { return 2*(W+H);};
};

#define PI 3.14
class CCirle : public CShape
{
float R;
public:
CCirle(float r):R(r) {};
virtual float GetArea() { return PI*R*R; };
virtual float GetPerimeter() { return 2*PI*R; };
};

void main()
{
CShape *p1 = new CRectangle(3,4);
CShape *p2 = new CCirle(3);
p1->GetArea();
p1->GetPerimeter();
p2->GetArea();
p2->GetPerimeter();
delete p1;
delete p2;
}
百度网友a88246e
2011-02-26 · TA获得超过4295个赞
知道小有建树答主
回答量:2221
采纳率:0%
帮助的人:1409万
展开全部
#include<cstring>
using namespace std;
//这是我改的程序 希望对你有所帮助
#include<iostream>
using namespace std;
int palin(char *a)
{
int n=0;
char *b=NULL;

for(int i=0;*(a+i)!='\0';i++)
if((*(a+i)>=65&&*(a+i)<=90)||(*(a+i)>=97&&*(a+i)<=122))
n++;
b=new char[n+1]; //在c++中
//如果有指枣乱针 并且希望她象动态数组一样使用 请先申请空间 不过字符串长量
//不用申请

b[n]='\0';
for(i=0;*(a+i)!='\0';i++)
if((*(a+i)>=65&&*(a+i)<=90)||(*(a+i)>=97&&*(a+i)<=122)) //这里的条件语句庆租有点凳差档问题 请你仔细思考下
*(b+n)=*(a+i),n++;
int yesno=1;
for(int x=0,y=n-1;x<y;x++,y--)
if(*(b+x)-*(b+y)!=0&&*(b+x)-*(b+y)!=32&&*(b+x)-*(b+y)!=-32)
yesno=-1;
return yesno;
}

int main()
{
char*a="MAdam";
int x=palin(a);
cout<<x;
return 0;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
来自虎丘山稳重的海豹
2011-02-25 · 超过28用户采纳过TA的回答
知道答主
回答量:95
采纳率:0%
帮助的人:69.3万
展开全部
只做一题吧 #include <iostream>
#include <string>
using namespace std;
class CStudent{ //基类在校人员的声明
int Id;
char Name[20];
char Sex[4];
int Age;
int CJ;
public:
CStudent(int i, char *n, char *s,int a,int c)
{ //基类构造函伏亮凯数
Id=i;
strcpy(Name,n);
strcpy(Sex,s);
Age=a;
CJ=c;
}
int GetId()// 获取编号的函数
{return Id;}
void Print( )//输出数据成员的函数(不含编号)
{
cout<<"姓名:"<<Name<<"\t性别:"<<Sex<<"\t年龄:"<<Age<<"\t成绩:"<<CJ;
}
};

void main( )
{ CStudent S1(9900101,"张缺唤三","男",20,90); //调用派生类构造函数
S1.Print();
}输入还没键察做
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户56166
2011-03-05 · TA获得超过222个赞
知道答主
回答量:163
采纳率:0%
帮助的人:0
展开全部
t;iostream>
using namespace std;

class Riqi
{

private:

long nian,yue,ri;

public:

Riqi();
Riqi(long Snian,long Syue,long Sri);

void Set(long Snian,long Syue,long Sri);
void Output();

};

Riqi::Riqi()
{

nian=yue=ri=0;

};

Riqi::Riqi(long Snian,long Syue,long Sri)
{

Set(Snian,Syue,Sri);

};

void Riqi::Set(long Snian,long Syue,long Sri)
{

nian=Snian;
yue=Syue;
ri=Sri;

};

void Riqi::Output()
{

cout<<埋皮nian<<"年"弯毁差<<yue<<"月"<<ri<<"日"<<endl;

};

17.这里是余或代码。假设成员变量a,b为长整形。

class A
{

protected:

long b;

private:

long a;

};

class B:public A
{

};
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式