今天看结构体小结
形式:struct 结构名{
成员列表
};
A 定义的三种方式
1.先定义结构体,子定义结构变量
struct 结构名{
成员列表
};
struct 结构名 结构变量;
2.定义结构体的同时,定义结构变量
struct 结构名{
成员列表
} 结构变量;
3.使用匿名结构体变量
struct {
成员列表
} 结构变量;
B初始化
1.先定义变量在初始化
struct Student{
int age;
char *name;
};
struct Student stu;
stu.age=10;
stu.age="zhanggong";
2.边定义边初始化
struct Student stu={10,“zhanggong”};
3.定义结构体同时,还可以指定元素初始化
struct Student stu={name=“zhanggong”};
附带一个小程序
- int main(int argc, const char *argv[]){
- //结构体
- struct stu
- {
- int num;
- char *name;
- char sex;
- float score;
- };
- struct stu boy[5] =
- {
- { 101, "liming", 'F', 45 },
- { 102, "zhanghong", 'M', 62.5 },
- { 103, "hefeng", 'F', 92.5 },
- { 104, "chengling", 'M', 87 },
- { 105, "wangming", 'M', 58 },
- };
- float sum = 0.0f;
- int count = 0;
- //循环
- for (int i = 0; i < 5; i++)
- {
- sum += boy[i].score;
- //判断成绩小于60的人数
- if (boy[i].score<60){
- count++;
- }
- //输出成绩在80到100人的姓名和成绩
- else if (boy[i].score <= 80 && boy[i].score <= 100)
- {
- printf("姓名=%s,成绩=%.2f\n", boy[i].name, boy[i].score);
- }
-
- }
- printf("平均值:%.2f\n", sum / 5);
- printf("不及格人数:%d\n", count);
- return 0;
- }
复制代码 |
|