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

正文內(nèi)容

教師信息管理系統(tǒng)c語言課程設(shè)計(jì)-文庫吧資料

2025-04-14 23:38本頁面
  

【正文】 struct teacher *p1,*p2。//調(diào)用從文件讀取數(shù)據(jù)的函數(shù) if(i==2) creat()。i)。(i4)) { printf(選擇無效,請(qǐng)重新輸入正確選項(xiàng):)。 while((i1)amp。 scanf(%d,amp。 printf( 3:【退出系統(tǒng)】 4:【返回菜單】\n)。//到鏈表尾時(shí)結(jié)束循環(huán) } else//鏈表為空時(shí)執(zhí)行以下部分 { printf(\n你此次登錄系統(tǒng)還沒有錄入教師信息,可進(jìn)行以下操作:\n)。 p=pnext。 do { printf(教師號(hào):%ld,姓名:%s,性別:%s,年齡:%d,學(xué)歷:%s,職稱:%s\n,pnum,pname,psex,page,pedu,ptitle)。 p=head。//將最后一個(gè)結(jié)點(diǎn)指向空}void print()//輸出教師信息的函數(shù){ struct teacher *p。p1num)。//重新申請(qǐng)空間 printf(請(qǐng)輸入一位教師的教師號(hào)(結(jié)束錄入請(qǐng)輸入0): )。 p2=p1。//給統(tǒng)計(jì)錄入的教師數(shù)n加一/*判斷是否為第一個(gè)錄入的信息,是則將鏈表頭指向p1,否則將p2指向p1*/ if(n==1) head=p1。 scanf(%s,p1telep)。 scanf(%s,p1addr)。p1wage)。 printf(月薪:)。 printf(職稱:)。 printf(學(xué)歷:)。 scanf(%d,amp。 scanf(%s,p1sex)。 scanf(%s,p1name)。 p3next=p1。/*判斷鏈表是否為空,是則將鏈表頭指向p1*/ else //鏈表不為空則將鏈表尾指向p1 { p3=head。p1num)。/*申請(qǐng)一個(gè)結(jié)構(gòu)體字節(jié)數(shù)的空間用來存儲(chǔ)一個(gè)教師的信息*/ printf(請(qǐng)輸入一位教師的教師號(hào)(結(jié)束錄入請(qǐng)輸入0):)。//文件為空時(shí)輸出此處}void creat()//錄入教師信息的函數(shù){ struct teacher *p1,*p2,*p3。 fclose(fp)。/*從文件中讀入數(shù)據(jù)存儲(chǔ)到結(jié)構(gòu)體變量teach【i】中*/ }//輸出文件中的最后一個(gè)信息 printf(教師號(hào):%ld,姓名:%s,性別:%s,年齡:%d,學(xué)歷:%s,teach[i].num,teach[i].name,teach[i].sex,teach[i].age,teach[i].edu)。 fread(amp。 printf(職稱:%s\n 月薪:%ld,住址:%s,電話:%s\n,teach[i].title,teach[i].wage,teach[i].addr,teach[i].telep)。teach[i],sizeof(struct teacher),1,fp)==1)/*判斷文件開頭讀入的數(shù)據(jù)是否為空*/ { printf(\n存有的教師信息如下:\n)。/*從所指向的文件中讀出數(shù)據(jù)存儲(chǔ)到結(jié)構(gòu)體變量temp中*/ fseek(fp,0,0)。/*將位置指針從文件末尾后退一個(gè)結(jié)構(gòu)體的字節(jié)數(shù)*/ fread(amp。 exit(0)。 scanf(%s,filename)。 char filename[20]。 int i=0。 } exit(0)。p=pnext) if(fwrite(p,sizeof(struct teacher),1,fp)!=1) printf(\n此處數(shù)據(jù)有誤\n)。 } for(p=head。 if((fp=fopen(filename,wb))==NULL) { printf(\n無法打開文件\n)。 } if(i==1)//判斷是否選擇了要保存 { printf(\n請(qǐng)輸入要保存數(shù)據(jù)的文件名:)。 scanf(%d,amp。amp。i)。 printf( 1:【是】 0:【否】\n請(qǐng)選擇:)。 struct teacher *p。 int i。 exit(0)。 } else printf(口令錯(cuò)誤\n)。 if(a==123456)//檢查口令是否正確 { printf(歡迎進(jìn)入系統(tǒng)\n)。 scanf(%ld,amp。i3。 long a。//指向下一個(gè)結(jié)點(diǎn)}*head=NULL。//地址 char telep[15]。//職稱 long wage。//年齡 char edu[20]。//姓名 char sex[5]。struct teacher//定義結(jié)構(gòu)體{ long num。p2=headnextp1=headT 第二個(gè)結(jié)點(diǎn)為空? F輸出“還未錄入過教師信息”并退出函數(shù) 調(diào)用教師信息瀏覽函數(shù) 當(dāng)i小于n時(shí) 當(dāng)j小于ni時(shí)p2=p1nextp1=headp2=p2nextp1=p2p3=p1p2=p4p3=p2p1next=p4p2next=p1p4=p2nextp3next=p2head=p2T p1為鏈表頭? F p1中的對(duì)應(yīng)信息小過p2的? T F j=0i=1說明:p1,p2指向的結(jié)點(diǎn)用來比較,p3,p4是用來記錄結(jié)點(diǎn)的,當(dāng)選用的排序方式不同,p1,p2用來比較的信息為所選方式的信息。當(dāng)選擇教師號(hào)查找時(shí),輸入i的即為教師號(hào),與i做比較的為p中的教師號(hào),選擇其他查找方式時(shí)類似。菜單欄函數(shù)跟主程序菜單欄的算法一樣,j=0 此處只給出查詢函數(shù)的N—S圖。該函數(shù)只是對(duì)文件讀寫的簡單應(yīng)用,詳細(xì)請(qǐng)看后面第三部分代碼,這里不寫出其NS圖。其中n為全局變量,用來統(tǒng)計(jì)鏈表的結(jié)點(diǎn)數(shù),以下出現(xiàn)的n都是同一個(gè)。在退出系統(tǒng)時(shí)調(diào)用了一個(gè)保存信息到文件中的函數(shù),該函數(shù)只是簡單的應(yīng)用了文件的讀寫功能,在此不寫出其N—S圖。2. 程序的N—S圖—S圖i=0輸入口令a 當(dāng)i3 當(dāng)b1或b6 T a=123456? F 假i=i+1退出循環(huán)口令3次輸入錯(cuò)誤 , 退出系統(tǒng)教師信息錄入功 能教師信息瀏覽功 能教師信息刪除功 能T b=4? F T b=3? FT b=2? F T b=1? F重新輸入所要選擇的功能b輸入所選擇的功能bT i=3? F 教師信息查詢功 能T
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1