小猪的C语言快速入门系列(六)

小猪的C语言快速入门系列(六)

标签: C语言


本节引言

上一节中,我们学习了复合数据类型中的 指针,作为C语言的灵魂,务必要好好
掌握,看本教程是肯定不够的,通过练习的方式加深熟练度,后面学数据结构,
指针是必不可少的!!!本节我们来把剩下的几个复合数据类型过一过,他们
分别是:函数结构体共用体枚举类型


本节学习路线图


函数

Tips

空函数就是什么都不做的函数,一般我们开发中不需要立即实现的函数,我们可以
先写一个空函数放着先,简单的空函数示例: void abc(){ }


结构体


共用体

代码示例2
建立一个共用体类型,当输入的时学生类型时,要求输入的是学生id,
当输入的是老师类型的时候,要求输入老师职称

#include <stdio.h>  
union type  
{  
    int cid;  //班级  
    char title[20];  //职称   
};  

struct Person  
{  
    char name[10];  //姓名  
    char sex;  //性别  
    int age;   //年龄  
    int flag;  //标志是老师还是学生   
    union type tp;  
};  

int main()  
{  
    struct Person person[10];  
    int i;  
    int num;  
    char ch;  
    printf("请输入要录入的人数:\n");  
    scanf("%d",&num);  
    for(i = 0;i<num;i++)  
    {  
        printf("请输入第%d个人员的信息:\n",i + 1);  
        printf("姓名: ");scanf("%s",&person[i].name);getchar();  
        printf("性别: ");scanf("%c",&person[i].sex);getchar();  
        printf("年龄: ");scanf("%d",&person[i].age);  
        printf("职业标识符: ");scanf("%d",&person[i].flag);  
        if(person[i].flag == 0)  
        {  
            printf("请输入学生的班级id:   ");  
            scanf("%d",&person[i].tp.cid);  
        }  
        else if(person[i].flag == 1)  
        {  
            printf("请输入老师的职称:   ");  
            scanf("%s",&person[i].tp.title);  
        }  
        else  
        {  
            printf("输入有误,请重新输入!\n");  
            i -= 1;  
        }  
    }  
    printf("\n输出所有录入人员的信息:\n");  

    for(i = 0;i<num;i++)  
    {  
        printf("输出第%d个人员的信息:\n",i + 1);  
        printf("姓名: ");puts(person[i].name);  
        printf("性别: ");printf("%c",person[i].sex);  
        printf("\t年龄: ");printf("%d",person[i].age);  
        if(person[i].flag == 0)  
        {  
            printf("\t学生的班级id:   ");  
            printf("%d\n",person[i].tp.cid);  
        }  
        else if(person[i].flag == 1)  
        {  
            printf("\t老师的职称:   ");  
            puts(person[i].tp.title);  
        }  
    }  
    return 0;  
}

运行结果


枚举


类型定义符(typedef)

其实就是类型别名而已,一般是定义结构体的时候用得较多。


本文链接小猪的C语言快速入门系列(六)
作者:Coder-Pig
出处http://blog.csdn.net/coder_pig
本文基于知识共享署名-相同方式共享 4.0 国际许可协议发布,欢迎转载,
演绎或用于商业目的,但是必须保留本文的署名及链接。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值