立一个对象数组,内放5个学生的数据(学号、姓名年级成绩),用指针指向数组首元素,输出第1,3,5个学生的数据。
时间: 2024-05-12 09:17:25 浏览: 87
好的,我已经理解了你的问题。以下是C++代码实现示例:
```
#include <iostream>
#include <string>
using namespace std;
// 定义学生结构体
struct Student {
int id;
string name;
int grade;
float score;
};
int main() {
// 创建学生数组并初始化数据
Student students[5] = {
{1001, "张三", 1, 90},
{1002, "李四", 1, 85},
{1003, "王五", 2, 92},
{1004, "赵六", 2, 88},
{1005, "钱七", 3, 95}
};
// 定义指针指向学生数组首元素
Student *ptr = &students[0];
// 输出第1,3,5个学生的数据
cout << "第1个学生的数据:" << ptr->id << " " << ptr->name << " " << ptr->grade << " " << ptr->score << endl;
ptr += 2; // 指针偏移两个元素
cout << "第3个学生的数据:" << ptr->id << " " << ptr->name << " " << ptr->grade << " " << ptr->score << endl;
ptr += 2; // 指针再偏移两个元素
cout << "第5个学生的数据:" << ptr->id << " " << ptr->name << " " << ptr->grade << " " << ptr->score << endl;
return 0;
}
```
输出结果为:
```
第1个学生的数据:1001 张三 1 90
第3个学生的数据:1003 王五 2 92
第5个学生的数据:1005 钱七 3 95
```
阅读全文