C语言基础---结构、联合、枚举

结构:

    是一种由程序员设计的复合数据类型,它由若干个其它类型的成员组成,用于描述事物的各项属性。

    设计结构:

    struct 结构名 // 结构名一般首字母大写

    {

        成员类型 成员名;

        ...

    };

    定义结构变量:

    struct 结构名 结构变量名;

    初始化结构变量:

        顺序初始化:初始化数据与成员的顺序一一对应。

        struct 结构名 结构变量名 = {v1,v2,v3,...};  

        指定成员初始化:

        struct 结构名 结构变量名 = {

            .成员名1 = 初始化数据1,

            .成员名2 = 初始化数据2,

            ...

        };

   

    访问成员:

        结构变量.成员名;

        结构指针->成员名;

   

    注意:可以使用typedef重定义简短的类型名。

        typedef struct 结构名

        {

            成员类型 成员名;

            ...

        }结构名;

    练习1:设计一个教师结构体(姓名,工龄,工号,科目,...),定义教师结构变量,使用scanf从终端输入各成员的值,然后使用printf结构变量。

#include <stdio.h>

#include <stdlib.h>

typedef struct Student

{

int id;

char name[20];

int score_cnt;

float score[]; // 柔性数组

}Student;

void show_stu(Student* stup)

{

printf("%d %s",stup->id,stup->name);

for(int i=0; i<stup->score_cnt; i++)

{

printf(" %g",stup->score[i]);

}

printf("\n");

}

int main(int argc,

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值