亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 參考程序.cpp

?? 學生管理信息系統設計
?? CPP
字號:
 
 
#include <iomanip>
#include <iostream>
#include <fstream>
#include <vector>
#include <conio.h>
#include <stdlib.h>
#include <string>
#include <process.h>
#include <algorithm>
#include <stdio.h>
using namespace std;
struct student
{
char name[10];         ///   姓名
char  id[10];         ///   學號
float  Ynum;         ///   語文分數
float  Snum;        ///   數學分數
float  Enum;       ///  英語分數
float  number;    ///  總分
student *next;
};
///////////-------定義類-----------------------////////////
class stud
{
    student *p1,*p2,*head;
public:
  ~stud() /////----析構函數------------------------
{
while(head)
{
  p1=head->next;
  delete head;
  head=p1;
}
}
///------------成員函數------------
void output(student *head);              //  輸出學生成績
student * input(student *head);         //  增加學生記錄
student* del(student *head, char*p);   //  刪除記錄
student* find(student *head,char *p,int &n);  // 查找學生記錄(可查找多個同名數據)
student* stat(student *head);       //排序統計學生總分
friend void total(student*head);   //統計學生總分
student* insert(student *head);   //按學生總分插入記錄
student* clear(student *head);   // 刪除當前表
 void Inputs(student *p);       //用于添加數據的子函數
};//----------------------------------------------------
////---------用于添加數據的子函數-------///////
void stud::Inputs(student*p)
{
   cout<<setw(6)<<"姓名"<<setw(8)<<" 學號"
<<setw(8)<<"語文"<<setw(8)<<"數學"
<<setw(8)<<"英語"<<endl;
   cin>>p->name >>p->id;
   cin >>p->Ynum;
   while(cin.fail())
   {    cerr<<"您的輸入有誤,請重新輸入"<<endl;     
   cin.clear ();
   cin.sync ();
       cin>>p->Ynum;
   }
  cin>>p->Snum;
  while(cin.fail())
   {    cerr<<"您的輸入有誤,請重新輸入"<<endl;
        cin.sync ();
  cin.clear ();
       cin>>p->Snum;
   }
  cin>>p->Enum;
 while(cin.fail())
   {   cerr<<"您的輸入有誤,請重新輸入"<<endl;
 cin.clear ();
 cin.sync ();
       cin>>p->Enum;
   }
  total(p); //計算出總分
}
////////-----輸出學生成績-----------------/////////////////////
void stud::output (student *head)
{ p1=head;
while(p1!=NULL)
{
   cout<<setw(6)<<p1->name<<setw(8)
   <<p1->id<<setw(8)<<p1->Ynum
   <<setw(8)<<p1->Snum <<setw(8)
   <<p1->Enum <<setw(7)<<p1->number <<endl;
   p1=p1->next ;
}
}
/////////------------插入學生成績記錄--------////////////////
student* stud::insert(student *head)
{   
p1=new student;
           Inputs(p1); //調用子函數 增加數據
 
      p2=head;
 student* p3=NULL;
        while((p2->number < p1->number ) && p2->next !=NULL)
             {    p3=p2;
                 p2=p2->next;
             }
       if(p2->number > p1->number)
          {   p1->next=p2;
                  if(p3==NULL) //  若當前值是最小的
 return p1;
               p3->next =p1; 
           return head;
          }
     else 
          {   p2->next=p1;
               p1->next=NULL;
             return head;
           }   
}
//////----------清空數據------------/////////////
student* stud::clear(student*head)
{   
    while(head)
{   p1=head->next ;
      delete head;
   head=p1;
   }
    return head;
}
//////////-----------排序統計函數-----------/////////////////
student *stud::stat(student *head)
{
p2=head;
p1=p2->next;
while(p2->next)  //冒泡泡法, 呵呵`~~~
{ 
    
   if(p2->number > p1->number)
   {         // 把頭指針指向當前比較小的節點
           p2->next=p1->next;     
     p1->next=head;        
     head=p1;
                // 把用于比較的兩個指針復位             
      //p2=head;      
     p1=p2->next ;
   }
   else
   {           // 指向下一個節點
    p2=p2->next ;
    p1=p2->next ;
   }//-------------------------------------------
}
cout<<"當前表以按學生總分排序成功"<<endl;
return head;
}
/////-----------刪除記錄-----------//////////////////////
student* stud::del (student *head,char *p)
{  
p1=head;
p2=NULL;
while(strcmp(p1->name ,p)&& p1->next !=NULL)
{     p2=p1;
  p1=p1->next ;
}
if(!strcmp(p1->name ,p))
{   
  if(p1==head) 
        head=p1->next; 
    else
         p2->next=p1->next ;
cout<<"刪除成功,OK"<<endl;
delete p1;
}
else
cout<<" 沒找到姓名"<<p<<"的學生.\n"; //結點沒找到
  
return head ;
}
///////----------統計總分---------------///////////////
void total(student *p)
{   p->number = p->Ynum + p->Snum + p->Enum;
   
}
    
