亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++實現簡單的學生管理系統

2020-01-26 15:03:07
字體:
來源:轉載
供稿:網友

C++實現簡單的學生管理系統

//Student.cpp

#include<iostream> using namespace std; struct Stu{  char no[10];  char name[16];  int math;  int chi;  double ave;}; class Student{public:  Stu st;  Student * next;public:  Student(){}  Student(Stu s)  {    st=s;    next=NULL;    st.ave=(st.math+st.chi)/2.0;  }  void setst(Stu s)  {    st=s;    st.ave=(st.math+st.chi)/2.0;  }  Stu getst()  {    return st;  }  void show()  {    cout<<"----------------------------"<<endl;    cout<<"學號:"<<st.no<<endl;    cout<<"姓名:"<<st.name<<endl;    cout<<"數學成績:"<<st.math<<endl;    cout<<"語文成績:"<<st.chi<<endl;    cout<<"平均成績:"<<st.ave<<endl;    cout<<"----------------------------"<<endl;  }};

//main.cpp

#include<fstream>#include"Student.cpp" using namespace std; Student * create_List();void traverse_List(Student * pHead);bool is_empty(Student * pHead);int length_List(Student * pHead);bool insert_List(Student * pHead,int position,Stu st);bool delete_List(Student * pHead,int position,Stu * st);void sort_List(Student * pHead); void menu_select();void handle_menu(int s);void outFile();Student * inFile();void delFile(); Student * pHead;  void main(){  menu_select();} void menu_select(){  int s;  cout<<"請輸入您要操作的選項:"<<endl;  cout<<"1.增加原始記錄"<<endl;  cout<<"2.按平均分排序顯示所有記錄"<<endl;  cout<<"3.保存原始文件"<<endl;  cout<<"4.讀取原始文件"<<endl;  cout<<"5.刪除原始文件"<<endl;  cout<<"6.插入單條記錄"<<endl;  cout<<"7.刪除單條記錄"<<endl;  cout<<"8.顯示記錄總條數"<<endl;  cout<<"9.結束程序運行"<<endl<<endl;  cout<<"左邊數字對應功能選擇,請選擇1-9:";  cin>>s;  handle_menu(s);} void handle_menu(int s){  switch (s)  {  case 1:    {      system("cls");      pHead=create_List();      system("cls");      menu_select();      break;    }  case 2:    {      if(NULL==pHead)      {        cout<<"記錄總條數為零"<<endl;        getchar();        getchar();        system("cls");        menu_select();      }      system("cls");      sort_List(pHead);      traverse_List(pHead);      getchar();      getchar();      system("cls");      menu_select();      break;    }  case 3:    {      if(pHead!=NULL)      {        system("cls");        outFile();        system("cls");        menu_select();      }      system("cls");      menu_select();      break;    }  case 4:    {      system("cls");      pHead=inFile();      system("cls");      menu_select();      break;    }  case 5:    {      system("cls");      delFile();      system("cls");      menu_select();      break;    }  case 6:    {      if(NULL==pHead)      {        cout<<"記錄總條數為零"<<endl;        getchar();        getchar();        system("cls");        menu_select();      }      system("cls");      int num;      Stu st;      traverse_List(pHead);      cout<<"您想在哪條記錄后插入,請輸入序號:";      cin>>num;      cout<<"編輯要插入的記錄:"<<endl;      cout<<"學號:";      cin>>st.no;      cout<<"姓名:";      cin>>st.name;      cout<<"數學成績:";      cin>>st.math;      cout<<"語文成績:";      cin>>st.chi;      if(insert_List(pHead,num-1,st))      {        cout<<"插入成功!"<<endl;      }      else      {        cout<<"插入失敗!"<<endl;      }      getchar();      getchar();      system("cls");      menu_select();      break;    }  case 7:    {      if(NULL==pHead)      {        cout<<"記錄總條數為零"<<endl;        getchar();        getchar();        system("cls");        menu_select();      }      int num;      Stu * st=(Stu *)malloc(sizeof(Stu));      traverse_List(pHead);      cout<<endl<<"請輸入您要刪除的記錄的序號:";      cin>>num;      if(delete_List(pHead,num,st))      {        cout<<endl<<"成功刪除的記錄如下:"<<endl;        cout<<"學號:"<<st->no<<endl<<"姓名:"<<st->name<<endl;      }      else      {        cout<<"刪除失敗!"<<endl;      }      getchar();      getchar();      system("cls");      menu_select();      break;    }  case 8:    {      if(NULL!=pHead)      {        system("cls");        cout<<"記錄總條數:"<<length_List(pHead)<<"條"<<endl;        getchar();        getchar();        system("cls");        menu_select();      }      else      {        cout<<"記錄總條數為零"<<endl;        getchar();        getchar();        system("cls");        menu_select();      }      break;    }  case 9:    {      system("cls");      cout<<"成功退出!"<<endl;      exit(0);      break;    }  }}  void delFile(){  ofstream fileout;  fileout.open("c://kcsj.txt",ios_base::out);  fileout<<"";  fileout.close();}  Student * inFile(){  Student * pHead=(Student *)malloc(sizeof(Student));  if(NULL==pHead)  {    cout<<"分配失敗,程序終止!"<<endl;    exit(0);  }  Student * pTail=pHead;  pTail->next=NULL;  ifstream in("c://kcsj.txt");  if (!in.is_open())  {    cout << "Error opening file"<<endl;     exit(0);  }  while (!in.eof())  {    Stu st;    in.read(reinterpret_cast<char *>(&st), sizeof(st));    if (in.fail())     {      break;    }    Student * pNew=new Student();    if(NULL==pNew)    {      printf("分配失敗,程序終止/n");      exit(0);    }    pNew->setst(st);    pTail->next=pNew;    pNew->next=NULL;    pTail=pNew;  }  in.close();  return pHead;}  void outFile(){  ofstream out;  out.open("c://kcsj.txt",ios_base::out|ios_base::app|ios::binary);  if(!out)  {    cout<<"文件不存在,退出時別忘記保存文件!"<<endl;    out.close();    out.open("stu.dat",ios_base::out|ios::binary);  }  else  {     out.close();    out.open("c://kcsj.txt",ios_base::out|ios_base::app|ios::binary);  }  Student * temp=pHead->next;  while(temp!=NULL)  {    Stu st=temp->getst();    out.write(reinterpret_cast<char *>(&st), sizeof(st));    temp=temp->next;  }    out.close();} Student * create_List(){  int len;  Student * pHead=(Student *)malloc(sizeof(Student));  if(NULL==pHead)  {    cout<<"分配失敗,程序終止!"<<endl;    exit(0);  }  Student * pTail=pHead;  pTail->next=NULL;  cout<<"請輸入要存儲的學生人數:";  cin>>len;  for(int i=0;i<len;i++)  {    Stu st;    cout<<"請輸入第"<<i+1<<"個學生的學號:";    cin>>st.no;    cout<<"請輸入第"<<i+1<<"個學生的姓名:";    cin>>st.name;    cout<<"請輸入第"<<i+1<<"個學生的數學成績:";    cin>>st.math;    cout<<"請輸入第"<<i+1<<"個學生的語文成績:";    cin>>st.chi;    Student * pNew=new Student();    if(NULL==pNew)    {      printf("分配失敗,程序終止/n");      exit(0);    }    pNew->setst(st);    pTail->next=pNew;    pNew->next=NULL;    pTail=pNew;  }  return pHead;} void traverse_List(Student * pHead){  int i=1;  Student * temp=pHead->next;  while(temp!=NULL)  {    cout<<endl<<"序號:"<<i<<endl;    temp->show();    temp=temp->next;    i++;  }}   bool is_empty(Student * pHead){  if(NULL==pHead->next)  {    return true;  }  else  {    return false;  }} int length_List(Student * pHead){  int len=0;  Student * temp=pHead->next;  while(temp)  {    len++;    temp=temp->next;  }  return len;} bool insert_List(Student * pHead,int position,Stu st){  int i=0;  Student * p=pHead;   while(NULL!=p&&i<position-1)  {    p=p->next;    i++;  }  if(i>position-i||NULL==p)  {    return false;  }  Student * pNew=(Student *)malloc(sizeof(Student));  if(NULL==pNew)  {    cout<<"分配失敗,程序終止"<<endl;    exit(0);  }  pNew->setst(st);  pNew->next=p->next;  p->next=pNew;  return true;} bool delete_List(Student * pHead,int position,Stu * st){  int i=0;  Student * p=pHead;   while(NULL!=p->next&&i<position-1)  {    p=p->next;    i++;  }  Student * q=p->next;  *st=q->getst();  p->next=p->next->next;  free(q);  q=NULL;  return true;} void sort_List(Student * pHead){  Student * p,* q;  Stu temp;  int i,j;  int len=length_List(pHead);  for(i=0,p=pHead->next;i<len-1;i++,p=p->next)  {    for(j=i+1,q=p->next;j<len;j++,q=q->next)    {      if(q->st.ave>p->st.ave)      {        temp=q->st;        q->st=p->st;        p->st=temp;      }    }  }  }

