课程设计---学生信息管理系统

/*
*烟台大学计算机与控制工程学院
/*
 *Copyright (c) 2015,烟台大学计算机与控制工程学院
 *All rights reserved.
 *文件名称:lulu.cpp
 *作者:芦亚茹
 *完成日期:2015年12月31日
 *版本号:v1.o
 *
 *问题描述:学生信息管理系统
*/

#include 
#include 
#include 
#include
#include "xinxi.h"
using namespace std;
int main()
{
    Dis();
    int n;
    List s;
    while( cin>>n)
    {
        switch(n)//主界面中的各按键选择
        {
        case 1:
            //system("cls");
            s.CreateList();

            system("cls");
            Dis();
            break;
        case 2:

            s.LocateElem();
            system("pause");
            system("cls");
            Dis();
            break;
        case 3:
            s.Listchange();

            Dis();
            break;
        case 4:
            s.ListDelete();
            system("pause");
            system("cls");
            Dis();
            break;
        case 5:
            s.ListInsert();
            system("pause");
            system("cls");
            Dis();
            break;
        case 6:
            s.DispList();
            system("pause");
            system("cls");
            Dis();
            break;
        case 7:
            system("cls");
            cout<

#ifndef HEAD_H_INCLUDED
#define HEAD_H_INCLUDED
using namespace std;
typedef struct student
{
    int num;
    char name[20];
    char sex;
    int age;
    char zhuanye[20];
    int tel;
    student *next;
} ElemType;
class List
{
private:
    ElemType *head;               //链表头指针
public:
    void CreateList();            //建立
    void DispList();              //显示
    void ListInsert();            //插入
    void LocateElem();            //查找
    void Listchange();            //修改
    void ListDelete();            //删除
    List()
    {
        head=NULL;
        }
};
/************************ 
功能描述:建立学生信息函数 
输入参数:要录入的学生学号以及信息 
输出参数:无
其他说明:无 
*************************/
void List::CreateList()//建立,录入学生信息
{
    ElemType *head1,*p;
    cout<<"请输入学生信息以”0“结束输入"<>head1->num&&head1->num)
    {
        cin>>head1->name>>head1->sex>>head1->age>>head1->zhuanye>>head1->tel;
        p=new ElemType;
        head1->next=p;
        head1=p;
    }
    head1->next=NULL;
}
/************************ 
功能描述:浏览学生信息函数 
输入参数:无 
输出参数:全部学生信息
其他说明:无 
*************************/
void List::DispList()    
{
    ElemType *head1;
    head1=head;
    while(head1->next!=NULL)
    {
        cout<<"————————————————————————"<num<name<sex<age<zhuanye<tel<next;
    }
}
void List::ListDelete()      //删除某个学生
{
    int D_num;
    ElemType *p1,*p2;
    cout<<"请输入要删除的学生的学号,以0结束删除操作:"<>D_num&&D_num!=0)
    {
        p1=head;
        bool f=false;       //寻找成功的标志
        while(D_num!=p1->num&&p1!=NULL)
        {
            p2=p1;
            p1=p1->next;
        }
        if(D_num==p1->num)
        {
            f=true;
            if(p1==head)head=p1->next;   //删除头结点
            else p2->next=p1->next;
            cout<<"删除成功!"<>p0->num&&p0->num)
    {

        cout<<"请输入该学生的其他信息"<>p0->name;
        cout<<"性    别:";
        cin>>p0->sex;
        cout<<"年    龄:";
        cin>>p0->age;
        cout<<"专    业: ";
        cin>>p0->zhuanye;
        cout<<"电    话: ";
        cin>>p0->tel;
        while(p0->num>p1->num&&p1->next->num!=0)//p1指向倒数第二个节点
        {
            p2=p1;
            p1=p1->next;
        }
        if(p0->num<=p1->num)
        {
            if(head==p1)head=p0;//插在表头
            else p2->next=p0;//插在表中间
            p0->next=p1;
            cout<<"该学生信息已录入"<next=p1->next;
            p1->next=p0;
            //cout<next->num<<"************"<>b;
        if(b==0)
            break;
        p=head;
        while(p!=NULL)
        {
            if(b==p->num)
            {
                cout<<"____________________"<num<name<sex<age<zhuanye<tel<next;
            }
        }
        if(!f)
        {
            cout<<"查找失败,此学生不存在!"<>C_num;
        if(C_num==0)
            break;
        p=head;
        bool f=false;
        while(p->next!=NULL)
        {
            if(C_num==p->num)//所输入学号与原有学号相同时,开始修改学生信息
            {
                f=true;
                cout<<"请重新输入学生信息:"<>p->name;
                cout<<"性    别:";
                cin>>p->sex;
                cout<<"年    龄:";
                cin>>p->age;
                cout<<"专    业: ";
                cin>>p->zhuanye;
                cout<<"电    话: ";
                cin>>p->tel;
                //cin>>p->num>>p->name>>p->sex>>p->age>>p->zhuanye>>p->tel;
                break;
            }
            else
            {
                p=p->next;
            }
        }
        if(!f)//如果未查找到要修改的学生信息,可选择插入该学生信息
        {
            cout<<"未查找到此学生信息,是否插入该学生信息?"<>m;
            if(m==1)//p指向 0(即最后一个) 节点
            {
                //找到倒数第二个节点,
                p=head;
                while(p->next->num!=0)
                    p=p->next;
                //p指向倒数第二个节点
                ElemType *p1=new ElemType;
                p1->next=p->next;
                p->next=p1;
                cout<<"请输入该学生的其他信息:"<num=C_num;
                cout<<"姓    名:";
                cin>>p1->name;
                cout<<"性    别:";
                cin>>p1->sex;
                cout<<"年    龄:";
                cin>>p1->age;
                cout<<"专    业: ";
                cin>>p1->zhuanye;
                cout<<"电    话: ";
                cin>>p1->tel;
                break;

            }

        }
    }
}
/************************ 
功能描述:主菜单函数 
输入参数:要选择的功能按键 
输出参数:进入相对应的功能 
其他说明:无 
*************************/
void Dis()
{
    cout<

部分运行结果:

课程设计---学生信息管理系统_第1张图片课程设计---学生信息管理系统_第2张图片a

课程设计---学生信息管理系统_第3张图片

你可能感兴趣的:(课程设计---学生信息管理系统)