C语言结构专题

本文介绍了C语言中结构体的声明、初始化、嵌套结构、成员访问、typedef简化类型定义、结构数组和函数参数等概念,以及如何使用这些技术来处理学生信息和找出最高分学生。
摘要由CSDN通过智能技术生成

1.声明结构体

struct student{

        char ID[16];

        char name[16];

        char sex;

        float score;

}stu;

2.初始化结构变量

struct student stu={"2023","JLU",'M',100};

3.将一个结构作为另一个结构的成员

struct date{

        int year;

        int month;

        int day;

};

然后在student结构体中加入struct date birthday;

会得到如下结构体

学号姓名性别出生日期成绩

此时初始化语句为struct student stu={"2024","JLU",'M',{2024,1,1},100};

4.想对ID赋值可以用strcpy(stu.ID,"2024");

   想对birthday赋值可用stu.birthday.year=2024;stu.birthday.month=1;stu.birthday.day=1;

5.输出结构成员

如学号:printf("学号:%s\n",stu.ID);  

生日:printf("生日:%d年%d月%d日\n",stu.birthday.year,stu.birthday.month,stu.birthday.day);

6.更方便的typedef定义数据类型

typedef struct pts{

        int x;

        int y;

        int z;

}Point;

Point my_py;

7.输出最高分学生信息核心代码

stu stu,first;

first.score=-1;

for(int i=1,i<=n;i++)

{

        //...省略其他信息输入;

        scanf("%f",&stu.score);

        if(stu.score>first.score)

                first=stu;

}

输出时:

printf("学号:%s\n",first.ID);

8.结构数组

stu stu[30]={{"1","JLU1",'M',100},{"2","JLU2",'F",100}}; 可得到下表

学号姓名性别成绩
1JLU1M100
2JLU2F100
............

9.结构指针   JLU不怎么涉及该内容

10.结构类型作为函数参数  不怎么涉及

11.联合和枚举  不怎么涉及

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值