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

来源:互联网 发布:白犀牛网络语什么意思 编辑:程序博客网 时间:2024/05/22 06:39
#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[n] = 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;}



1 0
原创粉丝点击