用c语言.设有若干个人员的数据,其中有学生和教师。学生的数据中包括:姓名、号码、性别、职业、班级。教师的数据包括:姓名、号码、性别、职业、职务。要求输入人员的数据,然后再输出。
时间: 2023-07-10 20:18:07 浏览: 119
好的,以下是一份用C语言实现的代码,可以实现输入学生和教师的数据,并输出:
```c
#include <stdio.h>
#include <string.h>
#define MAX_STUDENT 100
#define MAX_TEACHER 100
typedef struct student {
char name[20];
char id[10];
char gender[10];
char profession[20];
char class[10];
} Student;
typedef struct teacher {
char name[20];
char id[10];
char gender[10];
char profession[20];
char position[20];
} Teacher;
int main() {
Student students[MAX_STUDENT];
Teacher teachers[MAX_TEACHER];
int student_count = 0;
int teacher_count = 0;
char type[10];
printf("请输入人员的数据,输入end结束:\n");
while (1) {
printf("请输入人员类型(学生/教师):");
scanf("%s", type);
if (strcmp(type, "end") == 0) {
break;
}
if (strcmp(type, "学生") == 0) {
Student s;
printf("请输入学生姓名:");
scanf("%s", s.name);
printf("请输入学生号码:");
scanf("%s", s.id);
printf("请输入学生性别:");
scanf("%s", s.gender);
printf("请输入学生职业:");
scanf("%s", s.profession);
printf("请输入学生班级:");
scanf("%s", s.class);
students[student_count++] = s;
} else if (strcmp(type, "教师") == 0) {
Teacher t;
printf("请输入教师姓名:");
scanf("%s", t.name);
printf("请输入教师号码:");
scanf("%s", t.id);
printf("请输入教师性别:");
scanf("%s", t.gender);
printf("请输入教师职业:");
scanf("%s", t.profession);
printf("请输入教师职务:");
scanf("%s", t.position);
teachers[teacher_count++] = t;
} else {
printf("请输入正确的人员类型(学生/教师)\n");
}
}
printf("\n输入的人员数据如下:\n");
for (int i = 0; i < student_count; i++) {
printf("学生姓名:%s,学生号码:%s,学生性别:%s,学生职业:%s,学生班级:%s\n",
students[i].name, students[i].id, students[i].gender, students[i].profession, students[i].class);
}
for (int i = 0; i < teacher_count; i++) {
printf("教师姓名:%s,教师号码:%s,教师性别:%s,教师职业:%s,教师职务:%s\n",
teachers[i].name, teachers[i].id, teachers[i].gender, teachers[i].profession, teachers[i].position);
}
return 0;
}
```
在这个代码中,我们定义了两个结构体,一个是学生 `Student`,一个是教师 `Teacher`。在 `main` 函数中,我们定义了两个数组 `students` 和 `teachers` 来存储输入的学生和教师数据。同时,我们使用了 `student_count` 和 `teacher_count` 来记录输入的学生和教师数量。
在输入数据时,我们使用了一个 `while` 循环,不断输入人员类型和对应的数据,直到输入 `end` 结束。在输入数据时,我们使用了 `scanf` 函数来获取用户输入,并将输入的数据存储到对应的结构体中,然后将结构体存储到对应的数组中。
最后,我们使用两个 `for` 循环分别遍历 `students` 和 `teachers` 数组,输出输入的学生和教师数据。
阅读全文