定义一个结构体对象stu,成员包括学号、姓名、性别、语数外成绩。定义一个指针变量pstu指向该结构体对象stu,通过对象法输入各成员的值,再利用指针法输出各成员的值。用c++实现
时间: 2024-02-09 10:11:27 浏览: 59
详解C++中的指针结构体数组以及指向结构体变量的指针
5星 · 资源好评率100%
以下是实现代码:
```cpp
#include <iostream>
using namespace std;
struct Student {
int number;
string name;
char gender;
float chineseScore;
float mathScore;
float englishScore;
};
int main() {
Student stu;
Student* pstu = &stu;
// 通过对象法输入各成员的值
cout << "请输入学号:" << endl;
cin >> stu.number;
cout << "请输入姓名:" << endl;
cin >> stu.name;
cout << "请输入性别(M/F):" << endl;
cin >> stu.gender;
cout << "请输入语文成绩:" << endl;
cin >> stu.chineseScore;
cout << "请输入数学成绩:" << endl;
cin >> stu.mathScore;
cout << "请输入英语成绩:" << endl;
cin >> stu.englishScore;
// 利用指针法输出各成员的值
cout << "学号:" << pstu->number << endl;
cout << "姓名:" << pstu->name << endl;
cout << "性别:" << pstu->gender << endl;
cout << "语文成绩:" << pstu->chineseScore << endl;
cout << "数学成绩:" << pstu->mathScore << endl;
cout << "英语成绩:" << pstu->englishScore << endl;
return 0;
}
```
在这个例子中,我们首先定义了一个名为`Student`的结构体,它包含了学号、姓名、性别、语文成绩、数学成绩和英语成绩等成员变量。然后我们定义了一个`Student`类型的对象`stu`,并且定义了一个指向该对象的指针变量`pstu`。
通过对象法,我们使用点运算符(`.`)来访问`stu`对象的各个成员变量,并且使用`cin`语句从标准输入中获取用户输入的值。而通过指针法,我们使用箭头运算符(`->`)来访问`pstu`指针所指向对象的各个成员变量,并且使用`cout`语句将各个成员变量的值输出到标准输出中。
注意,这里我们使用了`&`符号来获取`stu`对象的地址,并将其赋值给`pstu`指针变量,这样`pstu`指针就指向了`stu`对象。而在输出各个成员变量的值时,我们使用了`pstu->`来访问各个成员变量,这也就等同于`(*pstu).`的写法。
阅读全文