```c
#include<stdio.h>
#include<string.h>
struct Student{//定义结构体
char num[10];
char name[16];
char sex[2];
int age;
char course[2];
union{
char reason[4];
int score;
}exam;
}s[4]={//初始化
{"1001","LingLing","w",20,"t",98},
{"1002","li Ming","M",19,"f","ill"},
{"1003","WangHua","M",22,"t",88},
{"1004","ZhangLi","W",20,"t",78}
};
enum find{
s1,
s2,
s3,
s4
}stu;
int main(){
int stu;
scanf("%d",&stu);
if(strcmp(s[stu-1].course,"t")){
printf("%s %s %s %d %d",s[stu-1].num,s[stu-1].name,s[stu-1].sex,s[stu-1].age,s[stu-1].exam.score);
}//判断union
else {
printf("%s %s %s %d %s",s[stu-1].num,s[stu-1].name,s[stu-1].sex,s[stu-1].age,s[stu-1].exam.reason);
}
return 0;
}
```