當前位置:編程學習大全網 - 源碼下載 - 招生管理系統源代碼

招生管理系統源代碼

/*在下面的程序中添加更多的ID號等字段!*/

# include & ltstdio.h & gt

# include & ltstdlib.h & gt

# include & ltstring.h & gt

#定義szSTR 64

#define fileDB "c:\\contact.txt "

結構聯系人{

char name[sztr];/*姓名*/

計費單位;/*工作單位*/

char tele[sztr];/*電話*/

char mail[sztr];/*郵件*/

};

typedef結構聯系方式;

#定義BNAME 1

#定義BUNIT 2

#定義項目4

#定義BMAIL 8

#定義BFULL 0xFF

int OPER[5] = {BFULL,BNAME,BUNIT,BTELE,b mail };

無效輸入(CON * s,int mask)

{

如果(面具& ampBNAME) {printf("請輸入學生姓名:");scanf("%s ",s-& gt;姓名);}

如果(面具& ampBUNIT) {printf("請輸入工作單位:");scanf("%s ",s-& gt;單位);}

如果(面具& ampBTELE) {printf("請輸入聯系電話:");scanf("%s ",s-& gt;tele);}

如果(面具& ampBMAIL) {printf("請輸入郵箱:");scanf("%s ",s-& gt;郵件);}

}/*結束輸入*/

無效顯示(內部id,控制)

{

如果(!s)返回;

如果(id)

printf(" % d \ t % s \ t % s \ t % s \ t % s \ t % s \ n ",

id,s-& gt;名稱,s-& gt;單位,s-& gt;tele,s-& gt;郵件);

其他

Printf("姓名%s工作單位%s電話%s電子郵件%s\n ",

s-& gt;名稱,s-& gt;單位,s-& gt;tele,s-& gt;郵件);

/*end if*/

}/*結束放映*/

無效註冊

{

弊s;文件* f = 0;

輸入(& amps,b full);

f = fopen(fileDB,“ab”);

fwrite(& amp;s,sizeof(s),1,f);

fclose(f);

Printf("數據已保存!\ n ");

}/*結束註冊*/

int browse(char * key,fpos_t * p,CON * s)

{

文件* f = 0;int i = 0,r = 0;CON t;

char * a = 0,* b = 0;fpos _ t q;

如果(!s)返回0;

f = fopen(fileDB," Rb ");

如果(!f) {

Printf("數據庫中沒有記錄\ n ");

返回0;

}/*end if*/

printf(" number \ tname \ tnompany \ tnail \ n ");

printf("-\ n ");

而(!feof(f)) {

fgetpos(f & amp;q);

r = fread(& amp;t,sizeof(t),1,f);

if(r & lt;1)破位;

if(t.name[0]==0)繼續;

如果(關鍵){

a = strstr(t.name,key);

b = strstr(t.tele,key);

if(a = = 0 & amp;& ampb == 0)繼續;

}/*end if*/

if(p)* p = q;

if(s) memcpy(s,& ampt,sizeof(t));

i++;

顯示(我& ampt);

}/*結束while*/

fclose(f);

printf("-\ n ");

返回I;

}/*結束瀏覽*/

fpos_t查詢(條件)

{

char key[sztr]= " ";fpos _ t p = 0;int r = 0;

Printf("請輸入您的姓名或電話號碼:");

scanf("%s ",key);

r = browse(鍵& ampp,s);

返回r?p:-1;

}/*結束查詢*/

空清除(空)

{

文件* f = 0;弊s;

fpos _ TP = query(& amp;s);

如果(p & lt0)返回;

f = fopen(fileDB," r b+ ");

fset pos(f & amp;p);

memset(& amp;s,0,sizeof(s));

fwrite(& amp;s,sizeof(s),1,f);

fclose(f);

Printf("記錄已刪除!\ n ");

}/*結束清除*/

無效修改(無效)

{

文件* f = 0;弊s;int cmd = 0;

fpos _ TP = query(& amp;s);

如果(p & lt0)返回;

f = fopen(fileDB," r b+ ");

fset pos(f & amp;p);

for(;;) {

顯示(0 & amp;s);

Printf("請選擇:1-Name;2-工作單位;3-電話;4-電子郵件;5-保存並退出;6-放棄修改退出\ n”);

scanf("%d ",& ampcmd);

開關(cmd) {

案例1:

案例二:

案例三:

案例4:

輸入(& amp美國,OPER[cmd]);

打破;

案例5:

fset pos(f & amp;p);

fwrite(& amp;s,sizeof(s),1,f);

案例6:

fclose(f);

返回;

默認值:

Printf("錯誤操作,請重新輸入。\ n ");

}/*結束案例*/

}/*mext*/

}/*結束清除*/

int main(void)

{

int cmd = 0;弊s;

for(;;) {

Printf("歡迎使用通訊錄!請選擇:1-添加;2-查詢;3-刪除;4-修改;5-所有輸出;0-退出\ n ");

scanf("%d ",& ampcmd);

開關(cmd) {

案例0:返回0;

案例1:regist();打破;

案例2:查詢(& amps);打破;

案例三:clear();打破;

情況四:modify();打破;

案例5:瀏覽(0,0 & amp;s);打破;

}//結束案例

}

返回0;

}

  • 上一篇:VOCs廢氣排放標準及其實施是什麽?
  • 下一篇:mysql中,怎樣查詢壹個表中有多少記錄!
  • copyright 2024編程學習大全網