资源简介

这是我用C语言写的一个宿舍管理系统,可以实现1、宿舍信息录入 2、学生信息录入 3、删除某个宿舍 4、删除某个学生 5、宿舍信息浏览 6、学生信息浏览 7、宿舍信息修改 8、学生信息修改这些功能,附有可执行文件

资源截图

代码片段和文件信息

#include
#include
#include
typedef struct Student{
        char name[20];
        char sex[5];
        int age;
        char institute[20];
        char specialty[30];
        }Student;

typedef struct Room{
        int roomnum;
        int roomarea;
        int totalnum;
        int stunum;
        Student stu[10];
        Room *next;
        }Room;
        
typedef struct Story{
        char storynum;
        Room *room;
        }Story;
/*-------------------------------------------------------------------------------------------------*/        
Student *StudentCreat(int agechar name[]char institute[]char specialty[]char sex[])
{
     Student *Stu;
     Stu=(Student *)malloc(sizeof(Student));
     Stu->age=age;
     strcpy(Stu->instituteinstitute);
     strcpy(Stu->namename);
     strcpy(Stu->specialtyspecialty);
     strcpy(Stu->sexsex);
     return Stu;
}
 
Room *RoomCreat(int room_numint room_areaint total_numint 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(0000);
     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 *controlchar storynum)  
{
     return control+(storynum-‘A‘);
}

Room *RoomSearch(Room *Rint room_num) 
{
     while(R->next!=NULL)
     {
          if(R->next->roomnum==room_num)break;
          else R=R->next;
     }
     return R;
}

Student *StudentSearch(Room *Rchar name[])
{
     Student *p;
     int i;
     R=R->next;
     p=R->stu;
     for(i=0;istunum;i++)
     {
         if(strcmp(p->namename)==0)return p;
         else p++;
     }
     return NULL; 
}
/*-------------------------------------------------------------------------------------------------*/ 
void RoomInsert(Story *SRoom *R) 
{
     R->next=S->room->next;
     S->room->next=R;
}

void StudentInsert(Room *RStudent *Stu) 
{
     R=R->next;
     R->stu[R->stunum]=*Stu;
     R->stunum++;
}

void RoomDelete(Room *R) 
{
     Room *p;
     R=R->next;
     p=R;
     R=R->next;
     free(p);
}

void StudentDelete(Room *RStudent *Stu)
{
     R=R->next;
     Student *p;
     for(p=R->stu;Stustunum-1;Stu++)*Stu=*(Stu+1);
     R->stunum--;
}

void RoomRevamp(Room *R)            
{
    int ik;
    R=R->next;
    printf(“1、房号 2、

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       14956  2010-09-02 23:17  宿舍管理系统.cpp
     文件       34373  2010-09-02 23:17  宿舍管理系统.exe

评论

共有 条评论