计算机基础实验6——类与对象
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
cout << endl << "请输入你想进行的操作:" << endl << "1.进食\t2.运动\t3.睡眠 \t4.输出当前该人的信息\t0.退出程序:";
cin >> judge;
switch (judge) { case 1:
person.weight = person.eating(person.weight); break; case 2: person.height = person.sporting(person.height); break; case 3: person = person.sleeping(person); break; case 4: cout << "该人的相关信息为:" << endl << "年龄:" << person.age << "\t身 高:" << person.height << "\t体重:" << person.weight << endl; break; default: cout << "程序结束!" << endl << endl; } }
People(); //构造函数 int age; //年龄 int height; //身高 int weight; //体重 int eating(int); //进食 int sporting(int); //运动 People sleeping(People); //睡眠
}; #endif
void People::growth(People person) {
int judge = 1; while ((judge == 1) | (judge == 2) | (judge == 3) | (judge == 4))
ቤተ መጻሕፍቲ ባይዱ
{ cout << endl << "请输入你想进行的操作:" << endl << "1.进食\t2.运动\t3.睡眠
高(hight)、体重(weight),函数成员进食(eating)、运动(sporting)、睡眠(sleeping)。
在主函数中通过结构体变量访问所有成员。
答:
People.h
#ifndef People_h #define People_h
//结构体定义中,默认成员为public;而类定义中,默认成员为private struct People {
#ifndef People_h #define People_h
class People { public:
People(); //构造函数 int age; //年龄 int height; //身高 int weight; //体重 int eating(int); //进食 int sporting(int); //运动 People sleeping(People); //睡眠
计算机学院本科生实验报告
实验课程:程序设计实验 实验项目:实验二 类与对象 指导教师: 开课时间:2018 年 3 月 班级:
华南师范大学
计算机 学院
程序设计实验 课实验报告
级班
实验日期 2018 年 4 月 18 日
姓名
学号
教师评定
实验题目:实验二 类与对象
实验二 类与对象
一、实验目的与要求
1.掌握类的定义和使用,掌握类对象的声明和使用,掌握具有不同访问属性的成员的访问方 式。 2.掌握对象的初始化和赋值的方法;熟悉构造函数、拷贝构造函数和析构函数的编写;了解 构造函数和析构函数的作用和使用;使用编译器调试功能,跟踪观察类的构造函数、析构函 数、成员函数的执行顺序。 3.了解成员函数的特性、友员、类的作用域及对象的、生存期等概念。 4.了解并掌握子对象的定义、赋值、使用方法,掌握静态成员、常成员的使用。
class People { public:
People(); //构造函数 void growth(People); private: int age; //年龄 int height; //身高 int weight; //体重 int eating(int); //进食
int sporting(int); //运动 People sleeping(People); //睡眠 };
}
源.cpp
#include <iostream> #include "People.h" using namespace std;
int main() {
People person; int judge = 1;
while ((judge == 1) | (judge == 2) | (judge == 3) | (judge == 4)) {
}
源.cpp
#include <iostream> #include "People.h" using namespace std;
int main() {
People person; int judge = 1;
while ((judge == 1) | (judge == 2) | (judge == 3) | (judge == 4)) {
\t4.输出当前该人的信息\t0.退出程序:"; cin >> judge;
switch (judge) { case 1:
person.weight = eating(person.weight); break; case 2: person.height = sporting(person.height); break; case 3: person = sleeping(person); break; case 4: cout << "该人的相关信息为:" << endl << "年龄:" << person.age << "\t身 高:" << person.height << "\t体重:" << person.weight << endl; break; default: cout << "程序结束!" << endl << endl; } } }
}; #endif
People.cpp
#include <iostream> #include "People.h" using namespace std;
People::People() //默认构造函数(没有参数的构造函数) {
cout << "请输入该人的相关信息:" << endl << "年龄:(岁)"; cin >> age; cout << "身高:(cm)"; cin >> height; cout << "体重:(kg)"; cin >> weight; }
int People::eating(int w) //进食 {
return w = w + 1; }
int People::sporting(int h) {
return h = h + 1; }
//运动
People People::sleeping(People person) //睡眠 {
person.age = person.age + 1; person.height = person.height + 1; person.weight = person.weight + 1; return person;
system("pause"); return 0;
int People::eating(int w) //进食 {
return w = w + 1; }
int People::sporting(int h) {
return h = h + 1; }
//运动
People People::sleeping(People person) //睡眠 {
person.age = person.age + 1; person.height = person.height + 1; person.weight = person.weight + 1; return person;
int People::eating(int w) //进食 {
return w = w + 1; }
int People::sporting(int h) {
return h = h + 1; }
//运动
People People::sleeping(People person) //睡眠 {
person.age = person.age + 1; person.height = person.height + 1; person.weight = person.weight + 1; return person; }
#endif
People.cpp
#include <iostream> #include "People.h" using namespace std;
People::People() //默认构造函数(没有参数的构造函数) {
cout << "请输入该人的相关信息:" << endl << "年龄:(岁)"; cin >> age; cout << "身高:(cm)"; cin >> height; cout << "体重:(kg)"; cin >> weight; }
二、实验内容
1. 编写设计一个 people 类。
该类的数据成员有年龄(age)、身高(height)、体重(weight), 函数成员有进食(eating)、运动(sporting)、睡眠(sleeping)。 其中进食函数使体重加 1,运动函数使身高加 1,睡眠函数使年龄、身高、体重各加 1。 要求所有成员为 public 公有访问权限,在主函数中通过类对象直接访问类的所有成员。 答: People.h
system("pause"); return 0;
}
2.重新定义 people 类。
将所有成员设置为 private 私有访问权限,并在类中添加 public 公有访问权限的函数成员:
生长(growth),使生长函数调用私有的函数成员进行进食、运动、睡眠。
答:
People.h
#ifndef People_h #define People_h
People.cpp
#include <iostream> #include "People.h" using namespace std;
People::People() //默认构造函数(没有参数的构造函数) {
cout << "请输入该人的相关信息:" << endl << "年龄:(岁)"; cin >> age; cout << "身高:(cm)"; cin >> height; cout << "体重:(kg)"; cin >> weight; }
cout << endl << "请输入你想进行的操作:" << endl << "1.进食\t2.运动\t3.睡眠 \t4.输出当前该人的信息\t0.退出程序:";
cin >> judge;
switch (judge) { case 1:
person.weight = person.eating(person.weight); break; case 2: person.height = person.sporting(person.height); break; case 3: person = person.sleeping(person); break; case 4: cout << "该人的相关信息为:" << endl << "年龄:" << person.age << "\t身 高:" << person.height << "\t体重:" << person.weight << endl; break; default: cout << "程序结束!" << endl << endl; } }
源.cpp
#include <iostream> #include "People.h" using namespace std;
int main() {
People person; person.growth(person);
system("pause"); return 0; }
3.编写一个类定义形式的结构体变量 people。该结构体变量包括数据成员年龄(age)、身
cin >> judge;
switch (judge) { case 1:
person.weight = person.eating(person.weight); break; case 2: person.height = person.sporting(person.height); break; case 3: person = person.sleeping(person); break; case 4: cout << "该人的相关信息为:" << endl << "年龄:" << person.age << "\t身 高:" << person.height << "\t体重:" << person.weight << endl; break; default: cout << "程序结束!" << endl << endl; } }
People(); //构造函数 int age; //年龄 int height; //身高 int weight; //体重 int eating(int); //进食 int sporting(int); //运动 People sleeping(People); //睡眠
}; #endif
void People::growth(People person) {
int judge = 1; while ((judge == 1) | (judge == 2) | (judge == 3) | (judge == 4))
ቤተ መጻሕፍቲ ባይዱ
{ cout << endl << "请输入你想进行的操作:" << endl << "1.进食\t2.运动\t3.睡眠
高(hight)、体重(weight),函数成员进食(eating)、运动(sporting)、睡眠(sleeping)。
在主函数中通过结构体变量访问所有成员。
答:
People.h
#ifndef People_h #define People_h
//结构体定义中,默认成员为public;而类定义中,默认成员为private struct People {
#ifndef People_h #define People_h
class People { public:
People(); //构造函数 int age; //年龄 int height; //身高 int weight; //体重 int eating(int); //进食 int sporting(int); //运动 People sleeping(People); //睡眠
计算机学院本科生实验报告
实验课程:程序设计实验 实验项目:实验二 类与对象 指导教师: 开课时间:2018 年 3 月 班级:
华南师范大学
计算机 学院
程序设计实验 课实验报告
级班
实验日期 2018 年 4 月 18 日
姓名
学号
教师评定
实验题目:实验二 类与对象
实验二 类与对象
一、实验目的与要求
1.掌握类的定义和使用,掌握类对象的声明和使用,掌握具有不同访问属性的成员的访问方 式。 2.掌握对象的初始化和赋值的方法;熟悉构造函数、拷贝构造函数和析构函数的编写;了解 构造函数和析构函数的作用和使用;使用编译器调试功能,跟踪观察类的构造函数、析构函 数、成员函数的执行顺序。 3.了解成员函数的特性、友员、类的作用域及对象的、生存期等概念。 4.了解并掌握子对象的定义、赋值、使用方法,掌握静态成员、常成员的使用。
class People { public:
People(); //构造函数 void growth(People); private: int age; //年龄 int height; //身高 int weight; //体重 int eating(int); //进食
int sporting(int); //运动 People sleeping(People); //睡眠 };
}
源.cpp
#include <iostream> #include "People.h" using namespace std;
int main() {
People person; int judge = 1;
while ((judge == 1) | (judge == 2) | (judge == 3) | (judge == 4)) {
}
源.cpp
#include <iostream> #include "People.h" using namespace std;
int main() {
People person; int judge = 1;
while ((judge == 1) | (judge == 2) | (judge == 3) | (judge == 4)) {
\t4.输出当前该人的信息\t0.退出程序:"; cin >> judge;
switch (judge) { case 1:
person.weight = eating(person.weight); break; case 2: person.height = sporting(person.height); break; case 3: person = sleeping(person); break; case 4: cout << "该人的相关信息为:" << endl << "年龄:" << person.age << "\t身 高:" << person.height << "\t体重:" << person.weight << endl; break; default: cout << "程序结束!" << endl << endl; } } }
}; #endif
People.cpp
#include <iostream> #include "People.h" using namespace std;
People::People() //默认构造函数(没有参数的构造函数) {
cout << "请输入该人的相关信息:" << endl << "年龄:(岁)"; cin >> age; cout << "身高:(cm)"; cin >> height; cout << "体重:(kg)"; cin >> weight; }
int People::eating(int w) //进食 {
return w = w + 1; }
int People::sporting(int h) {
return h = h + 1; }
//运动
People People::sleeping(People person) //睡眠 {
person.age = person.age + 1; person.height = person.height + 1; person.weight = person.weight + 1; return person;
system("pause"); return 0;
int People::eating(int w) //进食 {
return w = w + 1; }
int People::sporting(int h) {
return h = h + 1; }
//运动
People People::sleeping(People person) //睡眠 {
person.age = person.age + 1; person.height = person.height + 1; person.weight = person.weight + 1; return person;
int People::eating(int w) //进食 {
return w = w + 1; }
int People::sporting(int h) {
return h = h + 1; }
//运动
People People::sleeping(People person) //睡眠 {
person.age = person.age + 1; person.height = person.height + 1; person.weight = person.weight + 1; return person; }
#endif
People.cpp
#include <iostream> #include "People.h" using namespace std;
People::People() //默认构造函数(没有参数的构造函数) {
cout << "请输入该人的相关信息:" << endl << "年龄:(岁)"; cin >> age; cout << "身高:(cm)"; cin >> height; cout << "体重:(kg)"; cin >> weight; }
二、实验内容
1. 编写设计一个 people 类。
该类的数据成员有年龄(age)、身高(height)、体重(weight), 函数成员有进食(eating)、运动(sporting)、睡眠(sleeping)。 其中进食函数使体重加 1,运动函数使身高加 1,睡眠函数使年龄、身高、体重各加 1。 要求所有成员为 public 公有访问权限,在主函数中通过类对象直接访问类的所有成员。 答: People.h
system("pause"); return 0;
}
2.重新定义 people 类。
将所有成员设置为 private 私有访问权限,并在类中添加 public 公有访问权限的函数成员:
生长(growth),使生长函数调用私有的函数成员进行进食、运动、睡眠。
答:
People.h
#ifndef People_h #define People_h
People.cpp
#include <iostream> #include "People.h" using namespace std;
People::People() //默认构造函数(没有参数的构造函数) {
cout << "请输入该人的相关信息:" << endl << "年龄:(岁)"; cin >> age; cout << "身高:(cm)"; cin >> height; cout << "体重:(kg)"; cin >> weight; }
cout << endl << "请输入你想进行的操作:" << endl << "1.进食\t2.运动\t3.睡眠 \t4.输出当前该人的信息\t0.退出程序:";
cin >> judge;
switch (judge) { case 1:
person.weight = person.eating(person.weight); break; case 2: person.height = person.sporting(person.height); break; case 3: person = person.sleeping(person); break; case 4: cout << "该人的相关信息为:" << endl << "年龄:" << person.age << "\t身 高:" << person.height << "\t体重:" << person.weight << endl; break; default: cout << "程序结束!" << endl << endl; } }
源.cpp
#include <iostream> #include "People.h" using namespace std;
int main() {
People person; person.growth(person);
system("pause"); return 0; }
3.编写一个类定义形式的结构体变量 people。该结构体变量包括数据成员年龄(age)、身