union

来源:互联网 发布:淘宝返现卡片 编辑:程序博客网 时间:2024/06/02 03:06
#include <stdio.h>


struct man
{
    char name[20];
    int num;
    char sex;
    char job;
    union differ
    {
        int cla;
char position[10];
    
    }zz;


};


int main()
{
    struct man persion[2];
    //union differ zz;
    printf("please enter: name num sex job class/position, twice\n");
    int i;
    for(i = 0; i < 2; i++)
    {
        scanf("%s %d %c %c", persion[i].name, &persion[i].num, &persion[i].sex, &persion[i].job);
        if(persion[i].job == 's')
{
   scanf("%d", &persion[i].zz.cla);
}
else if(persion[i].job == 't')
   {
       scanf("%s", &persion[i].zz.cla);
   }
   else
   {
       printf("error!");
   }
    }
    printf("\n");
    printf("name\tnum\tsex\tjob\tclass/position\n");


    for(i = 0; i < 2; i++)
    {
        if(persion[i].job == 's')
{
   printf("%5s %5d %5c %5c %5d\n",persion[i].name, persion[i].num, persion[i].sex, persion[i].job, persion[i].zz.cla);
        }
else
{
   printf("%5s %5d %5c %5c %5s\n",persion[i].name, persion[i].num, persion[i].sex, persion[i].job, persion[i].zz.position);
}
    }
    
    
    return 0;
}
原创粉丝点击