用VC++写一个学生系统管理,交小弟我方法吧

用VC++写一个学生系统管理,交我方法吧!
确实是我的课程作业,不过以前的老师没怎么讲工程,也没看过以为是大二学的,现在新老师要我们写一个系统,不知道怎么写,比如各个文件放在工程哪里?小组内怎么分配工作。写系统的理念是什么?如果大家能给一些参考资料,我就不胜感激了。我搜索的手段不好,总是找不到好的资源,要不就是网站内部 的。
作业是端口式的
题目:
班级信息:班级编号,班级类别(研究生班,本科生班,专科生班),班级学生人数,学生名,班长,其他班干等
学生档案管理:学号,身份证号,姓名,性别,籍贯,当前状态等。实现一个学生档案管理系统:完成功能:档案创建、修改、删除、查询、删除、查询、统计、排序、等操作。
要求:源文件采用多文件的工程结构
  数据存储采用文件形式
哎,大家提点建议吧


------解决方案--------------------
类似的,自己改吧
C/C++ code
#include<iostream> 
#include<string> 
#include<iomanip> 
#include<cstddef> 
#include<cstdlib> 
using namespace std; 
struct Teachergongzi 
{ 
    string department; 
    int teacherNO; 
    string name; 
    float base_salary; 
    float post_salary; 
    float bonus; 
    Teachergongzi *next; 
}; 
typedef Teachergongzi* TeacherGZ; 
//去掉换行符 
void new_line() 
{ 
    char symbol; 
    do{ 
        cin.get(symbol); 
    }while(symbol!='\n'); 
} 
//创建链表 
void Create(TeacherGZ &head) 
{ 
    TeacherGZ top; 
    top=new Teachergongzi; 
    top->next=NULL; 
    cout<<"\n\n请输入您的系别/部门:"; 
    cin>>top->department; 
    cout<<"\n请输入您的学号:"; 
    cin>>top->teacherNO; 
    cout<<"\n请输入您的姓名:"; 
    cin>>top->name; 
    cout<<"\n请输入您QQ:"; 
    cin>>top->base_salary; 
    cout<<"\n请输入您的E-mail:"; 
    cin>>top->post_salary; 
    cout<<"\n请输入您的预存金额(每次消费后减去消费额):"; 
    cin>>top->bonus; 
    top->next=head; 
    head=top; 
} 
//查找 
TeacherGZ Lookup(TeacherGZ head) 
{ 
    TeacherGZ here=head; 
    int no,number; 
    string trs; 
    if(here==NULL) 
    { 
        cout<<"\t\t现无任何记录!\n"; 
    } 
    else 
    { 
        cout<<"\n1.按姓名 2.按学号"; 
        cout<<"\n\n请选择:"; 
        cin>>no; 
        switch(no) 
        { case 1: 
        cout<<"\n\n请输入要查找的姓名:"; 
        cin>>trs; 
        while(here->name!=trs&&here->next!=NULL) 
            here=here->next; 
        if(here->name==trs) 
        { cout<<"------------------------------------"<<endl; 
        cout<<"系别"<<" | "<<"学号"<<" | "<<"姓名"<<"| "<<"QQ号码"<<"|"<<"E-mail" 
            <<"| "<<"存有金额"<<endl; 
        cout<<head->department<<" | "<<head->teacherNO<<" | "<<head->name<<"| " 
            <<head->base_salary<<" | "<<head->post_salary<<" | "<<head->bonus<<endl; 
        cout<<"------------------------------------"<<endl<<endl; 
        } 
        else 
            cout<<"\n查无此教师记录,请重输!\n\n"; 
        break; 
        case 2: cout<<"\n\n请输入要查找的教师号:"; 
            cin>>number; 
            while(here->teacherNO!=number&&here->next!=NULL) 
                here=here->next; 
            if(here->teacherNO==number) 
            { cout<<"------------------------------------"<<endl; 
            cout<<"系别"<<" | "<<"学号"<<" | "<<"姓名"<<"| "<<"QQ号码"<<"|"<<"E-mail" 
                <<"| "<<"存有金额"<<endl; 
            cout<<head->department<<" | "<<head->teacherNO<<" | "<<head->name<<"| " 
                <<head->base_salary<<" | "<<head->post_salary<<" | "<<head->bonus<<endl; 
            cout<<"------------------------------------"<<endl<<endl; 
            } 
            else 
                cout<<"\n查无此会员记录,请重输!\n\n"; 
            break; 
        default: 
            cout<<"\n输入数据错误,请重输!\n\n"; 
        } 
        
    } 
    return here; 
} 
//修改 
void Modify(TeacherGZ head) 
{ 
    TeacherGZ temp=head; 
    int no,number; 
    string trs; 
    if(temp==NULL) 
    { 
        cout<<"\t\t现无任何记录!\n"; 
    } 
    else 
    { 
        cout<<"\n\n1.按姓名 2.按会员号"; 
        cout<<"\n\n请选择:"; 
        cin>>no; 
        switch(no) 
        { case 1: cout<<"\n\n请输入要修改的姓名:"; 
        cin>>trs; 
        while(temp->name!=trs&&temp->next!=NULL) 
            temp=temp->next; 
        if(temp->name==trs) 
        { cout<<"\n\n请输入要修改的数据:"<<endl; 
        cout<<"请输入您的系别/部门:"; 
        cin>>temp->department; 
        cout<<"请输入您的学号:"; 
        cin>>temp->teacherNO; 
        cout<<"请输入您的姓名:"; 
        cin>>temp->name; 
        cout<<"请输入您的QQ:"; 
        cin>>temp->base_salary; 
        cout<<"请输入您的E-mail:"; 
        cin>>temp->post_salary; 
        cout<<"请输入您的预存金额(每次消费后减去消费额):"; 
        cin>>temp->bonus; 
        
        } 
        else 
            cout<<"\n查无此会员记录,请重输!\n\n"; 
        break; 
        case 2: cout<<"\n\n请输入要修改的学号:"; 
            cin>>number; 
            while(temp->teacherNO!=number&&temp->next!=NULL) 
                temp=temp->next; 
            if(temp->teacherNO==number) 
            { cout<<"\n\n请输入要修改的数据:"<<endl; 
            cout<<"请输入您的系别/部门:"; 
            cin>>temp->department; 
            cout<<"请输入您的学号:"; 
            cin>>temp->teacherNO; 
            cout<<"请输入您的姓名:"; 
            cin>>temp->name; 
            cout<<"请输入您的QQ:"; 
            cin>>temp->base_salary; 
            cout<<"请输入您的E-mail:"; 
            cin>>temp->post_salary; 
            cout<<"请输入您的预存金额(每次消费后减去消费额):"; 
            cin>>temp->bonus; 
            } 
            else 
                cout<<"\n查无此会员记录,请重输!\n\n"; 
            break; 
        default: 
            cout<<"\n输入数据错误,请重输!\n\n"; 
        } 
    } 
} 
//删除 
int Delete(TeacherGZ head) 
{ 
    TeacherGZ before,discard; 
    int no,number; 
    string trs; 
    if(head==NULL) 
    { 
        cout<<"\t\t现无任何记录!\n"; 
        return 0; 
    } 
    else 
    { 
        discard=head; 
        cout<<"\n\n1.按姓名 2.按学号"; 
        cout<<"\n\n请选择:"; 
        cin>>no; 
        switch(no) 
        { case 1: cout<<"\n\n请输入要删除的姓名:"; 
        cin>>trs; 
        while(discard->name!=trs&&discard->next!=NULL) 
        { before=discard; //before指向当前节点 
        discard=discard->next; //discard指向下一个节点 
        } 
        if(discard->name==trs) 
        { if(discard==head) //如找到的节点为第一个节点 
        head=discard->next; //则head使指向第二个节点 
        else //否则使before所指节点的指针指向下一个节点*/ 
            before->next=discard->next; 
        delete discard; 
        cout<<"\t\t此学号已被删除!\n"; 
        return (1); 
        } 
        else 
            cout<<"\n无此会员记录,请重输!\n\n"; 
        break; 
        case 2: cout<<"\n\n请输入要删除的学号:"; 
            cin>>number; 
            while(discard->teacherNO!=number&&discard->next!=NULL) 
            { before=discard; //before指向当前节点 
            discard=discard->next; //discard指向下一个节点 
            } 
            if(discard->teacherNO==number) 
            { if(discard==head) //如找到的节点为第一个节点 
            head=discard->next; //则head使指向第二个节点 
            else //否则使before所指节点的指针指向下一个节点*/ 
                before->next=discard->next; 
            delete discard; 
            cout<<"\t\t此学号已被删除!\n"; 
            return (1); 
            } 
            else 
                cout<<"\n无此会员记录,请重输!\n\n"; 
            break; 
        default: 
            cout<<"\n输入数据错误,请重输!\n\n"; 
        } 
        return 0; 
    } 
} 
//借书数据????没完成 
int xiaofei(TeacherGZ head) 
{ int shuliang; 
cout<<"请输入会员姓名:"; 
cout<<"请输入借书日期:"; 
cout<<"请输入书名:"; 
cout<<"1.输入完毕.2还有一本."; 
cin>>shuliang; 
if(shuliang==2) 
cout<<"请输第2本书名:"; 
return 0; 
} 

