//有若干个人员的数据,其中有学生和教师
//学生的数据中包括:姓名,号码,性别,职业,班级
//教师的数据包括:姓名,号码,性别,职位,职务
//要求用同一个表格来处理
#include <stdio.h>
struct{
int num;
char name[10];
char sex;
char job;
union
{
int clas;
char position[10];
}catagory;
}person[2];
int main(){
int i;
for(i=0;i<2;i++){
printf("please enter the data of people:\n");
scanf("%d %s %c %c",&person[i].num,&person[i].name,
&person[i].sex,&person[i].job);
if(person[i].job=='s'){
scanf("%d",&person[i].catagory.clas);
}
else if(person[i].job=='t'){
scanf("%s",&person[i].catagory.position);
}
else{
printf("input error!");
}
}
printf("\n");
printf("no. name sex job class/position\n");
for(i=0;i<2;i++){
if(person[i].job=='s')
printf("%-6d%-10s%-4c%-4c%-10d%\n",person[i].num,person[i].name,
person[i].sex,person[i].job,person[i].catagory.clas);
else
printf("%-6d%-10s%-4c%-4c%-10s%\n",person[i].num,person[i].name,
person[i].sex,person[i].job,person[i].catagory.position);
}
return 0;
}
细节决定未来(公用体类型)
最新推荐文章于 2023-07-13 09:10:30 发布