0
点赞
收藏
分享

微信扫一扫

实验三c++(河工大廊坊)


2.设计一个名为Student的类,该类有以下几个私有数据成员:学生姓名、学号、性别和年龄,还有两个成员函数:一个用于设置学生姓名、学号、性别、年龄的赋值函数,一个用于输出学生信息的函数。编写主函数,创建一个Student对象,调用成员函数为对象的数据成员赋值,并在屏幕上输出学生信息。

#include<iostream>
#include<string>
using namespace std;
class Student{
private:
string name;
int date;
int age;
char sex;
public:
void set(char *n,int d,int a,char s){
name=n;
date=a;
age=a;
sex=s;
}
void output(){
cout<<"姓名:"<<name<< "\n学号:"<<date<<"\n性别:"<<sex<<"\n年龄:"<<age<<endl;
}
};
int main(){
Student stu1;
stu1.set("张三",208000,18,'m');
stu1.output();
system("pause");
return 0;
}

3.定义一个复数类Complex,实现如下功能。
(1)包含private数据成员:realPart(实部)和imagPart(虚部)。
(2)对下列情况提供public成员函数:
a. 设置各数据成员的值(set);
b.读取各数据成员的值(get);
c.两个complex值相加(sum):实数部分相加,虚数部分相加;
d.两个complex值相减(sub):实数部分相减,虚数部分相减;
e.打印输出形如(a,b)的Complex的值(print)。
(3)编写一个主函数,测试这个类。

#include<iostream>
#include<string>
using namespace std;
class Complex{
private:
int realPart;
int imagPart;
public:
Complex(){
realPart=0;
imagPart=0;
}
void set(int r,int i){
realPart=r;
imagPart=i;
}
void get(){
realPart;
imagPart;
}
Complex sum(Complex a){
a.realPart+=this->realPart;
a.imagPart+=this->imagPart;
return a;
}
Complex sub(Complex a){
a.realPart-=this->realPart;
a.imagPart-=this->imagPart;
return a;
}
void print()
{
cout<<'('<<realPart<<','<<imagPart<<')'<<endl;
}

};
int main(){
Complex c1,c2,c3,c4;
c1.set(4,5);
c2.set(2,6);
c1.get();
c2.get();
c3=c2.sum(c1);
c4=c2.sub(c1);
c1.print();
c2.print();
c3.print();
c4.print();
system("pause");
return 0;
}

5.定义一个三角形类Triangle,实现如下功能。
(1)包含private数据成员:三角形三边x,y,z。
(2)对下列情况提供public成员函数:
a. 构造函数:一个无参构造函数,将数据成员全部初始化为0;一个有参构造函数,根据参数初始化各数据成员;
b.设置各数据成员的值(set);
c.读取各数据成员的值(get);
d.计算三角形周长的函数(circumference);
e.计算三角形面积的函数(area);
f.打印输出三角形各项信息值的函数(print)。
(3)编写一个主函数,测试这个类。

#include<iostream>
#include<cmath>
using namespace std;
class Triangle{
private:
int x,y,z;
public:
Triangle(int a=0,int b=0,int c=0){
x=a;
y=b;
z=c;
}
void set(int a,int b,int c){
x=a;
y=b;
z=c;
}
void get(){
x;
y;
z;
}
int circumference(){
int sum;
sum=x+y+z;
return sum;
}
double area(){
double s=0, p=(x+y+z)/2;
s=sqrt(p*(p-x)*(p-y)*(p-z));
return s;
}
void print(double s,int c){
cout<<"三边为:"<<x<<"\t"<<y<<"\t"<<z<<endl;
cout<<"面积为:"<<s<<"\n周长为:"<<c<<endl;
}

};
int main(){
Triangle c1(3,4,5);
c1.print(c1.area(),c1.circumference());
system("pause");
return 0;

6.定义一个类People,用于描述人的相关信息,实现如下功能。
(1)包含private数据成员:姓名name、年龄age、身高height、体重weight。
(2)对下列情况提供public成员函数:
a. 构造函数:一个无参构造函数,将数据成员name初始化为“none”,age、height、weight均初始化为0;一个有参构造函数,根据参数初始化各数据成员;
b.设置各数据成员的值(set);
c.读取各数据成员的值(get);
d.进食函数(eating):体重加1;
e.运动函数(sporting):身高加1;
f.睡眠函数(sleeping):年龄、身高、体重各加1;
g.输出显示人各项信息值的函数(disp)。
(3)编写一个主函数,测试这个类。

#include<iostream>
#include<string>
using namespace std;
class People{
private:
string name;
int age;
double height;
double weight;
public:
People(){
name="none";
age=0;
height=0;
weight=0;
}
People(char *n,int a,double h,double w){
name=n;
age=a;
height=h;
weight=w;
}
void set(char *n="none",int a=0,double h=0,double w=0){
name=n;
age=a;
height=h;
weight=w;
}
void get(){
name;
age;
height;
weight;
}
void eating(){
++height;
}
void sporting(){
++weight;
}
void sleeping(){
++age;
++height;
++weight;
}
void porint(){
cout<<"姓名:"<<name<< "\n年龄:"<<age<<"\n身高:"<<height<<"\n体重:"<<weight<<endl;
}
};
int main(){
People c1("张三",18,175,60),c2;
c1.porint();
cout<<endl;
c2.porint();
c1.eating();
cout<<"\n进食后:"<<endl;
c1.porint();
c1.sporting();
cout<<"\n运动后:"<<endl;
c1.porint();
c1.sleeping();
cout<<"\n睡眠后:"<<endl;
c1.porint();
system("pause");
return 0;
}


举报

相关推荐

0 条评论