cycf 发表于 2019-4-1 20:25:00

共用体输出问题

#include <stdio.h>
struct
{
        char job;
        union
        {
                char zw;
                int bj;
        } xz ;
} p;

void main()
{
        int i;
        for(i=0;i<2;i++)
        {
                printf("date\n");
                scanf("%c",&p.job);   
                if(p.job=='s')
                scanf("%d",&p.xz.bj);
                else if(p.job=='t')       
                scanf("%s",&p.xz.zw);
        }
    for(i=0;i<2;i++)
        {
                if(p.job=='s')
          printf("%d%c",p.xz.bj,p.job);
          else        
          printf("%s %c",p.xz.zw,p.job);
        }
}

不好形容哪里出问题了,大家可以试试,谢谢了!

My_A 发表于 2019-4-3 07:50:35

你注意一下缩进,不然别人不好阅读,而且你应该把错误的信息粘上去,不然别人还要再跑一遍吗?

My_A 发表于 2019-4-3 07:52:18

还有scanf函数的字符输入%c ,不是%s

cycf 发表于 2019-4-3 15:47:16

My_A 发表于 2019-4-3 07:50
你注意一下缩进,不然别人不好阅读,而且你应该把错误的信息粘上去,不然别人还要再跑一遍吗?

恩恩 下次注意
页: [1]
查看完整版本: 共用体输出问题