struct workers { char jobNo[15]; //员工号 char name[15]; //姓名 char sex[15]; //性别 char birthday[15]; //出生年月 char degree[15]; //学历 char position[15]; //职务 char salary[15]; //工资 char addr[15]; //住址 char tel[15]; //电话 }; //类型定义语句 typedef struct node { struct workers data; struct node *next; }Node; //添加信息函数 "尾插法建表" void Add(Node *worker) { Node *p, *q; char n[10]; q = worker; while (q->next != NULL) { q = q->next; } while (1) { printf("提示:输入0返回主菜单!\n"); printf("请输入员工号:"); scanf("%s", n); if (strcmp(n, "0") == 0) { break; } p = (Node *)malloc(sizeof(Node)); strcpy(p->data.jobNo, n); printf("请输入姓名:"); scanf("%s", p->data.name); printf("请输入性别:"); scanf("%s", p->data.sex); printf("请输入出生年月:"); scanf("%s", p->data.birthday); printf("请输入学历:"); scanf("%s", p->data.degree); printf("请输入职务:"); scanf("%s", p->data.position); printf("请输入工资:"); scanf("%s", p->data.salary); printf("请输入住址:"); scanf("%s", p->data.addr); printf("请输入电话:"); scanf("%s", p->data.tel); printf("提示:已经完成一条记录的添加!"); p->next = NULL; q->next = p; q = p; } }对每一句进行解释
时间: 2024-01-10 11:02:48 浏览: 29
这段代码是定义了一个结构体 `workers`,其中包含了员工的基本信息,如员工号、姓名、性别、出生年月、学历、职务、工资、住址、电话。接着定义了一个链表结构体 `node`,包含了 `workers` 结构体以及指向下一个节点的指针。然后定义了一个 `Add()` 函数,用于向链表中添加员工信息。该函数使用尾插法建立链表,并通过循环读取用户的输入信息,将其添加到链表中。如果用户输入了 "0",则跳出循环,返回主菜单。最后,该函数将新添加的节点接到链表的最后一个节点之后。
相关问题
struct workers { char name[15];//姓名 char gender;//性别 char department[18];//单位 unsigned int age;//年龄 unsigned long telephone;//电话 unsigned long wage;//工资 unsigned long num;//职工号 struct workers* next; };
这是一个结构体定义,用于表示职工的信息。其中包括姓名、性别、单位、年龄、电话、工资和职工号等字段。同时,结构体还包含一个指向下一个职工信息的指针。
可以使用这个结构体定义来创建一个职工信息的链表,每个节点代表一个职工的信息,通过指针将各个节点连接起来,形成一个链表结构。这样就可以方便地对职工信息进行添加、删除、修改和查找等操作。
struct People{ char name[10]; //姓名 char sex[4]; //性别 int num; //电话号码 char email[20]; //邮
件地址
};
这是一个结构体的定义,它包含了人的姓名、性别、电话号码和邮件地址。你可以通过定义该结构体类型的变量来存储和操作这些信息。例如:
```
struct People person1; //定义一个People类型的变量person1
strcpy(person1.name, "张三"); //给person1的姓名赋值为"张三"
strcpy(person1.sex, "男"); //给person1的性别赋值为"男"
person1.num = 123456789; //给person1的电话号码赋值为123456789
strcpy(person1.email, "zhangsan@example.com"); //给person1的邮件地址赋值为"zhangsan@example.com"
```
这样,你就可以使用person1结构体变量来访问和操作其中的成员了。例如,你可以输出person1的姓名:
```
printf("%s\n", person1.name);
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)