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

正文內(nèi)容

通訊錄管理系統(tǒng)實(shí)驗(yàn)報(bào)告-c語言課程設(shè)計(jì)(編輯修改稿)

2025-01-09 01:08 本頁面
 

【文章內(nèi)容簡介】 ar ch。 //定義一個(gè)變量來存放文件的第一個(gè)字符,但在這個(gè)函數(shù)里面主要是用來判斷文 件是不是為空 if((fp=fopen(,r))==NULL) //這可以判斷有沒有文件給你去讀取 { printf(打開文件失敗!沒有該文件 \n\n)。 printf(請按任意鍵退出程序 \n)。 getch()。 //一個(gè)在網(wǎng)上查到的函數(shù),用于你可以按任意鍵進(jìn)入下一步 exit(0)。 //退出程序 } /****** 這是在網(wǎng)上查到的一段有關(guān)于文件的程序 ******/ ch=fgetc(fp)。 //這是在網(wǎng)上查到的一個(gè)有關(guān)文件的函數(shù),返回值是文件的第一個(gè)字符,當(dāng)文件為空的時(shí)候,他返回的是一個(gè)特殊值: EOF if(ch==EOF) //當(dāng)文件為空的時(shí)候 { printf(文件為空,請重新建立一個(gè)通訊錄 \n)。 printf(請按任意鍵返回主菜單 \n)。 getch()。 //按下任意鍵就進(jìn)入下一條語句的函數(shù) return (head)。 //返回一個(gè)指針,因?yàn)檫@個(gè)函數(shù)要有一個(gè)返回值,所 以把頭指針返回出去 } else { rewind(fp)。 //這個(gè)函數(shù)是把一個(gè)文件的位置指針從新移至開頭,不然的話會(huì)出現(xiàn)一個(gè)組數(shù)據(jù)丟失 } /*************************************************/ t1=(ID *) malloc(sizeof(ID))。 //開始申請動(dòng)態(tài)空間,用 t1 接著 head=t1。 //把 t1 賦給頭結(jié)點(diǎn) while(!feof(fp)) //feof 函 數(shù)的功能是判斷這個(gè)文件是不是結(jié)束了,如果結(jié)束了,返回一個(gè)非零值,否則返回一個(gè) 0,來自百度 { if(fread(t1,sizeof(ID),1,fp)!=1) //根據(jù)書上的定義, fread 函數(shù)的類型為 int 型,返回一個(gè)輸入數(shù)據(jù)項(xiàng)的個(gè)數(shù) break。 //如果沒有讀取的內(nèi)容,則結(jié)束 total++。 //人數(shù)加 1 t1next=(ID *)malloc(sizeof(ID))。 //把在申請動(dòng)態(tài)空間的同時(shí),把 t1 的 next 指向下一個(gè)結(jié)點(diǎn) t2=t1。 //讓 t2 和 t1 指向同一個(gè)地方 t1=t1next。 //t1 向后移一個(gè)結(jié)點(diǎn) } t2next=NULL。 //把 t2 的指針域賦值為空,因?yàn)閿?shù)據(jù)最多到 t2 這里 free(t1)。 //把后來的 t1 申請多出來的空間清空掉 fclose(fp)。 //關(guān)閉文件 printf(文件已經(jīng)成功讀取 \n)。 printf(請按任意鍵返回主菜單 \n)。 getch()。 //按下任意鍵就進(jìn)入下一條語句的函數(shù) return head。 //返回一個(gè)頭指針,因?yàn)樵跊]有創(chuàng)建一個(gè)單鏈表和文件的時(shí)候,就是靠這個(gè)頭指針進(jìn)行一系列的操作的 } /************************************************ *函數(shù)名: Search(查詢) *功能:可以通過姓名查詢 ,也可以通過類別查詢 *返回值: NULL *************************************************/ void Search(ID* head) { int num。 //定 義一個(gè)變量在確定是否進(jìn)入 switch 語句里 int count=1。 ID* p。 //定義一個(gè)結(jié)構(gòu)體變量,用來放頭指針 int flag,searchflag=1。 //變量 flag是用來判斷是不是有符合要求的數(shù)據(jù),變量 searchflag是一個(gè) while 語句的出入口 char c,temp。 //變量 c 是來存放姓名的首字符的,變量 temp 是用來存放 Y or y 的 char ch[10]。 //數(shù)組 ch 用來放輸入的類型 printf(請輸入你希望通過什么方式查詢:(請輸入序號) \n)。 printf( \n)。 printf( \n)。 printf( \n)。 scanf(%d,amp。num)。 //選擇你想要查詢的方式 getchar()。 //吸收回車鍵 switch(num) //switch 語句是看你要進(jìn)入哪個(gè)功能 { case 1: while(searchflag) //searchflag 已經(jīng)初始化為 1,所以進(jìn)入 while 中,通過改變searchflag的值確定是不是離開 while 語句 { flag=0。 //初始化為 0 printf(\n 請輸入待查找者的首字母,或者查找者的姓 : \n)。 scanf(%c,amp。c)。 //存放你的要求,首字母或姓 getchar()。 //吸收回車鍵 p=head。 //把形參頭指針 head 給 p while(p!=NULL) //一直循環(huán)直到 p 結(jié)點(diǎn)為空 { if(pname[0]==c) //當(dāng)姓名的第一個(gè)字符和你的要求 c 一樣的時(shí)候,進(jìn)入 if 語句 { printf(%d. ,count)。 count++。 printf( 姓 名 : %s\t 電 話 號 碼 : %s\t 類型 :%s\t 郵箱 :%s\n,pname,ptele,pstyle,pmail)。 flag=1。 //flag賦值為 1,表示為已經(jīng)查到了數(shù)據(jù)了 } p=pnext。 //p1 指針向后移 } if(flag==0) //這表示為沒有找到相關(guān)數(shù)據(jù) { printf(\n 對不起 ,未能找到符合條件的記錄 \n)。 } printf(\n 查找完畢,是否需要重新查詢? Y/N\n)。 scanf(%c,amp。temp)。 //輸入是或者否( Y/N) getchar()。 //吸收回車鍵 if(temp==39。y39。||temp==39。Y39。)//判斷是不是 y or Y { searchflag=1。 //回到 while 繼續(xù)從頭開始 } else { searchflag=0。 //回到 while 并且退出 system(cls)。 //為了美觀,在網(wǎng)上找了清屏函數(shù) } } break。 case 2: while(searchflag) //searchflag 已經(jīng)初始化為 1,所以進(jìn)入 while 中,通過改變searchflag的值確定是不是離開 while 語句 { flag=0。 //初始化為 0, printf(\n 請輸入被查找人的類別 :(如:“辦公類”“個(gè)人類”“商務(wù)類”) \n)。 scanf(%s,ch)。 //用字符數(shù)據(jù)接收字符串 getchar()。 //吸收回車鍵 p=head。 //把形參頭指針 head 給 p while(p!=NULL) //searchflag 已經(jīng)初始化為 1,所以進(jìn)入 while 中,通過改變 searchflag的值確定是不是離開 while 語句 { if(strcmp(pstyle,ch)==0) //當(dāng)你的類別和你輸入的類別一樣的時(shí)候, stcump 會(huì)返回 0 { printf(%d. ,count)。 count++。 printf( 姓 名 : %s\t 電 話 號 碼 : %s\t 類型 :%s\t 郵箱 :%s\n,pname,ptele,pstyle,pmail)。 flag=1。 //flag賦值為 1,表示為已經(jīng)查到了數(shù)據(jù)了 } p=pnext。 //p1 指針向后移 } if(flag==0) //這表示為沒有找到相關(guān)數(shù)據(jù) { printf(\n 對不起 ,未能找到符合條件的記錄 \n)。 } printf(\n 查找完畢,是否需要重新查詢? Y/N\n)。 scanf(%c,amp。temp)。 //輸入是或者否( Y/N) getchar()。 if(temp==39。y39。||temp==39。Y39。)//判斷是不是 y or Y { searchflag=1。 //回到 while 繼續(xù)從頭開始 } else { searchflag=0。 //回到 while 并且退出 system(cls)。 //為了美觀,在網(wǎng)上找了清屏函數(shù) } } break。 case 3: p=head。 //把頭指針給 p while(p!=NULL) //p 不為空的時(shí)候, while 一直循環(huán) { printf(%d. ,count)。 count++。 printf( 姓 名 : %s\t 電 話 號 碼 : %s\t 類型 :%s\t 郵箱 :%s\n,pname,ptele,pstyle,pmail)。 p=pnext。
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1