结构体数组
数组中的每一个元素都是结构体类型时,就构成了结构体数组。它们的每一个元素都有相同的结构体类型和不同的下标。其定义时需先定义结构体类型再定义结构体数组。
例:
struct employee
{
long id;
char name[20];
int age;
char sex;
float pay;
};
struct employee emp[30];
这是一个结构体数组的定义过程,定义了一个含30个元素的数组emp。每一个元素都是结构体变量。
在结构体数组的初始化时,要将每一个元素的数据用{}括起来。
例:
struct employee
{
long id;
char name[20];
int age;
char sex;
float pay;
}emp[2] = {{2008001,"zl",21,'m',1850.54},
{2008002,"lili",26,'f',1990.23}
};
标识结构数组的成员
规则:在结构名后加点,然后加成员名。
例:
emp[1].age
结构数组作为函数参数
结构数组作为函数参数有两种情况,一种是结构数组名作为函数参数,另一种是其成员作为函数参数。
#include <stdio.h>
struct employee
{
long id;
char name[20];
int age;
char sex;
float pay;
};
void printemp( struct employee emp[])
{
int i;
for( i = 0; i<3; i++)
printf("%1d,%s,%d,%c,%.2f",emp[i].id,emp[i].name,emp[i].age,emp[i].sex,emp[i].pay);
}
这是结构数组名作为函数参数。
#include <stdio.h>
struct employee
{
long id;
char name[20];
int age;
char sex;
float pay;
};
void printemp( struct employee emp[])
{
printf("%1d,%s,%d,%c,%.2f",emp.id,emp.name,emp.age,emp.sex,emp.pay);
}
此为结果数组的成员作为函数参数。
本文详细介绍了结构体数组的概念、定义及初始化方式,并通过实例展示了如何使用结构体数组及其成员进行编程,包括作为函数参数的应用。

被折叠的 条评论
为什么被折叠?