///////-------------查找函數----------///////////////////
student* stud::find (student *head,char *p,int& n)
{    
p2=head;
       while(strcmp(p2->name ,p) !=0 && p2->next  !=NULL)
                 p2=p2->next ;
    if(0==strcmp(p2->name,p))
{
  cout<<setw(6)<<p2->name<<setw(8)
   <<p2->id<<setw(8)<<p2->Ynum
   <<setw(8)<<p2->Snum <<setw(8)
   <<p2->Enum <<setw(7)<<p2->number <<endl;
   n++;
  return p2;
}
      else 
  if(n==0) 
  {
   system("cls");
  cout<<"對不起,沒有您要查找的學生數據"<<endl;
  }
return NULL;              
}
///////----------------增加學生記錄-----------////////////////////////////
student *stud::input (student *head)
{  p1=new student;
p2=head;
      Inputs(p1); //調用子函數 增加數據 
  if(head ==NULL)
  {
   head=p1;
   p1->next =NULL;
    return head;
  }
  while(p2->next !=NULL)
            p2=p2->next;
       p2->next=p1;
        p1->next=NULL;
     return head;
}
//----------- 輸出錯誤   -----------//////////
void error()
{
  cout<<"錯誤,這還是一張空表,請輸入數據"<<endl;
  getch();
}
///////////////////------------main函數--------//////////////////-----------
int main(void)
{  
    stud stus;
    student *head=NULL; 
    student *pd; //臨時指針, 用于查找函數
    char choice; //用于存放用戶的選擇項
  char name[10];  //查找,刪除記錄的 key
    while(1)
{   system("cls");
  cout<<"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓";
  cout<<"┃****************   ☆   學 生 成 績 管 理 系  統    ☆   ****************** ┃";
  cout<<"┃********** ★★★★★        ★★★★★★★         ★★★★★  *********** ┃";
  cout<<"┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫";
  cout<<"┃****************★  ☆          1.增加學生成績        ☆  ★****************┃";
  cout<<"┃****************★  ☆          2.顯示學生成績        ☆  ★****************┃";
  cout<<"┃****************★  ☆          3.排序統計成績        ☆  ★****************┃";
  cout<<"┃****************★  ☆          4.查找學生成績        ☆  ★****************┃";
  cout<<"┃****************★  ☆          5.刪除學生成績        ☆  ★****************┃";
  cout<<"┃****************★  ☆          6.插入學生成績        ☆  ★****************┃";
  cout<<"┃****************★  ☆          7.清空所有數據        ☆  ★****************┃";
  cout<<"┃****************★  ☆          8.安全退出系統        ☆  ★****************┃";                                                      
  cout<<"┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛";
  cout<<" 請輸入您的選擇(0--8):";cout<<endl;
   int n=0; //計數器,用于在查找時計算有沒有同名學生
  cin>>choice; 
  fflush(stdin); 
  if(choice=='8')  //安全退出
  {   cout<<"謝謝使用,再見"<<endl;
   exit(0);
  }//------------------------------------------------
  switch(choice)
  {
  case '1': 
   head=stus.input (head);
   break;//------------------------------------------------
  case '2':
  if(head==NULL)
  {
      error();
  break;
  }
    cout<<setw(6)<<"姓名"<<setw(8)<<" 學號"
<<setw(8)<<"語文"<<setw(8)<<"數學"
<<setw(8)<<"英語"<<setw(13)<<"總分!!!"<<endl;
   stus.output (head);
   getch();
   break;//------------------------------------------------
  case '3':
  if(head==NULL)
  {
  error();
  break;
  }
   head=stus.stat(head);
   getch();
   break;//------------------------------------------------
  case '4':
  if(head ==NULL)
  {
  error(); //調用函數輸出錯誤信息
  break;
  }
   cout<<"請輸入想要查找的學生姓名"<<" ,"<<"本系統可以查找重復姓名學生"<<endl;
      cin>>name;
   pd=head;
   cout<<setw(6)<<"姓名"<<setw(8)<<" 學號"
<<setw(8)<<"語文"<<setw(8)<<"數學"
<<setw(8)<<"英語"<<setw(13)<<"總分!!!"<<endl;
  while(pd)   // 循環調用函數, 用于輸出多個的同名學生成績
  {  
  pd=stus.find (pd,name,n);
     if(pd==NULL)
 break;
  pd=pd->next ; //指針指向當前以找到的下一個節點,用于查找多個同名學生
  }
   getch();
   break;//------------------------------------------------
  case '5':
  if(head==NULL)
  {
  error();
  break;
  }
         cout<<"請輸入想要刪除學生姓名"<<endl;
   
   cin>>name;
   head=stus.del(head,name);
   getch();
   break;//------------------------------------------------
   case '6':
     if(head==NULL)
 {
 error();
 break;
 }
    head=stus.stat (head);
        head=stus.insert(head);
         break;//-----------------------------------------------
case '7':
if(head==NULL)
 {
 error();
 break;
 }
         head=stus.clear(head);
        cout<<"刪除表成功~"<<endl;
       getch();
          break;//-----------------------------------------------
      default :
    cout<<" 對不起,您的輸入有誤,請重新輸入。\n";
    getch();
        break;
  }//------------------------------------------------------
}
getch();
return 0;
}

 
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品一区二区三区蜜臀| 懂色av中文字幕一区二区三区| 欧美日韩一级黄| 亚洲v日本v欧美v久久精品| 欧美日韩中文字幕一区| 日日夜夜精品免费视频| 69堂精品视频| 精品无码三级在线观看视频| 国产亚洲精品免费| av亚洲精华国产精华精| 亚洲免费在线视频一区 二区| 色噜噜久久综合| 舔着乳尖日韩一区| 精品久久久久久久久久久久久久久 | 在线免费观看视频一区| 午夜亚洲福利老司机| 欧美一区2区视频在线观看| 国产呦萝稀缺另类资源| 最新不卡av在线| 欧美精品日韩一区| 国产老妇另类xxxxx| 亚洲女人的天堂| 精品欧美黑人一区二区三区| av在线不卡观看免费观看| 婷婷综合在线观看| 久久精品亚洲乱码伦伦中文| 欧美亚洲一区二区在线观看| 蓝色福利精品导航| 亚洲在线中文字幕| 久久久久综合网| 欧美中文字幕一区| 成人综合在线网站| 男人的j进女人的j一区| 国产精品免费aⅴ片在线观看| 欧美日本韩国一区二区三区视频| 国产精品1区二区.| 天天影视涩香欲综合网| 中文字幕二三区不卡| 911国产精品| 色综合久久久久综合99| 狠狠色伊人亚洲综合成人| 亚洲一区二区在线免费观看视频 | 丝袜亚洲精品中文字幕一区| 国产欧美一区在线| 日韩女优制服丝袜电影| av不卡在线播放| 国产一区二区三区四区在线观看| 亚洲一区视频在线观看视频| 久久久久88色偷偷免费| 91精品久久久久久久久99蜜臂| 99久久夜色精品国产网站| 久久99国产精品免费| 亚洲mv在线观看| 亚洲理论在线观看| 国产欧美精品一区aⅴ影院 | 久久久91精品国产一区二区精品 | 欧美午夜影院一区| 成人动漫av在线| 国产成人激情av| 国模少妇一区二区三区| 免费在线成人网| 亚洲成人一区在线| 一区二区国产视频| 亚洲少妇最新在线视频| 欧美国产一区视频在线观看| 精品国产免费人成在线观看| 在线播放亚洲一区| 欧美日韩一区二区三区四区| 色综合色狠狠天天综合色| bt欧美亚洲午夜电影天堂| 国产精品一区二区在线看| 免费一级片91| 精品亚洲aⅴ乱码一区二区三区| 日韩一区精品字幕| 日韩成人免费电影| 日韩黄色片在线观看| 亚洲专区一二三| 亚洲不卡在线观看| 日韩国产在线观看| 五月婷婷久久综合| 日韩高清不卡一区| 蜜臀av一区二区在线免费观看| 热久久国产精品| 精品一区二区在线观看| 国内精品免费在线观看| 国产成人免费在线观看| 成人免费视频播放| 99久久久精品| 欧美日韩一区二区三区不卡| 欧美日韩精品久久久| 欧美日韩一区高清| 日韩视频123| 精品成a人在线观看| 欧美激情艳妇裸体舞| 日韩一区有码在线| 亚洲一区二区三区精品在线| 舔着乳尖日韩一区| 国产一区二区福利| 91丨国产丨九色丨pron| 色老汉一区二区三区| 欧美日韩黄视频| 精品嫩草影院久久| 国产精品全国免费观看高清| 一区二区三区在线视频观看58| 亚洲va国产va欧美va观看| 韩国毛片一区二区三区| 99国产精品久久久久久久久久| 精品视频在线免费| www国产精品av| 亚洲精品中文在线| 蜜臀av一区二区在线免费观看 | 国产一区二区三区黄视频| 国产69精品久久久久777| 一本久久a久久精品亚洲| 欧美日韩国产免费一区二区| 欧美α欧美αv大片| 亚洲欧美欧美一区二区三区| 日韩电影在线一区二区三区| 国产成人免费视频网站| 欧美系列一区二区| 国产精品午夜电影| 日本成人在线视频网站| 成av人片一区二区| 欧美va亚洲va香蕉在线| 依依成人精品视频| 国产乱人伦精品一区二区在线观看| 91美女在线视频| 久久亚洲一级片| 天天操天天色综合| 成人91在线观看| 久久日韩精品一区二区五区| 一区av在线播放| 福利一区二区在线| 91精品在线观看入口| 综合色中文字幕| 国产成人高清视频| 欧美大片在线观看一区| 亚洲成人免费在线观看| www.99精品| 国产色一区二区| 免费成人在线播放| 欧美日韩成人综合在线一区二区| 国产精品私房写真福利视频| 久久爱www久久做| 欧美久久一二三四区| 亚洲精品乱码久久久久久久久| 国产一区二区剧情av在线| 日韩一区二区免费高清| 午夜精品久久一牛影视| 色999日韩国产欧美一区二区| 国产日韩欧美一区二区三区乱码| 美女诱惑一区二区| 欧美日韩国产电影| 亚洲一区二区三区四区中文字幕| av成人动漫在线观看| 中文字幕乱码亚洲精品一区| 国产精品亚洲第一| 久久众筹精品私拍模特| 免费在线观看一区二区三区| 91精品国产色综合久久不卡电影 | 亚洲一区二区在线观看视频| 91在线观看高清| 综合网在线视频| av电影天堂一区二区在线观看| 日本一区二区久久| 国产精品亚洲午夜一区二区三区 | 91精品在线观看入口| 日韩中文字幕区一区有砖一区 | 亚洲三级电影全部在线观看高清| 成人黄色在线视频| 中文av一区特黄| 成人a级免费电影| 亚洲欧洲av一区二区三区久久| 成人黄色av网站在线| 国产精品全国免费观看高清| 波多野结衣在线一区| 国产精品理论片| 在线观看日韩毛片| 偷拍一区二区三区四区| 日韩一区二区电影| 久草热8精品视频在线观看| 26uuu精品一区二区三区四区在线| 国产又粗又猛又爽又黄91精品| 久久人人爽人人爽| 99热这里都是精品| 亚洲一区在线观看免费观看电影高清| 欧美区在线观看| 国产专区欧美精品| 国产精品亲子乱子伦xxxx裸| caoporm超碰国产精品| 亚洲国产精品久久人人爱| 欧美一区二区在线观看| 国产成人精品一区二| 伊人一区二区三区| 日韩精品在线看片z| 成年人国产精品| 日本va欧美va精品| 国产精品三级电影| 欧美久久免费观看| 国产成人av一区二区|