![《C語言程序設(shè)計 》課件-第9章_第1頁](http://file4.renrendoc.com/view14/M03/1D/2C/wKhkGWdpD5KAI0SbAAG90MdbwKc327.jpg)
![《C語言程序設(shè)計 》課件-第9章_第2頁](http://file4.renrendoc.com/view14/M03/1D/2C/wKhkGWdpD5KAI0SbAAG90MdbwKc3272.jpg)
![《C語言程序設(shè)計 》課件-第9章_第3頁](http://file4.renrendoc.com/view14/M03/1D/2C/wKhkGWdpD5KAI0SbAAG90MdbwKc3273.jpg)
![《C語言程序設(shè)計 》課件-第9章_第4頁](http://file4.renrendoc.com/view14/M03/1D/2C/wKhkGWdpD5KAI0SbAAG90MdbwKc3274.jpg)
![《C語言程序設(shè)計 》課件-第9章_第5頁](http://file4.renrendoc.com/view14/M03/1D/2C/wKhkGWdpD5KAI0SbAAG90MdbwKc3275.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
項(xiàng)目九課程設(shè)計——學(xué)生學(xué)籍管理系統(tǒng)任務(wù)一細(xì)化功能任務(wù)二功能設(shè)計任務(wù)三項(xiàng)目實(shí)現(xiàn)
任務(wù)一細(xì)化功能
學(xué)生學(xué)籍管理系統(tǒng)主要是用來管理學(xué)生學(xué)籍信息的。根據(jù)本校的應(yīng)用需求,該系統(tǒng)應(yīng)該實(shí)現(xiàn)以下基本功能:
(1)對學(xué)生信息的建庫。
(2)修改學(xué)生信息。
(3)刪除學(xué)生信息。
(4)查詢學(xué)生信息。
(5)輸出學(xué)生信息。
(6)退出系統(tǒng)。
(7)此外,為了系統(tǒng)安全,還應(yīng)有用戶權(quán)限設(shè)置功能。
(8)另外,在保證程序正確的前提下,考慮了程序的可靠性、交互性及界面的友好性,具體包括以下幾點(diǎn):
①輸入數(shù)據(jù)時的提示信息。
②輸入數(shù)據(jù)的合法性檢查。
③文件的打開、讀寫操作失敗后的提示及處理。
(9)模塊化的重要性。
(10)團(tuán)隊(duì)合作精神的重要性。
任務(wù)二功能設(shè)計
1.對學(xué)生信息的建庫先以追加方式打開原文件并存入結(jié)構(gòu)體數(shù)組,以便輸入記錄時檢查是否有重復(fù)學(xué)號的記錄。循環(huán)提示輸入學(xué)生信息,當(dāng)輸入的學(xué)號中有字母,姓名中有數(shù)字,性別不是f或m,成績小于0或大于100時,均提示輸入有錯,重新輸入,直到正確。然后將輸入的信息存入庫文件中。退出循環(huán)后,返回主菜單。
2.修改學(xué)生信息
循環(huán)提示輸入要修改的學(xué)生學(xué)號,如果輸入的學(xué)號存在,先顯示該記錄,再提示修改,然后將修改的信息存入庫文件中。退出循環(huán)后,返回主菜單。
3.刪除學(xué)生信息
分單個刪除和全部刪除。單個刪除時,循環(huán)提示輸入要刪除的學(xué)生學(xué)號,先顯示該記錄,再提示是否刪除成功,然后將刪除后的信息存入庫文件中。退出循環(huán)后,返回主菜單。全部刪除時,先提示是否真的要全部刪除,若是,則清空庫文件,然后返回主菜單。反之,返回主菜單。
4.查詢學(xué)生信息
分按學(xué)號查詢和按姓名查詢,兩種查詢實(shí)現(xiàn)方法是類似的:循環(huán)提示輸入要查詢的學(xué)號/姓名,若能找到,則顯示該條記錄。對于按姓名查詢,當(dāng)出現(xiàn)重名時,則顯示多條記錄。若找不到,則顯示找不到。退出循環(huán)后,返回主菜單。
5.輸出學(xué)生信息
在屏幕上顯示所有學(xué)生的記錄。
6.退出系統(tǒng)
先在屏幕上顯示“GOODBYE!”,并延時一段時間,然后退出。
任務(wù)三項(xiàng)目實(shí)現(xiàn)
本項(xiàng)目——學(xué)生學(xué)籍管理系統(tǒng)的實(shí)現(xiàn)代碼如下:
#defineM1000
#defineN3
#defineDELAY20
#include"string.h"
#include"math.h"
#include"ctype.h"
#include"stdlib.h"
#include"conio.h"
#include"stdio.h"
typedefstructstudent
{charnum[10];
charname[10];
charsex;
floatscore[N];
}STU;
FILE*fp;
STUstu[M];
mywindow()
{
inti;
putch(0xc9);
for(i=3;i<=78;i++)
putch(0xcd);
putch(0xbb);
for(i=2;i<=24;i++)
{gotoxy(78,i);
putch(186);
}
gotoxy(78,24);
putch(188);
gotoxy(2,2);
for(i=2;i<=24;i++)
{gotoxy(1,i);
putch(186);
}
gotoxy(1,24);
putch(200);
for(i=3;i<=78;i++)
putch(205);
}
welcome()
{
unsignedlongi;
textmode(C80);
window(1,1,80,25);
textbackground(BLUE);
textcolor(YELLOW);
clrscr();
mywindow();
gotoxy(20,10);
for(i=0;i<pow(2,DELAY);i++);
printf("welcome");
for(i=0;i<pow(2,DELAY);i++);
printf("to");
for(i=0;i<pow(2,DELAY);i++);
printf("student");
for(i=0;i<pow(2,DELAY);i++);
printf("system!\n");
gotoxy(20,11);
printf("class:computerscience00-7\n");
gotoxy(20,12);
printf("coach:Yuyong\n");
gotoxy(20,13);
printf("author:group3.\n");
gotoxy(20,15);
printf("pressanykeytocontinue...\n");
getch();
}
intpassword()
{
charpassword[10];
intflag,i=1;
do
{printf("password?\n");
scanf("%s",password);
if(strcmp(password,"wangquan"))
{flag=0;
i++;
}
else
{flag=1;
break;
}
}while(i<=3);
returnflag;
}
本項(xiàng)目選擇的數(shù)據(jù)結(jié)構(gòu)是結(jié)構(gòu)體數(shù)組和文件,其中,結(jié)構(gòu)體數(shù)組是作為輔助空間用的。對文件的操作有打開、讀寫、關(guān)閉等。此外,在制作界面時,用到了光標(biāo)定位函數(shù)gotoxy(),畫窗口時用到了線的ASCII碼等。
在編寫菜單選擇子模塊時,用到了函數(shù)的遞歸調(diào)用。
用到的部分函數(shù)功能簡介如下:
(1)textbackground(color)。該函數(shù)用于設(shè)置背景正文顏色。Color的取值范圍在0~7之間,或者用conio.h中定義的符號常量來表示。
(2)textcolor(color)。該函數(shù)可以選擇前景字符顏色。Color的取值范圍在0~15之間,亦可采用符號常量。用法基本與textbackground()相同。
(3)window(left,top,right,bottom)。在屏幕上定義一個窗口,左上角坐標(biāo)為(left,top),右下角坐標(biāo)為(right,bottom)。正文窗口的最小尺寸是一行一列。如果坐標(biāo)超出(1,1,80,25)的界限,則對窗口的調(diào)用不起作用。
(4)
fopen(filename,mode)。用于創(chuàng)建一個未存在的文件和打開一個已存在的文件,filename為文件存放的路徑,mode是指定打開文件的方式。
(5)
fclose(FILE*fp)。用于關(guān)閉由fopen()打開的文件(流)。
(6)?fwrite(constvoid*buf,size_tintsize,size_tcount,F(xiàn)ILE*fp)。用于把buf指向的緩沖區(qū)中的count個對象寫到fp指向的文件中,每個對象長size字節(jié)。文件位置指示值向前推進(jìn),推進(jìn)值等于實(shí)際寫出的字節(jié)數(shù)。
(7)
fread(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025會計基礎(chǔ)知識重點(diǎn):融資租賃合同
- 2025池塘清淤工程的施工合同
- 9 知法守法 依法維權(quán) 依法維權(quán)有途徑(說課稿)-部編版道德與法治六年級上冊
- 21 淡水資源 說課稿-2024-2025學(xué)年科學(xué)三年級上冊青島版
- 2025法律法規(guī)工傷員工續(xù)簽合同問題 管理資料
- 6將相和(第一課時)說課稿-2024-2025學(xué)年五年級上冊語文統(tǒng)編版
- 農(nóng)村荒山承包合同范本
- 硬件維護(hù)投標(biāo)方案
- 2023二年級數(shù)學(xué)下冊 四 認(rèn)識萬以內(nèi)的數(shù)第8課時 近似數(shù)說課稿 蘇教版001
- Unit 1 Making friends PartA Let's talk(說課稿)-2024-2025學(xué)年人教PEP版(2024)英語三年級上冊
- 地理-山東省濰坊市、臨沂市2024-2025學(xué)年度2025屆高三上學(xué)期期末質(zhì)量檢測試題和答案
- 正面上手發(fā)球技術(shù) 說課稿-2023-2024學(xué)年高一上學(xué)期體育與健康人教版必修第一冊
- 佛山市普通高中2025屆高三下學(xué)期一??荚嚁?shù)學(xué)試題含解析
- 事故隱患排查治理情況月統(tǒng)計分析表
- 永磁直流(汽車)電機(jī)計算程序
- 國家電網(wǎng)招聘2025-企業(yè)文化復(fù)習(xí)試題含答案
- 頸部瘢痕攣縮畸形治療
- 貴州省貴陽市2023-2024學(xué)年五年級上學(xué)期語文期末試卷(含答案)
- 醫(yī)院物業(yè)服務(wù)組織機(jī)構(gòu)及人員的配備、培訓(xùn)管理方案
- 端午做香囊課件
- 外觀判定標(biāo)準(zhǔn)
評論
0/150
提交評論