以上所述就是本文的全部內容了,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
午夜精品免费视频| 亚洲老头老太hd| 亚洲综合中文字幕在线| 国产精品白丝jk喷水视频一区| 久操成人在线视频| 国产成人久久久精品一区| 中文字幕亚洲欧美在线| 黄网动漫久久久| 91高清免费在线观看| 91视频九色网站| 国产精品国模在线| 成人97在线观看视频| 亚洲免费av片| 国产精品福利网站| 亚洲精品电影久久久| 97视频在线免费观看| 午夜精品蜜臀一区二区三区免费| 日韩久久精品电影| 久久不射热爱视频精品| 久久夜色精品亚洲噜噜国产mv| 91色视频在线观看| 亚洲第一视频在线观看| 亚洲а∨天堂久久精品9966| 国内免费久久久久久久久久久| 久久久久久久久国产精品| 亚洲男人的天堂网站| 午夜精品99久久免费| 麻豆乱码国产一区二区三区| 精品自在线视频| 国产精品久久久久国产a级| 国产精品激情av在线播放| 久久的精品视频| 国产色视频一区| 国产69精品久久久久久| 亚洲第一天堂无码专区| 亚洲一区二区三区在线视频| 欧美激情第99页| 久久亚洲一区二区三区四区五区高| 一区二区三区在线播放欧美| 欧美情侣性视频| 国产精品免费小视频| 亚洲最大的网站| 成人黄色免费在线观看| 日韩中文字幕免费看| 国产亚洲欧美一区| 欧美亚州一区二区三区| 日韩久久午夜影院| www.亚洲一区| 欧美电影免费播放| 91免费高清视频| 日本一区二区在线播放| 蜜月aⅴ免费一区二区三区| 日韩精品中文在线观看| 日韩欧美在线免费观看| 亚洲综合中文字幕在线观看| 亚洲男人天天操| 日韩欧美主播在线| 久热爱精品视频线路一| 神马久久桃色视频| 欧美孕妇性xx| 日韩不卡在线观看| 欧美色道久久88综合亚洲精品| 国产精品久久久久免费a∨大胸| 亚洲在线第一页| 亚洲老司机av| 欧美成人午夜影院| 日本精品视频网站| 欧美激情亚洲综合一区| 日韩中文字幕网| 国产精品福利无圣光在线一区| 国产精品永久免费在线| 日韩精品在线免费播放| 亚洲成人av中文字幕| 国产成人精品电影| 国内久久久精品| 国产精品久久久久久久久借妻| 一区二区三区国产视频| 日韩激情视频在线| 亚洲日韩中文字幕| 日韩av免费看网站| 国产视频精品自拍| 亚洲欧美国内爽妇网| 亚洲中国色老太| 精品国产91久久久久久老师| 色小说视频一区| 777国产偷窥盗摄精品视频| 日韩精品视频中文在线观看| 少妇av一区二区三区| 亚洲无线码在线一区观看| 国产精品一区电影| 亚洲电影在线观看| 色综合久久久久久中文网| 中文字幕精品一区久久久久| 亚洲国产精品久久精品怡红院| 国产亚洲激情视频在线| 日韩美女视频免费在线观看| 国产精品久久91| 欧美高清理论片| 国产精品日韩在线| 欧美极品美女电影一区| 欧洲精品在线视频| 久久视频国产精品免费视频在线| 久久精品这里热有精品| 亚洲欧美变态国产另类| 91国内揄拍国内精品对白| 亚洲精品中文字幕有码专区| 韩曰欧美视频免费观看| 欧美最顶级丰满的aⅴ艳星| 在线成人免费网站| 国产精品一区av| 成人网在线免费看| 高清欧美一区二区三区| 亚洲最大激情中文字幕| 成人精品视频久久久久| 久久av.com| 中文字幕av一区二区| 最新91在线视频| 91精品视频在线免费观看| 国外成人在线直播| 国产精品成人国产乱一区| 亚洲人线精品午夜| 亚洲另类激情图| 亚洲成人1234| 日韩精品免费观看| 91国自产精品中文字幕亚洲| 亚洲精品v欧美精品v日韩精品| 欧美激情二区三区| 亚洲色图17p| 久久男人资源视频| 国产主播欧美精品| 日韩在线国产精品| 国产精品免费一区豆花| 日韩二区三区在线| 成人精品一区二区三区电影黑人| 欧美人与性动交| 国产精品夜间视频香蕉| 久久亚洲影音av资源网| 97香蕉超级碰碰久久免费的优势| 2019精品视频| 精品久久香蕉国产线看观看gif| 久久国产精品久久精品| 欧美精品999| 亚洲精品成人网| 欧美成人激情视频免费观看| 亚洲精品www久久久| 一区二区三区四区在线观看视频| 成人精品一区二区三区电影免费| 亚洲在线www| 日韩福利在线播放| 久久久久五月天| 国产成人啪精品视频免费网| 久久成人精品电影| 欧美日韩精品在线视频| 亚洲精品理论电影| 欧美丰满少妇xxxxx| 午夜精品久久久久久久99热| 亚洲综合一区二区不卡| 国产精品男女猛烈高潮激情| 欧美一级bbbbb性bbbb喷潮片| 欧美激情国内偷拍| 91老司机在线| 亚洲xxxx3d| 一区二区av在线| 久久国产精品久久国产精品|