第10页
题面如下:

题解如下:
D1074.c
原文件
#include <stdio.h>
/*********Found************/
typedef struct Num5
{
char clas[10];
char position[10];
/*********Found************/
} ;
struct
{
int num;
char name[10], sex, job;
Num5 category;
} person[2];
int main(void)
{
int i;
for (i=0; i<2; i++)
{
printf("please enter the data of person %d: ", i+1);
scanf("%d %s %c %c", &person[i].num, &person[i].name, &person[i].sex, &person[i].job);
if ('s' == person[i].job)
{
scanf("%s", person[i].category.clas);
}
else if ('t' == person[i].job)
{
scanf("%s", person[i].category.position);
}
else
{
printf("Input error!");
}
}
printf("\nNo. name sex job class/position\n");
for (i=0; i<2; i++)
{
printf("%-6d%-10s%-4c%-4c%-10s\n", person[i].num, person[i].name,
person[i].sex, person[i].job, person[i].category.clas);
}
return 0;
}
改后文件
#include <stdio.h>
/*********Found************/
typedef union
{
char clas[10];
char position[10];
/*********Found************/
} Num5;
struct
{
int num;
char name[10], sex, job;
Num5 category;
} person[2];
int main(void)
{
int i;
for (i=0; i<2; i++)
{
printf("please enter the data of person %d: ", i+1);
scanf("%d %s %c %c", &person[i].num, person[i].name, &person[i].sex, &person[i].job);
if ('s' == person[i].job)
{
scanf("%s", person[i].category.clas);
}
else if ('t' == person[i].job)
{
scanf("%s", person[i].category.position);
}
else
{
printf("Input error!");
}
}
printf("\nNo. name sex job class/position\n"

本文通过几个具体的C语言实例,详细介绍了结构体、联合体、链表等数据结构的应用方法,包括如何定义结构体成员、使用联合实现变量共享、创建与遍历链表等。
最低0.47元/天 解锁文章
3426

被折叠的 条评论
为什么被折叠?



