C++ 实验一:类和对象的定义及使用
实验题目 1
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
using namespace std;
class BookCard
{
private:
string id; //借书证学生的学号
string stuName; //借书证学生的姓名
int number; //所借书的数量
public:
BookCard(string Id, string StuName, int Num);
BookCard();
void display(); //显示借书证的3 个数据成员的信息
bool borrow(); //已借书数量不足10 则将数量加1,数量达到10 则直接返回false
};
BookCard::BookCard(string Id, string StuName, int Num)
{
id = Id;
stuName = StuName;
number = Num;
}
BookCard::BookCard()
{
id = "B19010250";
stuName = "雪峰";
number = 4;
}
void BookCard::display()
{
cout << id <<' '<< stuName <<' '<< number << endl;
}
bool BookCard::borrow()
{
if (number / 10)
{
return false;
}
else
{
number++;
return true;
}
}
void f(BookCard &bk)
{
if (!bk.borrow())
{
bk.display();
cout << "you have borrowed 10 books,can not borrow any more!" << endl;
}
else
bk.display();
}
int main()
{
BookCard bk1("B20190620", "东平", 10), bk2;
f(bk1);
f(bk2);
return 0;
}
实验题目2
这题主函数部分比较开放,可以任意发挥。
(数据也是我瞎编的,可以随便改~)
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
using namespace std;
class Time
{
private:
int Hour;
int Minute;
int Second;
public:
Time(int H, int M, int S);
Time(const Time &t);
~Time();
void IncreaceOneSecond( );
void SettingTime(int H, int M, int S);
void PrintTime();
};
Time::Time(const Time &t)
{
Hour = t.Hour;
Minute = t.Minute;
Second = t.Second;
}
Time::Time(int H = 0, int M = 0, int S = 0)
{
Hour = H;
Minute = M;
Second = S;
}
Time::~Time()
{
}
void Time::IncreaceOneSecond()
{
if (Second < 59)
Second++;
else if (Minute < 59)
{
Second = 0;
Minute++;
}
else if (Hour < 23)
{
Second = Minute = 0;
Hour++;
}
else
{
Second = Minute = Hour = 0;
}
}
void Time::PrintTime()
{
cout << Hour << " : " << Minute << " : " << Second << endl;
}
void Time::SettingTime(int H, int M, int S)
{
Hour = H;
Minute = M;
Second = S;
}
void f(Time *t)
{
t->PrintTime();
}
int main()
{
Time t0(23, 59, 58);
t0.IncreaceOneSecond();
f(&t0);
Time t1 = t0;
t1.IncreaceOneSecond();
f(&t1);
t0.SettingTime(5,2,0);
f(&t0);
return 0;
}
实验题目 3
同上,主函数可任意发挥啦
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
using namespace std;
class Girl;
class Boy
{
private:
string name;
int age;
public:
Boy(string, int);
~Boy();
friend void VisitBoyGirl(Boy &B, Girl &G);
};
Boy::Boy(string n = "None", int a = 0)
{
name = n;
age = a;
}
Boy::~Boy()
{
}
class Girl
{
private:
string name;
int age;
public:
Girl(string n, int a);
~Girl();
friend void VisitBoyGirl(Boy &B, Girl &G);
};
Girl::Girl(string n = "None", int a = 0)
{
name = n;
age = a;
}
Girl::~Girl()
{
}
void VisitBoyGirl(Boy &B, Girl &G)
{
cout << "Boy:" << B.name << " " << B.age << endl;
cout << "Girl:" << G.name << " " << G.age << endl;
}
int main()
{
Boy b("Bob",16);
Girl g("Alice",18);
VisitBoyGirl(b, g);
return 0;
}
最后求个赞~