|
发表于 2022-3-30 21:58:28
|
显示全部楼层
没找到答案,就尝试自己做了下,有啥见解改进的欢迎各位指正!
本帖最后由 wang-123 于 2022-3-30 22:14 编辑
- #include <stdio.h>
- struct
- {
- char name[20];
- int num;
- char sex;
- char job;
- union
- {
- int grade; //班级
- char position[10]; //职务
- }sort;
- }person[3]; //两学生一老师
- void main()
- {
- int i;
- for(i=0; i<3; ++i)
- {
- printf("Please input name,num,sex(M/F),job(s/t) \n");
- scanf ("%s %d %c %c", &person[i].name,&person[i].num,&person[i].sex,&person[i].job);
- if (person[i].job == 's')
- {
- printf ("Please input grade: ");
- scanf("%d", &person[i].sort.grade);
- }
- else if(person[i].job == 't')
- {
- printf ("Please input position: ");
- scanf("%s", &person[i].sort.position);
- }
-
- }
- printf("\n");
- printf("name num sex job(grade/position)");
- for (i=0; i<3; ++i)
- {
- if(person[i].job == 's')
- {
- printf ("\n %-6s %-6d %-6c %-6d ",person[i].name, person[i].num, person[i].sex, person[i].sort.grade);
- }
- else
- {
- printf ("\n %-6s %-6d %-6c %-6s ",person[i].name, person[i].num, person[i].sex, person[i].sort.position);
- }
-
- }
- printf ("\n");
- }
复制代码 |
|