void insert_people(dorm_t *my_dorm){
if(N == my_dorm->count){
printf("6人宿舍已满员,添加失败\n");
return;
}
scanf("%d%s%s%d",&(my_dorm->p[my_dorm->count].num),
my_dorm->p[my_dorm->count].name,my_dorm->p[my_dorm->count].gender,
&(my_dorm->p[my_dorm->count].age));
my_dorm->count++;
printf("该人员的信息添加成功\n");
return;
}
void delete_people(dorm_t *my_dorm){
printf("请输入要删除人员的床号>>");
int input_num = 0;
scanf("%d",&input_num);
for(int i = 0; i < my_dorm->count; i++){
if(input_num == my_dorm->p[i].num){
for(int j = i; j < my_dorm->count-1;j++){
my_dorm->p[j] = my_dorm->p[j+1];
}
my_dorm->count--;
return;
}
}
printf("该人员的信息不存在,删除失败\n");
return;
}
void search_people(dorm_t *my_dorm){
printf("请输入要查询人员的床号>>");
int input_num = 0;
scanf("%d",&input_num);
int i = 0;
for(i = 0; i < my_dorm->count; i++){
if(input_num == my_dorm->p[i].num){
break;
}
}
if(i < my_dorm->count){
printf("此人的基本信息>>%-4d%-10s%-10s%-4d\n",my_dorm->p[i].num,
my_dorm->p[i].name,my_dorm->p[i].gender,
my_dorm->p[i].age);
} else if (i == my_dorm->count){
printf("该人员的信息不存在,查询失败\n");
}
return;
}
void modify_people(dorm_t *my_dorm){
printf("请输入要修改人员的床号>>");
int input_num = 0;
scanf("%d",&input_num);
int i = 0;
for( i = 0; i < my_dorm->count; i++){
if(input_num == my_dorm->p[i].num){
break;
}
}
if(i < my_dorm->count){
printf("请输入此人员所要修改的基本信息>>");
scanf("%s%s%d",my_dorm->p[i].name,my_dorm->p[i].gender,
&(my_dorm->p[i].age));
} else if (i == my_dorm->count){
printf("该人员的信息不存在,修改失败\n");
}
return;
}
void sort_people(dorm_t *my_dorm){
for(int i = 0; i < my_dorm->count-1; i++){
for(int j = 0; j < my_dorm->count-1-i; j++){
if(my_dorm->p[j].num > my_dorm->p[j+1].num){
peo_t temp = my_dorm->p[j];
my_dorm->p[j] = my_dorm->p[j+1];
my_dorm->p[j+1] = temp;
}
}
}
printf("排序完成\n");
return;
}
void print_people(dorm_t *my_dorm){
for(int i = 0; i < my_dorm->count; i++){
printf("%-4d%-10s%-10s%-4d\n",my_dorm->p[i].num,
my_dorm->p[i].name,my_dorm->p[i].gender,
my_dorm->p[i].age);
}
}
#include "dorm.h"
int main(int argc, char const *argv[])
{
dorm_t my_dorm;
memset(&my_dorm,0,sizeof(my_dorm));
int ch = 0;
while (1)
{
print_menu();
scanf("%d",&ch);
switch(ch){
case 1:
insert_people(&my_dorm);
break;
case 2:
delete_people(&my_dorm);
break;
case 3:
search_people(&my_dorm);
break;
case 4:
modify_people(&my_dorm);
break;
case 5:
sort_people(&my_dorm);
break;
}
if (6 == ch){
break;
}
print_people(&my_dorm);
}
printf("欢迎下次使用宿舍人员信息管理系统\n");
return 0;
}
#ifndef __DORM_H__
#define __DORM_H__
#include
#include
#include
#define N 6
typedef struct _People
{
int num;
char name[20];
char gender[5];
int age;
}peo_t;
typedef struct _Dorm{
peo_t p[N];
int count;
}dorm_t;
void print_menu();
void print_people(dorm_t *my_dorm);
void insert_people(dorm_t *my_dorm);
void delete_people(dorm_t *my_dorm);
void search_people(dorm_t *my_dorm);
void modify_people(dorm_t *my_dorm);
void sort_people(dorm_t *my_dorm);
#endif
#include "dorm.h"
void print_menu(){
puts("------------------------------------------------");
printf("1.添加人员信息\n");
printf("2.删除人员信息\n");
printf("3.查询人员信息\n");
printf("4.修改人员信息\n");
printf("5.按照床位号排序\n");
printf("6.退出宿舍人员信息登记系统\n");
puts("------------------------------------------------");
printf("请输入您的选择>>");
}
void print_people(dorm_t *my_dorm){
for(int i = 0; i < my_dorm->count; i++){
printf("%-4d%-10s%-10s%-4d\n",my_dorm->p[i].num,
my_dorm->p[i].name,my_dorm->p[i].gender,
my_dorm->p[i].age);
}
}
void insert_people(dorm_t *my_dorm){
if(N == my_dorm->count){
printf("6人宿舍已满员,添加失败\n");
return;
}
scanf("%d%s%s%d",&(my_dorm->p[my_dorm->count].num),
my_dorm->p[my_dorm->count].name,my_dorm->p[my_dorm->count].gender,
&(my_dorm->p[my_dorm->count].age));
my_dorm->count++;
printf("该人员的信息添加成功\n");
return;
}
void delete_people(dorm_t *my_dorm){
printf("请输入要删除人员的床号>>");
int input_num = 0;
scanf("%d",&input_num);
for(int i = 0; i < my_dorm->count; i++){
if(input_num == my_dorm->p[i].num){
for(int j = i; j < my_dorm->count-1;j++){
my_dorm->p[j] = my_dorm->p[j+1];
}
my_dorm->count--;
return;
}
}
printf("该人员的信息不存在,删除失败\n");
return;
}
void search_people(dorm_t *my_dorm){
printf("请输入要查询人员的床号>>");
int input_num = 0;
scanf("%d",&input_num);
int i = 0;
for(i = 0; i < my_dorm->count; i++){
if(input_num == my_dorm->p[i].num){
break;
}
}
if(i < my_dorm->count){
printf("此人的基本信息>>%-4d%-10s%-10s%-4d\n",my_dorm->p[i].num,
my_dorm->p[i].name,my_dorm->p[i].gender,
my_dorm->p[i].age);
} else if (i == my_dorm->count){
printf("该人员的信息不存在,查询失败\n");
}
return;
}
void modify_people(dorm_t *my_dorm){
printf("请输入要修改人员的床号>>");
int input_num = 0;
scanf("%d",&input_num);
int i = 0;
for( i = 0; i < my_dorm->count; i++){
if(input_num == my_dorm->p[i].num){
break;
}
}
if(i < my_dorm->count){
printf("请输入此人员所要修改的基本信息>>");
scanf("%s%s%d",my_dorm->p[i].name,my_dorm->p[i].gender,
&(my_dorm->p[i].age));
} else if (i == my_dorm->count){
printf("该人员的信息不存在,修改失败\n");
}
return;
}
void sort_people(dorm_t *my_dorm){
for(int i = 0; i < my_dorm->count-1; i++){
for(int j = 0; j < my_dorm->count-1-i; j++){
if(my_dorm->p[j].num > my_dorm->p[j+1].num){
peo_t temp = my_dorm->p[j];
my_dorm->p[j] = my_dorm->p[j+1];
my_dorm->p[j+1] = temp;
}
}
}
printf("排序完成\n");
return;
}
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>1
1 Q M 16
该人员的信息添加成功
1 Q M 16
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>1
6 W M 21
该人员的信息添加成功
1 Q M 16
6 W M 21
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>1
5 E M 20
该人员的信息添加成功
1 Q M 16
6 W M 21
5 E M 20
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>1
4 A M 23
该人员的信息添加成功
1 Q M 16
6 W M 21
5 E M 20
4 A M 23
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>1
3 S M 22
该人员的信息添加成功
1 Q M 16
6 W M 21
5 E M 20
4 A M 23
3 S M 22
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>1
2 D M 18
该人员的信息添加成功
1 Q M 16
6 W M 21
5 E M 20
4 A M 23
3 S M 22
2 D M 18
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>5
排序完成
1 Q M 16
2 D M 18
3 S M 22
4 A M 23
5 E M 20
6 W M 21
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>2
请输入要删除人员的床号>>4
1 Q M 16
2 D M 18
3 S M 22
5 E M 20
6 W M 21
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>3
请输入要查询人员的床号>>6
此人的基本信息>>6 W M 21
1 Q M 16
2 D M 18
3 S M 22
5 E M 20
6 W M 21
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>4
请输入要修改人员的床号>>1
请输入此人员所要修改的基本信息>>Q M 19
1 Q M 19
2 D M 18
3 S M 22
5 E M 20
6 W M 21
------------------------------------------------
1.添加人员信息
2.删除人员信息
3.查询人员信息
4.修改人员信息
5.按照床位号排序
6.退出宿舍人员信息登记系统
------------------------------------------------
请输入您的选择>>6
欢迎下次使用宿舍人员信息管理系统