您的位置:首页 > 编程语言 > C语言/C++

C++面向对象实验(一)

2016-04-23 22:20 393 查看
#include<bits/stdc++.h>
using namespace std;
class Date{
public :
void setday(int year,int month,int day);
void display();
private:
int year;
int month;
int day;
};
void Date::setday(int y,int m,int d){
year=y;
month=m;
day=d;
}
void Date::display(){
cout<<"日期:"<<year<<":"<<month<<":"<<day<<endl;
}
int main()
{
Date date1;
Date date2;
int year,month,day;
cin>>year>>month>>day;
date1.setday(year, month, day);
date1.display();
cin>>year>>month>>day;
date2.setday(year, month, day);
date2.display();
return 0;
}


#include<bits/stdc++.h>
using namespace std;
class Student {
public:
void setNum(int n);
void setName( char *m);
void setScore(int n, int num);
void display();
private:
int num;
char name[20];
int score[3];
};
void Student::setNum(int n) {
num = n;
}
void Student::setScore(int n, int num)
{
score
= num;
}
void Student::setName( char *m)
{
strncpy(name, m, sizeof(name));
}
void Student::display()
{
cout << "学号:" << num << endl;
cout << "名字:" << name << endl;
for (int i = 0; i < 3; i++)
cout << "分数" << i+1 << ":" << score[i] << endl;
}

int main()
{
int num, score = 0;
char name[20];
Student xiaoMing;
cin >>num>>name;
xiaoMing.setNum(num);
xiaoMing.setName(name);
for (int i = 0; i < 3; i++) {
cin >> score;
xiaoMing.setScore(i,score);
}
xiaoMing.display();
return 0;
}


#include <iostream>
using namespace std;
class Rectangle {
int length;
int width;
public:
Rectangle(int l, int w);
Rectangle(const Rectangle &r);
~Rectangle();
void showArea() { cout << "面积:" << length*width << endl; }
void showPerimeter() { cout << "周长:" << (length+width)*2 << endl; }
};

Rectangle::Rectangle(int l, int w)
{
length = l;
width = w;
}

Rectangle::Rectangle(const Rectangle& r)
{
length = 4;
width = 3;
}

Rectangle::~Rectangle()
{
cout << "delete Rectangle" << endl;
}

void display(Rectangle tmp)
{
tmp.showArea();
tmp.showPerimeter();
}

int main()
{
Rectangle rect(2, 10);
rect.showArea();
rect.showPerimeter();
display(rect);
return 0;
}


#include <iostream>
#include <cstring>
using namespace std;
class Student {
int num;
char name[10];
bool sex;
char grade[10];
public:
Student(int m_num = 1, char *m_name = "小明", bool m_sex = true, char *m_grade = "大一");
Student(int m_num, const char *m_name);
void display();
void setSex(bool m_sex) { sex = m_sex; }
void setGrade(const char *m_grade) { strncpy(grade, m_grade, sizeof(grade)); }
};
Student::Student(int m_num, char *m_name, bool m_sex, char *m_grade) : num(m_num), sex(m_sex)
{
strncpy(name, m_name, sizeof(name));
strncpy(grade, m_grade, sizeof(grade));
}
Student::Student(int m_num, const char *m_name) : num(m_num)
{
strncpy(name, m_name, sizeof(name));
}

void Student::display()
{
cout << "学号:" << num << endl;
cout << "名字:" << name << endl;
cout << "性别:" << (sex==true ? "男" : "女") << endl;
cout << "年级:" << grade << endl;
}
int main()
{
Student stu1;
Student stu2(2, "小明");
stu1.display();
stu2.setSex(false);
stu2.setGrade("大一");
stu2.display();
return 0;
}


#include <iostream>
using namespace std;
class Cat {
public:
static int howManyCats;
static int getHowMany() {
return howManyCats;
}
Cat(){
++howManyCats;
}
};

int Cat::howManyCats;

int main()
{
Cat black;
cin>>black.howManyCats;
cout << "数量为:"<<Cat::getHowMany() << endl;
return 0;
}


#include <iostream>
using namespace std;

class Student {
int num;
int score;
public:
static int totalScore;

static int totalStudent;

static double getAvg() {
return ((double)totalScore)/totalStudent;
}
Student(int num1, int score1) {
num = num1; score = score1;
totalStudent++;
totalScore += score;
}
};

int Student::totalScore = 0;
int Student::totalStudent = 0;

int main()
{
int T;
cin>>T;
while(T--){
int a,b;
cin>>a>>b;
Student xiaoxxx(a,b);

}
cout << Student::getAvg() << endl;

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: