(1) 编写一个 C++程序,在其中创建一个含有 5 个元素的 Student 类的对象数组,并 给对象数组成员赋值,然后输出对象数组。输出对象数组时分别使用点(.)运算符和箭 头(->)运算符。
时间: 2024-05-01 11:24:05 浏览: 72
以下是一个示例程序,其中定义了一个名为Student的结构体,然后创建了一个Student类型的数组,并将其中的每个元素赋以值,最后输出数组中的每个元素:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct Student {
char name[20];
int age;
float score;
};
int main() {
struct Student students[5];
strcpy(students[0].name, "Tom");
students[0].age = 18;
students[0].score = 90.5;
strcpy(students[1].name, "Jerry");
students[1].age = 20;
students[1].score = 85.5;
strcpy(students[2].name, "Alice");
students[2].age = 19;
students[2].score = 95.0;
strcpy(students[3].name, "Bob");
students[3].age = 22;
students[3].score = 88.5;
strcpy(students[4].name, "David");
students[4].age = 21;
students[4].score = 92.0;
// 使用点运算符输出对象数组
for (int i = 0; i < 5; i++) {
printf("name: %s, age: %d, score: %.1f\n", students[i].name, students[i].age, students[i].score);
}
// 使用箭头运算符输出对象数组
for (int i = 0; i < 5; i++) {
printf("name: %s, age: %d, score: %.1f\n", (students + i)->name, (students + i)->age, (students + i)->score);
}
return 0;
}
```
注意,使用点运算符和箭头运算符的效果是相同的,其区别在于点运算符用于访问结构体变量的成员,而箭头运算符用于访问结构体指针的成员。在上述示例程序中,我们使用的都是对象数组的元素,因此两者的效果是一样的。
阅读全文