c++定义一个学生类,并在主函数声明学生类的一个对象
时间: 2023-05-18 17:05:34 浏览: 111
以下是一个简单的学生类的定义,包括姓名、年龄和成绩三个属性:
```c++
#include <iostream>
#include <string>
using namespace std;
class Student {
public:
string name;
int age;
double score;
};
int main() {
Student stu; // 声明一个学生对象
stu.name = "Tom";
stu.age = 18;
stu.score = 90.5;
cout << "Name: " << stu.name << endl;
cout << "Age: " << stu.age << endl;
cout << "Score: " << stu.score << endl;
return 0;
}
```
在主函数中,我们声明了一个名为`stu`的学生对象,并对其属性进行了赋值。最后输出了学生的姓名、年龄和成绩。
相关问题
c++声明学生类Student,包含学号(id)、姓名(name)、成绩(score)等数据成员,成员函数有;构造函数输入学生信息、设置学生信息、输出学生信息函数等等。在主函数中定义3个对象,1个对象通过构造函数赋值,1个通过键盘输入、1个通过参数赋值,输出3个学生对象的所有数据成员;修改某个对象的成绩,输出该对象的成绩。
好的,下面是 C++ 的代码实现:
```cpp
#include <iostream>
#include <string>
using namespace std;
class Student {
private:
int id;
string name;
float score;
public:
// 构造函数输入学生信息
Student(int id = 0, string name = "", float score = 0.0)
: id(id), name(name), score(score) {}
// 设置学生信息
void setStudent(int id, string name, float score) {
this->id = id;
this->name = name;
this->score = score;
}
// 输出学生信息函数
void showStudent() {
cout << "学号:" << id << endl;
cout << "姓名:" << name << endl;
cout << "成绩:" << score << endl;
}
// 获取学生成绩
float getScore() {
return this->score;
}
// 修改学生成绩
void setScore(float score) {
this->score = score;
}
};
int main() {
// 通过构造函数赋值
Student s1(20190001, "张三", 90.0);
s1.showStudent();
cout << endl;
// 通过键盘输入
int id;
string name;
float score;
cout << "请输入学生信息(学号、姓名、成绩):" << endl;
cin >> id >> name >> score;
Student s2(id, name, score);
s2.showStudent();
cout << endl;
// 通过参数赋值
Student s3;
s3.setStudent(20190003, "李四", 80.0);
s3.showStudent();
cout << endl;
// 修改某个对象的成绩,输出该对象的成绩
float newScore;
cout << "请输入要修改成绩的学生的新成绩:" << endl;
cin >> newScore;
s1.setScore(newScore);
cout << "修改后的成绩为:" << s1.getScore() << endl;
return 0;
}
```
注意:这里假设学号为整数,姓名为字符串,成绩为浮点数。
1、声明一个学生类,包含学生的学号、姓名、性别、C++成绩;声明一个教师类,包含教工号、姓名、职称;声明一个领导类,包含领导的工号、姓名和职位;实例化每个类的对象一个,声明一个show函数为这三个类的友元函数,分别显示其详细信息。
好的,以下是代码实现:
```c++
#include <iostream>
#include <string>
using namespace std;
// 学生类
class Student {
private:
int id; // 学号
string name; // 姓名
string gender; // 性别
double cppScore; // C++成绩
public:
Student(int id, string name, string gender, double cppScore) {
this->id = id;
this->name = name;
this->gender = gender;
this->cppScore = cppScore;
}
friend void show(Student stu, Teacher tea, Leader leader);
};
// 教师类
class Teacher {
private:
int id; // 教工号
string name; // 姓名
string title; // 职称
public:
Teacher(int id, string name, string title) {
this->id = id;
this->name = name;
this->title = title;
}
friend void show(Student stu, Teacher tea, Leader leader);
};
// 领导类
class Leader {
private:
int id; // 工号
string name; // 姓名
string position; // 职位
public:
Leader(int id, string name, string position) {
this->id = id;
this->name = name;
this->position = position;
}
friend void show(Student stu, Teacher tea, Leader leader);
};
// 友元函数,显示三个类的详细信息
void show(Student stu, Teacher tea, Leader leader) {
cout << "学生信息:" << endl;
cout << "学号:" << stu.id << endl;
cout << "姓名:" << stu.name << endl;
cout << "性别:" << stu.gender << endl;
cout << "C++成绩:" << stu.cppScore << endl;
cout << "教师信息:" << endl;
cout << "教工号:" << tea.id << endl;
cout << "姓名:" << tea.name << endl;
cout << "职称:" << tea.title << endl;
cout << "领导信息:" << endl;
cout << "工号:" << leader.id << endl;
cout << "姓名:" << leader.name << endl;
cout << "职位:" << leader.position << endl;
}
int main() {
Student stu(20210001, "小明", "男", 90.5);
Teacher tea(10001, "张老师", "教授");
Leader leader(2001, "李领导", "部门主管");
show(stu, tea, leader);
return 0;
}
```
以上代码定义了三个类:学生类、教师类和领导类,每个类中包含一些属性和构造函数,同时定义了一个友元函数show,该函数可以访问三个类的对象的私有属性,用来显示详细信息。在主函数中实例化了一个学生对象、一个教师对象和一个领导对象,然后调用show函数显示它们的详细信息。
阅读全文