#include〈stdio。h>#include〈stdlib。h>#include〈string。h>typedefstruct Student{char name[20];char sex[5];int age;char institute[20];char specialty[30]; }Student;typedefstruct Room{int roomnum;int roomarea;int totalnum;int stunum; Student stu[10]; Room *next; }Room;typedefstruct Story{char storynum; Room *room; }Story;/*——-——--——-—-——--—-—-—-——-—-———-—————-——--———————————-—————————-——-——---————-——--———--——-————--———*/Student *StudentCreat(int age,char name[],char institute[],char specialty[],char sex[]){ Student *Stu; Stu=(Student *)malloc(sizeof(Student)); Stu-〉age=age; strcpy(Stu—>institute,institute); strcpy(Stu-〉name,name); strcpy(Stu-〉specialty,specialty); strcpy(Stu—〉sex,sex);return Stu;}Room *RoomCreat(int room_num,int room_area,int total_num,int stu_num){ Room *R;int i; R=(Room *)malloc(sizeof(Room));if(!R)return NULL; R—>roomnum=room_num; R-〉roomarea=room_area; R-〉totalnum=total_num; R-〉stunum=stu_num; R-〉next=NULL;return R;} Story *StoryCreat(){ Story *S; S=(Story *)malloc(sizeof(Story)); S->room=RoomCreat(0,0,0,0);return S;}Story *DormCreat(){ Story *S,*control;char i; control=(Story *)malloc(26*sizeof(Story));if(!control)return NULL;for(i=’A';i<='Z’;i++) { S=StoryCreat(); S—〉storynum=i; control[i-'A’]=*S; }return control;}/*-————————-————-—-----————-——-———————-—-—————-—--———-——-——--——-———-—-—————--——--——--———--———-—-—-—*/Story *StorySearch(Story *control,char storynum) {return control+(storynum-’A');}Room *RoomSearch(Room *R,int room_num) {while(R—〉next!=NULL) {if(R—>next—〉roomnum==room_num)break;else R=R-〉next; }return R;}Student *StudentSearch(Room *R,char name[]){ Student *p;int ...