《C語言程序設(shè)計 》課件-第9章_第1頁
《C語言程序設(shè)計 》課件-第9章_第2頁
《C語言程序設(shè)計 》課件-第9章_第3頁
《C語言程序設(shè)計 》課件-第9章_第4頁
《C語言程序設(shè)計 》課件-第9章_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論