小鲸鱼666 发表于 2020-7-7 17:34:03

共用体作业题

程序如下:
#include<stdio.h>

struct
{
        int num;
        char name;
        char sex;
        char job;
        union
        {
                int banji;
                char position;

        }category;
}person;

void main()
{
        int i;
        for(i=0;i<2;i++)
        {
                printf("输入号码,姓名,性别,职业\n");
                scanf("%d %s %c %c",&person.num,&person.name,&person.sex,&person.job);
               
                if(person.job=='s')
                {
                        printf("读入class\n");
                        scanf("%d",&person.category.banji);
                }
                else if(person.job=='t')
               
                {
                        printf("读入position\n");
                        scanf("%s",&person.category.position);
                }
        }
       
        printf("num   name   sex   job   class/position\n");
        for(i=0;i<2;i++)
        {
               
                if(person.job=='s')
                {
                        printf("%d%s%c%c%d\n",person.num,person.name,person.sex,person.job,person.category.banji);
                }
                else
                {
                        printf("%d%s%c%c%s\n",person.num,person.name,person.sex,person.job,person.category.position);
                }


        }


       
}


可以编译运行,格式还可以再改下
有其他大神写了的可以分享一下,借我这只菜鸡参考参考
页: [1]
查看完整版本: 共用体作业题