freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

《c++程序設(shè)計(jì)語(yǔ)言》課程設(shè)計(jì)報(bào)告(學(xué)生學(xué)籍管理系統(tǒng))-文庫(kù)吧

2025-04-24 01:39 本頁(yè)面


【正文】 除 ? 作者 amp。版權(quán)信息模塊 顯示作者及課設(shè)的相關(guān)信息 9 七、 比較有特色的函數(shù) ? 純虛函數(shù) SearNum virtual Info *SearNum(char *)=0。 //按學(xué)號(hào)查找學(xué)生信息,純虛函數(shù) ? Creat 函數(shù) void Student::creat() //創(chuàng)建鏈表 { Info *head。 Info *p1,*p2。 int n=0。 char GoOn=39。Y39。 p1=p2=new Info。 InputOne(p1)。 ((char *)p1, sizeof(*p1))。 //二進(jìn)制輸出文件 head=NULL。 while(GoOn==39。Y39。||GoOn==39。y39。) { n++。 if(n==1) head=p1。 else p2next=p1。 p2=p1。 system(COLOR 1e)。 cout 是否繼續(xù)輸入? Y/N: 。 cin GoOn。 ()。 if(GoOn!=39。Y39。 amp。amp。 GoOn!=39。y39。) //判斷輸入是否結(jié)束 { ()。 break。 } p1=new Info。 InputOne(p1)。 ((char *)p1, sizeof(*p1))。 } p2next=NULL。 person=head。 } —— 該函數(shù)通過指針和鏈表,動(dòng)態(tài)存儲(chǔ) 學(xué)生信息,并保存到文件中 10 ? SearNum函數(shù) Info *Student::SearNum(char *a) //按學(xué)號(hào)查找學(xué)生信息 { system(COLOR 3d)。 Info *p。 cout 開始按學(xué)號(hào)查找! \n。 p=person。 bool record=false。 while(p!=NULL amp。amp。 !record) { if(strcmp(pnum,a)==0) { ShowOne(p)。 return p。 record=true。 } p=pnext。 } if(!record) cout 沒有查找到相關(guān)數(shù)據(jù)! \n。 } —— 該函數(shù)通過鏈表查找數(shù)據(jù),運(yùn)用了布爾類型 ? 運(yùn)算符重載函數(shù) bool Student::operator (const Info *right) { if(personmark rightmark) return true。 else return false。 } —— 該函數(shù)重載了 運(yùn)算符,便于直接比較兩結(jié)構(gòu)體所存儲(chǔ)數(shù)據(jù)的績(jī)點(diǎn)高低 ? ListNum函數(shù) void Student::ListNum() //按學(xué)號(hào)排序輸出 { Info *p1,*p2,*temp,*now。 int i=0。 system(COLOR 3f)。 cout 開始按學(xué)號(hào)排序! \n。 now=person。 11 p1=person。 p2=personnext。 while(p2 amp。amp。 i++=N) { if(strcmp(p2num,p1num)0 amp。amp。 p1==person) //插入到頭結(jié)點(diǎn)之前 { temp=p2。 p2=tempnext。 //在原鏈表中刪除 p2的信息 person=temp。 tempnext=p1。 //p2 插入到最前 } if(strcmp(p2num,p1num)0) { temp=p2。 p2=tempnext。 tempnext=p1。 p1=temp。 } now=nownext。 p1=now。 p2=nownext。 } fstream listnum。 (,ios::out | ios::binary)。 p1=person。 while(p1) { ((char *)p1, sizeof(*p1))。 p1=p1next。 } ()。 ShowAll()。 } —— 運(yùn)用鏈表和指針按學(xué)號(hào)大小排序全部學(xué)生信息 12 八、 存在 的不足與對(duì)策 ? 類對(duì)象中的信息存儲(chǔ)問題 描述: 類對(duì)象中用數(shù)組存儲(chǔ)所有學(xué)生的信息,顯得較為復(fù)雜,不方便管理和操作。在數(shù)據(jù)的處理時(shí)造成一定的麻煩。 對(duì)策: 類外部定義 Info 結(jié)構(gòu)體,在類內(nèi)部用結(jié)構(gòu)體 +鏈表的方式存儲(chǔ)學(xué)生的信息 ? 文件寫入的問題 描述: 用普通文件存儲(chǔ)學(xué)生信息顯得較為復(fù)雜,數(shù)據(jù)錄入較為繁瑣,不便于操作。 對(duì)策: 采用二進(jìn)制文件的方式,整塊錄入結(jié)構(gòu)體數(shù)據(jù)文件。方便、快捷。 ? 鏈表排序問題 描述: 對(duì)鏈表的操作掌握的不夠熟練,對(duì)創(chuàng)建好的鏈表進(jìn)行排序時(shí)顯得手足無(wú)措,不能善于利用指針。 對(duì)策: 參考相關(guān)書籍 ,請(qǐng)教老師等。 ? 程序細(xì)節(jié)問題 描述: 由于首次進(jìn)行比較大規(guī)模的程序設(shè)計(jì),程序中的很多輸入輸出細(xì)節(jié)沒有注意到,導(dǎo)致某些格式不統(tǒng)一。 對(duì)策: 小組成員輪流校對(duì)程序,發(fā)現(xiàn)問題并改進(jìn)。 13 九、 程序源代碼 另附: 程序單文件原始代碼“學(xué)生學(xué)籍管理 _單文件代碼 .cpp”; 多文件組織后的“學(xué)生學(xué)籍管理 _多文件組織”工程文件夾。 /* 本程序應(yīng)用了: 布爾類型 格式化輸入輸出 () 引用作為函數(shù)參數(shù) 函數(shù)重載 內(nèi)存的動(dòng)態(tài)分配 二進(jìn)制文件 結(jié)構(gòu)體指針 構(gòu)造函數(shù) 析構(gòu)函數(shù) 靜態(tài)數(shù)據(jù)成員 函數(shù)覆蓋 純虛函數(shù) 抽象類 友元函數(shù) 運(yùn)算符重載 繼承和多重繼承 異常處理 通過鏈表動(dòng)態(tài)存儲(chǔ)數(shù)據(jù) 多文件組織 等 C++的特色功能 */ includeiostream using namespace std。 includefstream include struct Info { char num[20]。 //學(xué)號(hào) char name[8]。 //姓名 char phone[12]。 //電話 char adres[40]。 //住址 float mark。 //績(jī)點(diǎn) char other[100]。 //獎(jiǎng)懲信息 char book。 //學(xué)生 證預(yù)約 Info *next。 }。 static int N。 //記錄信息的條數(shù),靜態(tài)變量 class Stu //父類,公用類 { 14 protected: Info *person。 fstream people。 //創(chuàng)建二進(jìn)制文件 public: Stu()。 virtual Info *SearNum(char *)=0。 //按學(xué)號(hào)查找學(xué)生信息
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1