//消费查询 
//消费积分排序 
//写入读出文件 
//输出数据 
int Output(TeacherGZ head) 
{ 
    if(head==NULL) 
    { 
        cout<<"\t\t现无任何记录!\n"; 
        return 0; 
    } 
    else 
        while(head!=NULL) 
        { 
            cout<<"------------------------------------"<<endl; 
            cout<<"系别"<<" | "<<"学号"<<" | "<<"姓名"<<"| "<<"QQ号码"<<"|"<<"E-mail" 
                <<"| "<<"存有金额"<<endl; 
            cout<<head->department<<" | "<<head->teacherNO<<" | "<<head->name<<"| " 
                <<head->base_salary<<" | "<<head->post_salary<<" | "<<head->bonus<<endl; 
            cout<<"------------------------------------"<<endl; 
            head=head->next; 
            cout<<endl; 
            return 0; 
        } 
} 


//销毁链表 
/*void Destroy(TeachersalaryPtr head) 
{ 
TeachersalaryPtr pre,sat; 
pre=head; 
while(pre!=0) 
{ 
sat=pre; //指针sat记录待销毁节点 
pre=pre->next; 
delete sat; 
} 
}*/ 
int main() 
{ 
    TeacherGZ head=NULL; 
    int sel=1; 
    cout<<"\n\n ---------------------------------------------\n"; 
    cout<<"\t\t* 欢迎使用《新新书屋》图书出租管理系统 *\n" 
        <<"\t\t* 设计者 (自己加上) *\n" 
        <<"\t\t* 班级 (XXX自己加上) *\n" 
        <<"\t\t* 学号:(自己...) *\n"; 
    cout<<" ---------------------------------------------\n\n"; 
    while(sel!=0) 
    { 
        cout<<"\t\t*********************************************\n" 
            <<"\t\t* 1.新会员注册 2.查找会员信息 *\n" 
            <<"\t\t* 3.修改会员信息 4.删除会员信息 *\n" 
            <<"\t\t* 5.会员积分排行 6.查看会员消费 *\n" 
            <<"\t\t* 7.会员借书管理 0.退出操作 *\n" 
            <<"\t\t*********************************************\n" 
            <<"\n\n请选择您所需要的功能:"; 
        cin>>sel; 
        switch(sel){ 
        case 1: 
            Create(head); 
            break; 
        case 2: 
            Lookup(head); 
            break; 
        case 3: 
            Modify(head); 
            break; 
        case 4: 
            Delete(head); 
            break; 
            
        case 6: 
            Output(head); 
            break; 
        case 0: 
            sel=0; 
            cout<<"\n谢谢您的使用!\n"; 
            break; 
        } 
    } 
    return 0; 
}