1、编写程序定义一个结构体数据类型并说明一个结构体数据类型的数组,然后说明个结构体指针变量,通过指针变量输出该数组中各元素的值,要求输出结果如下所示:
时间: 2024-05-04 09:16:31 浏览: 80
好的,让我来回答你的问题。
为了定义一个结构体数据类型,我们可以使用如下的语法:
```
struct person {
char name[20];
int age;
float height;
};
```
上面的代码定义了一个名为 `person` 的结构体数据类型,该结构体包括姓名、年龄和身高三个成员。
接下来,我们可以定义一个该类型的数组并初始化它:
```
struct person people[3] = {
{"Tom", 25, 175.6},
{"Jerry", 30, 180.3},
{"Alice", 27, 160.9}
};
```
这个数组名为 `people`,包括三个元素,每个元素都是一个 `person` 结构体类型,并分别包括姓名、年龄和身高。
接下来,我们可以定义一个结构体指针变量并将它指向数组的首地址:
```
struct person *ptr = people;
```
注意,这里的指针变量类型为 `struct person *` 而不是仅仅是 `person *`,因为我们要指向的是一个结构体类型的数组。
最后,我们可以使用指针变量来输出数组中各元素的值:
```
for (int i = 0; i < 3; i++) {
printf("%s is %d years old and %f meters tall.\n",
(ptr+i)->name, (ptr+i)->age, (ptr+i)->height);
}
```
输出结果应该长这样:
```
Tom is 25 years old and 175.600006 meters tall.
Jerry is 30 years old and 180.300003 meters tall.
Alice is 27 years old and 160.899994 meters tall.
```
希望能够帮助到你,还有什么问题尽管问我。
阅读全文