郑佳声爸爸 发表于 2018-2-26 13:09:51

求大神解答

#include<stdio.h>//在里面加一个 &person【i】。name就会出现输入的值和自己想的不一样年 求大神解答
struct
{
    int num;
    char name;
    char sex;
    char job;
    union
    {
      int banji;
      char position;
    }car;
}person;
void main()
{
    int i;
    for(i=0;i<2;i++)
    {
      printf("请输入学号 姓名 工作 性别\n");
      scanf("%d,%s,%c,%c",&person.num,&person.name,&person.job,&person.sex);
      if(person.job=='s')
      {
            printf("yes");
            scanf("%d",&person.car.banji);

      }
      else if(person.job=='t')
      {
            scanf("%s",&person.car.position);
      }
      else
      {
            printf("职位输入错误\n");
      }
    }
    for(i=0;i<2;i++)
    {
      printf("学号;%d\n",person.num);
      printf("学号;%s\n",person.name);
      printf("性别;%c\n",person.sex);
      printf("职位;%c\n\n",person.job);
      if(person.job=='s')
      {
            printf("%d",person.car.banji);
      }
      if(person.job=='t')
      {
            printf("%s",person.car.position);
      }
    }
}

BngThea 发表于 2018-2-26 13:20:42

没看明白你想问什么
页: [1]
查看完整版本: 求大神解答