




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
程序設(shè)計(jì)報(bào)告書(shū)(2023/2023學(xué)年第一學(xué)期)題目:通訊錄管理系統(tǒng)專業(yè)學(xué)生姓名班級(jí)學(xué)號(hào)指導(dǎo)教師指導(dǎo)單位日期評(píng)分細(xì)則評(píng)分項(xiàng)優(yōu)秀良好中檔差遵守機(jī)房規(guī)章制度上機(jī)時(shí)的表現(xiàn)學(xué)習(xí)態(tài)度程序準(zhǔn)備情況程序設(shè)計(jì)能力團(tuán)隊(duì)合作精神課題功能實(shí)現(xiàn)情況算法設(shè)計(jì)合理性用戶界面設(shè)計(jì)報(bào)告書(shū)寫(xiě)認(rèn)真限度內(nèi)容詳實(shí)限度文字表達(dá)純熟限度回答問(wèn)題準(zhǔn)確度簡(jiǎn)短評(píng)語(yǔ)教師署名:年月日評(píng)分等級(jí)備注評(píng)分等級(jí)有五種:優(yōu)秀、良好、中檔、及格、不及格通訊錄管理系統(tǒng)課題內(nèi)容和規(guī)定該課題規(guī)定設(shè)計(jì)一個(gè)簡(jiǎn)樸、實(shí)用的通信錄管理程序,重要功能涉及通信錄數(shù)據(jù)的錄入、查找、修改、刪除、排序、顯示等。所有通信錄數(shù)據(jù)都要運(yùn)用文獻(xiàn)系統(tǒng)保存,以備系統(tǒng)下次運(yùn)營(yíng)時(shí)使用。通過(guò)此課題,全面熟悉、掌握C語(yǔ)言基本知識(shí),掌握C程序設(shè)計(jì)中的順序、分支、循環(huán)三種結(jié)構(gòu)及數(shù)組、函數(shù)和C語(yǔ)言基本圖形編程等方法,把編程和實(shí)際結(jié)合起來(lái),純熟掌握文獻(xiàn)、數(shù)組、指針的各種操作,以及一些基本算法思想的應(yīng)用。增強(qiáng)對(duì)不同的問(wèn)題運(yùn)用和靈活選擇合適的數(shù)據(jù)結(jié)構(gòu)以及算法描述的本領(lǐng),熟悉編制和調(diào)試程序的技巧,掌握分析結(jié)果的若干有效方法,進(jìn)一步提高上機(jī)動(dòng)手能力,培養(yǎng)使用計(jì)算機(jī)解決實(shí)際問(wèn)題的能力,養(yǎng)成提供文檔資料的習(xí)慣和規(guī)范編程的思想,為以后在專業(yè)課程中應(yīng)用計(jì)算機(jī)系統(tǒng)解決計(jì)算、分析、實(shí)驗(yàn)和設(shè)計(jì)等學(xué)習(xí)環(huán)節(jié)打下較扎實(shí)的基礎(chǔ)。需求分析系統(tǒng)功能模塊圖:流程圖流程圖查詢修改刪除排序顯示添加保存讀入退出添加:可以添加通訊錄記錄,依次輸入序號(hào),姓名,簡(jiǎn)拼,性別,工作單位,地址,電話,手機(jī),電子郵件,備注后,會(huì)提醒是否繼續(xù)添加。查詢:可以選擇用序號(hào)、姓名、簡(jiǎn)拼、電話方式查詢修改:先查找,再修改。若查找出多條記錄,則進(jìn)一步提醒用戶選擇記錄的序號(hào),再修改刪除:輸入欲刪除的那個(gè)人的名字后,刪除他(她)的記錄內(nèi)容排序:可按姓名、簡(jiǎn)拼等排序。規(guī)定排序后,記錄的序號(hào)也要重新編排顯示:可以以表格形式輸出所有通訊錄里的記錄保存:,輸入文獻(xiàn)名(帶后綴名)后,即可將通訊錄信息保存到文獻(xiàn)讀入:從文獻(xiàn)中讀入通信錄數(shù)據(jù)。界面功能規(guī)定:(1)采用和諧的字符界面,實(shí)現(xiàn)一個(gè)功能控制菜單。(2)每次操作都從該菜單選擇,運(yùn)用循環(huán)結(jié)構(gòu)使得一次運(yùn)營(yíng)程序可進(jìn)行多次操作。三、概要設(shè)計(jì)(1)重要結(jié)構(gòu)體:typedefstruct { charscore;/*序號(hào)*/ charname[10];/*姓名*/charjianpin[50];/*簡(jiǎn)拼*/charsex[3];/*性別*/charcompany[20];/*工作單位*/charadds[20];/*地址*/chartel[15];/*電話*/charnum[15];/*手機(jī)*/ charemail[20]; /*電子郵件*/ charremark[30]; /*備注*/ }Person;(2).工作流程圖:1.添加:添加通訊錄記錄N開(kāi)始N開(kāi)始i=0sign!='n'&&sign!='N輸入Return(n+i)結(jié)束Y2.查詢:查詢通訊錄記錄先選擇查詢方式,以姓名查詢方式為例N開(kāi)始N開(kāi)始輸入簡(jiǎn)拼通訊錄是否有此簡(jiǎn)拼通訊錄無(wú)此人顯示信息結(jié)束Y輸入電話輸入姓名N通訊錄是否有此電話通訊錄是否有此姓名通訊錄無(wú)此人通訊錄無(wú)此人顯示信息顯示信息結(jié)束結(jié)束YYN3.修改:修改通訊錄記錄開(kāi)始開(kāi)始輸入姓名通訊錄是否有此姓名通訊錄無(wú)此人修改信息結(jié)束YN4.刪除:刪除通訊錄記錄開(kāi)始開(kāi)始輸入姓名通訊錄是否有此姓名通訊錄無(wú)此人刪除信息結(jié)束YN5.顯示:顯示通訊錄記錄開(kāi)始開(kāi)始inti,i=1i<n+1輸出一個(gè)記錄i++結(jié)束YN四、源程序代碼#include<stdio.h>#include<stdlib.h>#include<string.h>#include<ctype.h>typedefstruct { charscore;/*序號(hào)*/ charname[10];/*姓名*/charjianpin[50];/*簡(jiǎn)拼*/charsex[3];/*性別*/charcompany[20];/*工作單位*/charadds[20];/*地址*/chartel[15];/*電話*/charnum[15];/*手機(jī)*/ charemail[20]; /*電子郵件*/ charremark[30]; /*備注*/ }Person;Personpe[80];intmenu_select() { charc; do{ system("cls"); printf("\t\t*歡迎使用通訊錄*\n"); printf("\t\t┌───────┐\n"); printf("\t\t│1.添加記錄│\n"); printf("\t\t│2.顯示記錄│\n"); printf("\t\t│3.刪除記錄│\n"); printf("\t\t│4.查詢記錄│\n");printf("\t\t│5.排列順序│\n"); printf("\t\t│6.修改記錄│\n"); printf("\t\t│7.保存記錄│\n");printf("\t\t│8.文獻(xiàn)讀入│\n"); printf("\t\t│0.退出程序│\n"); printf("\t\t└───────┘\n"); printf("\t\t請(qǐng)您選擇(0-8):"); c=getchar(); }while(c<'0'||c>'8'); return(c-'0'); }intInput(Personper[],intn){ inti=0; charsign,x[10]; while(sign!='n'&&sign!='N') { printf("\t序號(hào):"); scanf("\t%d",&per[n+i].score); printf("\t姓名:"); scanf("\t%s",per[n+i].name); printf("\t簡(jiǎn)拼:"); scanf("\t%s",per[n+i].jianpin); printf("\t性別:"); scanf("\t%s",per[n+i].sex);printf("\t工作單位:");scanf("\t%s",per[n+i].company); printf("\t地址:"); scanf("\t%s",per[n+i].adds);printf("\t電話:");scanf("\t%s",per[n+i].tel);printf("\t手機(jī):");scanf("\t%s",per[n+i].num); printf("\t電子郵件:"); scanf("\t%s",per[n+i].email);printf("\t備注:");scanf("\t%s",per[n+i].remark); gets(x); printf("\n\t是否繼續(xù)添加?(Y/N)"); scanf("\t%c",&sign); i++; } return(n+i);}voidDisplay(Personper[],intn){ inti; printf("------------------------------------------------------------------------------------------------\n");/*格式*/ printf("序號(hào)姓名簡(jiǎn)拼性別工作單位地址電話手機(jī)電子郵件備注\n"); printf("------------------------------------------------------------------------------------------------\n"); for(i=1;i<n+1;i++) { printf("%-3d%-10s%-10s%-5s%-10s%-10s%-13s%-13s%-10s%-10s\n",per[i-1].score,per[i-1].name,per[i-1].jianpin,per[i-1].sex,per[i-1].company,per[i-1].adds,per[i-1].tel,per[i-1].num,per[i-1].email,per[i-1].remark); if(i>1&&i%10==0) { printf("\t-----------------------------------\n"); printf("\t"); system("pause"); printf("\t-----------------------------------\n"); } } printf("----------------------------------------------------------------------\n"); system("pause");}intDelete_a_record(Personper[],intn){ chars[20]; inti=0,j; printf("\t請(qǐng)輸入想刪除記錄中的名字:"); scanf("%s",s); while(strcmp(per[i].name,s)!=0&&i<n)i++; if(i==n) { printf("\t通訊錄中沒(méi)有此人!\n"); return(n); } for(j=i;j<n-1;j++) {strcpy(per[j].name,per[j+1].name); strcpy(per[j].jianpin,per[j+1].jianpin); strcpy(per[j].sex,per[j+1].sex); strcpy(per[j].company,per[j+1].company); strcpy(per[j].adds,per[j+1].adds);strcpy(per[j].num,per[j+1].num);strcpy(per[j].tel,per[j+1].tel); strcpy(per[j].email,per[j+1].email);strcpy(per[j].remark,per[j+1].remark); per[j].score=per[j+1].score; } printf("\t\t\t刪除成功\n"); return(n-1);}voidQuery_a_record(Personper[],intn){ intm; printf("\t\n請(qǐng)選擇查詢方式:\n");printf("\t┌──────┐\n");printf("\t│1------姓名│\n");printf("\t│2------簡(jiǎn)拼│\n");printf("\t│3------電話│\n");printf("\t│4------返回│\n");printf("\t└──────┘\n");printf("請(qǐng)選擇:");scanf("%d",&m);while(m!=1&&m!=2&&m!=3&&m!=4){ printf("輸入錯(cuò)誤,請(qǐng)重新選擇:"); scanf("%d",&m); } if(m==1) { chars[20]; inti=0; printf("\t請(qǐng)輸入想查詢的姓名:"); scanf("\t%s",s); while(strcmp(per[i].name,s)!=0&&i<n)i++; if(i==n) { printf("\t通訊錄中沒(méi)有此人!\n"); return; } printf("\t序號(hào):%d\n",per[i].score); printf("\t簡(jiǎn)拼:%s\n",per[i].jianpin);printf("\t性別:%s\n",per[i].sex); printf("\t工作單位:%s\n",per[i].company); printf("\t通訊地址:%s\n",per[i].adds); printf("\t電話號(hào)碼:%s\n",per[i].num); printf("\t電子郵箱:%s\n",per[i].email); printf("\t備注:%s\n",per[i].remark); }; if(m==2) { chars[20]; inti=0; printf("\t請(qǐng)輸入想查詢的簡(jiǎn)拼:"); scanf("\t%s",s); while(strcmp(per[i].jianpin,s)!=0&&i<n)i++; if(i==n) { printf("\t通訊錄中沒(méi)有此人!\n"); return; } printf("\t序號(hào):%d\n",per[i].score); printf("\t姓名:%s\n",per[i].name);printf("\t性別:%s\n",per[i].sex); printf("\t工作單位:%s\n",per[i].company); printf("\t通訊地址:%s\n",per[i].adds); printf("\t電話號(hào)碼:%s\n",per[i].num); printf("\t電子郵箱:%s\n",per[i].email); printf("\t備注:%s\n",per[i].remark); };if(m==3) { chars[20]; inti=0; printf("\t請(qǐng)輸入想查詢的電話:"); scanf("\t%s",s); while(strcmp(per[i].num,s)!=0&&i<n)i++; if(i==n) { printf("\t通訊錄中沒(méi)有此人!\n"); return; } printf("\t序號(hào):%d\n",per[i].score); printf("\t姓名:%s\n",per[i].name); printf("\t簡(jiǎn)拼:%s\n",per[i].jianpin);printf("\t性別:%s\n",per[i].sex); printf("\t工作單位:%s\n",per[i].company); printf("\t通訊地址:%s\n",per[i].adds); printf("\t電子郵箱:%s\n",per[i].email); printf("\t備注:%s\n",per[i].remark); };}voidSelectSort(Personper[],intn){inti,j,flag;Persontemp;/*臨時(shí)變量做互換數(shù)據(jù)用*/intm; printf("\t\n請(qǐng)選擇排序方式:\n");printf("\t┌────────┐\n");printf("\t│1------姓名│\n");printf("\t│2------簡(jiǎn)拼│\n");printf("\t│3------電話│\n");printf("\t│4------返回│\n");printf("\t└────────┘\n");printf("請(qǐng)選擇:");scanf("%d",&m);while(m!=1&&m!=2&&m!=3&&m!=4){ printf("輸入錯(cuò)誤,請(qǐng)重新選擇:"); scanf("%d",&m); } if(m==1) { for(i=0;i<n;i++) { flag=0;/*設(shè)標(biāo)志判斷是否發(fā)生過(guò)互換*/ for(j=0;j<n-1;j++) if((strcmp(per[j].name,per[j+1].name))>0)/*比較大小*/ { flag=1; strcpy(,per[j].name);/*互換記錄*/ strcpy(temp.abbreviation,per[j].jianoin); strcpy(temp.sex,per[j].sex); strcpy(pany,per[j].company); strcpy(temp.adds,per[j].adds); strcpy(temp.tel,per[j].tel); strcpy(temp.num,per[j].num); strcpy(temp.email,per[j].email); strcpy(temp.remarks,per[j].remark); strcpy(per[j].name,per[j+1].name); strcpy(per[j].abbreviation,per[j+1].jianpin); strcpy(per[j].sex,per[j+1].sex); strcpy(per[j].company,per[j+1].company); strcpy(per[j].adds,per[j+1].adds); strcpy(per[j].tel,per[j+1].tel); strcpy(per[j].num,per[j+1].num); strcpy(per[j].email,per[j+1].email); strcpy(per[j].remarks,per[j+1].remark); strcpy(per[j+1].name,); strcpy(per[j+1].abbreviation,temp.jianpin); strcpy(per[j+1].sex,temp.sex); strcpy(per[j+1].company,pany); strcpy(per[j+1].adds,temp.adds); strcpy(per[j+1].tel,temp.tel); strcpy(per[j+1].num,temp.num); strcpy(per[j+1].email,temp.email); strcpy(per[j+1].remarks,temp.remark); } if(flag==0)break;/*假如標(biāo)志為0,說(shuō)明沒(méi)有發(fā)生過(guò)互換循環(huán)結(jié)束*/ } } if(m==2) { for(i=0;i<n;i++) { flag=0;/*設(shè)標(biāo)志判斷是否發(fā)生過(guò)互換*/ for(j=0;j<n-1;j++) if((strcmp(per[j].jianpin,per[j+1].jianpin))>0)/*比較大小*/ { flag=1; strcpy(,per[j].name);/*互換記錄*/ strcpy(temp.jianpin,per[j].jianpin); strcpy(temp.sex,per[j].sex); strcpy(pany,per[j].company); strcpy(temp.adds,per[j].adds); strcpy(temp.tel,per[j].tel); strcpy(temp.num,per[j].num); strcpy(temp.email,per[j].email); strcpy(temp.remarks,per[j].remark); strcpy(per[j].name,per[j+1].name); strcpy(per[j].abbreviation,per[j+1].jianpin); strcpy(per[j].sex,per[j+1].sex); strcpy(per[j].company,per[j+1].company); strcpy(per[j].adds,per[j+1].adds); strcpy(per[j].tel,per[j+1].tel); strcpy(per[j].num,per[j+1].num); strcpy(per[j].email,per[j+1].email); strcpy(per[j].remarks,per[j+1].remark); strcpy(per[j+1].name,); strcpy(per[j+1].abbreviation,temp.jianpin); strcpy(per[j+1].sex,temp.sex); strcpy(per[j+1].company,pany); strcpy(per[j+1].adds,temp.adds); strcpy(per[j+1].tel,temp.tel); strcpy(per[j+1].num,temp.num); strcpy(per[j+1].email,temp.email); strcpy(per[j+1].remarks,temp.remark); } if(flag==0)break;/*假如標(biāo)志為0,說(shuō)明沒(méi)有發(fā)生過(guò)互換循環(huán)結(jié)束*/ } } if(m==3) { for(i=0;i<n;i++) { flag=0;/*設(shè)標(biāo)志判斷是否發(fā)生過(guò)互換*/ for(j=0;j<n-1;j++) if((strcmp(per[j].tel,per[j+1].tel))>0)/*比較大小*/ { flag=1; strcpy(,per[j].name);/*互換記錄*/ strcpy(temp.abbreviation,per[j].jianpin); strcpy(temp.sex,per[j].sex); strcpy(pany,per[j].company); strcpy(temp.adds,per[j].adds); strcpy(temp.tel,per[j].tel); strcpy(temp.num,per[j].num); strcpy(temp.email,per[j].email); strcpy(temp.remarks,per[j].remark); strcpy(per[j].name,per[j+1].name); strcpy(per[j].abbreviation,per[j+1].jianpin); strcpy(per[j].sex,per[j+1].sex); strcpy(per[j].company,per[j+1].company); strcpy(per[j].adds,per[j+1].adds); strcpy(per[j].tel,per[j+1].tel); strcpy(per[j].num,per[j+1].num); strcpy(per[j].email,per[j+1].email); strcpy(per[j].remarks,per[j+1].remark); strcpy(per[j+1].name,); strcpy(per[j+1].abbreviation,temp.jianpin); strcpy(per[j+1].sex,temp.sex); strcpy(per[j+1].company,pany); strcpy(per[j+1].adds,temp.adds); strcpy(per[j+1].tel,temp.tel); strcpy(per[j+1].num,temp.num); strcpy(per[j+1].email,temp.email); strcpy(per[j+1].remarks,temp.remark); } if(flag==0)break;/*假如標(biāo)志為0,說(shuō)明沒(méi)有發(fā)生過(guò)互換循環(huán)結(jié)束*/ } }printf("排序成功\n");/*顯示排序成功*/}voidChange(Personper[],intn){ chars[20]; inti=0; intm;printf("\t\n請(qǐng)選擇修改內(nèi)容:\n");printf("\t┌──────┐\n");printf("\t│1------姓名│\n");printf("\t│2------簡(jiǎn)拼│\n");printf("\t│3------電話│\n");printf("\t│4------返回│\n");printf("\t└──────┘\n");printf("請(qǐng)選擇編號(hào):");scanf("%d",&m);while(m!=1&&m!=2&&m!=3&&m!=4){ printf("輸入錯(cuò)誤,請(qǐng)重新選擇:"); scanf("%d",&m); } intcount=0; if(m==1) { inti=0; printf("\t請(qǐng)輸入想修改的記錄中的姓名:"); scanf("%s",s); printf("---------------------------------------------------------------------------------\n");/*格式*/ printf("序號(hào)姓名簡(jiǎn)拼性別工作單位地址電話手機(jī)電子郵件備注\n"); printf("---------------------------------------------------------------------------------\n"); for(intt=0;t<n;t++){ if(strcmp(per[t].name,s)==0){ count++; printf("%-6d%-6s%-6s%-6s%-10s%-10s%-8s%-8s%-12s%-10s%\n",per[t].score,per[t].name,per[t].jianpin,per[t].sex,per[t].company,per[t].adds,per[t].tel,per[t].num,per[t].email,per[t].remark); } } printf("---------------------------------------------------------------------------------\n"); if(count>1) { printf("查到多條數(shù)據(jù),請(qǐng)輸入序號(hào):"); m=5; } else { while(strcmp(per[i].name,s)!=0&&i<n)i++; if(i==n) { printf("\t通訊錄中沒(méi)有此人!\n"); return; } //printf("\t序號(hào):"); //scanf("\t%d",&per[i].score); printf("\t姓名:"); scanf("\t%s",per[i].name); printf("\t簡(jiǎn)拼:"); scanf("\t%s",per[i].jianpin); printf("\t性別:"); scanf("\t%s",per[i].sex); printf("\t工作單位:"); scanf("\t%s",per[i].company); printf("\t地址:"); scanf("\t%s",per[i].adds); printf("\t電話:"); scanf("\t%s",per[i].tel); printf("\t手機(jī):"); scanf("\t%s",per[i].num); printf("\t電子郵件:"); scanf("\t%s",per[i].email); printf("\t備注:"); scanf("\t%s",per[i].remark); printf("\t修改成功!"); } } if(m==2) { inti=0; printf("\t請(qǐng)輸入想修改的記錄中的姓名:"); scanf("%s",s); printf("---------------------------------------------------------------------------------\n");/*格式*/ printf("序號(hào)姓名簡(jiǎn)拼性別工作單位地址電話手機(jī)電子郵件備注\n"); printf("---------------------------------------------------------------------------------\n"); for(intt=0;t<n;t++){ if(strcmp(per[t].jianpin,s)==0){ count++; printf("%-6d%-6s%-6s%-6s%-10s%-10s%-8s%-8s%-12s%-10s%\n",per[t].score,per[t].name,per[t].jianpin,per[t].sex,per[t].company,per[t].adds,per[t].tel,per[t].num,per[t].email,per[t].remark); } } printf("---------------------------------------------------------------------------------\n"); if(count>1){ printf("查到多條數(shù)據(jù),請(qǐng)輸入序號(hào):"); m=5; }else{ while(strcmp(per[i].jianpin,s)!=0&&i<n)i++; if(i==n) { printf("\t通訊錄中沒(méi)有此人!\n"); return; } //printf("\t序號(hào):"); //scanf("\t%d",&per[i].score); printf("\t姓名:"); scanf("\t%s",per[i].name); printf("\t簡(jiǎn)拼:"); scanf("\t%s",per[i].jianpin); printf("\t性別:"); scanf("\t%s",per[i].sex); printf("\t工作單位:"); scanf("\t%s",per[i].company); printf("\t地址:"); scanf("\t%s",per[i].adds); printf("\t電話:"); scanf("\t%s",per[i].tel); printf("\t手機(jī):"); scanf("\t%s",per[i].num); printf("\t電子郵件:"); scanf("\t%s",per[i].email); printf("\t備注:"); scanf("\t%s",per[i].remark); printf("\t修改成功!"); } } if(m==3) { inti=0; printf("\t請(qǐng)輸入想修改的記錄中的姓名:"); scanf("%s",s); printf("---------------------------------------------------------------------------------\n");/*格式*/ printf("序號(hào)姓名簡(jiǎn)拼性別工作單位地址電話手機(jī)電子郵件備注\n"); printf("---------------------------------------------------------------------------------\n"); for(intt=0;t<n;t++){ if(strcmp(per[t].tel,s)==0){ count++; printf("%-6d%-6s%-6s%-6s%-10s%-10s%-8s%-8s%-12s%-10s%\n",per[t].score,per[t].name,per[t].jianpin,per[t].sex,per[t].company,per[t].adds,per[t].tel,per[t].num,per[t].email,per[t].remark); } } printf("---------------------------------------------------------------------------------\n"); if(count>1){ printf("查到多條數(shù)據(jù),請(qǐng)輸入序號(hào):"); m=5; }else{ while(strcmp(per[i].tel,s)!=0&&i<n)i++; if(i==n) { printf("\t通訊錄中沒(méi)有此人!\n"); return; } //printf("\t序號(hào):"); //scanf("\t%d",&per[i].score); printf("\t姓名:"); scanf("\t%s",per[i].name); printf("\t簡(jiǎn)拼:"); scanf("\t%s",per[i].jianpin); printf("\t性別:"); scanf("\t%s",per[i].sex); printf("\t工作單位:"); scanf("\t%s",per[i].company); printf("\t地址:"); scanf("\t%s",per[i].adds); printf("\t電話:"); scanf("\t%s",per[i].tel); printf("\t手機(jī):"); scanf("\t%s",per[i].num); printf("\t電子郵件:"); scanf("\t%s",per[i].email); printf("\t備注:"); scanf("\t%s",per[i].remark); printf("\t修改成功!"); } } if(m==5) { inti=0; scanf("%s",s); while(per[i].score!=atoi(s)&&i<n)i++; if(i==n) { printf("\t通訊錄中沒(méi)有此人!\n"); return; } //printf("\t序號(hào):"); //scanf("\t%d",&per[i].score); printf("\t姓名:"); scanf("\t%s",per[i].name); printf("\t簡(jiǎn)拼:"); scanf("\t%s",per[i].jianpin); printf("\t性別:"); scanf("\t%s",per[i].sex); printf("\t工作單位:"); scanf("\t%s",per[i].company); printf("\t地址:"); scanf("\t%s",per[i].adds); printf("\t電話:"); scanf("\t%s",per[i].tel); printf("\t手機(jī):"); scanf("\t%s",per[i].num); printf("\t電子郵件:"); scanf("\t%s",per[i].email); printf("\t備注:"); scanf("\t%s",per[i].remark); printf("\t修改成功!"); }}voidWritetoText(Personper[],intn){ inti=0; FILE*fp;/*定義文獻(xiàn)指針*/ charfilename[20];/*定義文獻(xiàn)名*/ printf("\t保存到文獻(xiàn)\n");/*輸入文獻(xiàn)名*/ printf("\t請(qǐng)輸入所保存的文獻(xiàn)名:"); scanf("\t%s",filename); if((fp=fopen(filename,"w"))==NULL) { printf("\t無(wú)法打開(kāi)文獻(xiàn)\n"); system("pause"); return; } fprintf(fp,"******************************************通訊錄******************************************\n"); fprintf(fp,"序號(hào)姓名簡(jiǎn)拼性別工作單位地址電話手機(jī)電子郵件備注\n"); fprintf(fp,"------------------------------------------------------------------------------------------\n"); while(i<n) { fprintf(fp,"%-3d\t%-6s\t%-3s\t%-13s\t%-20s\t%-20s\t%-20s\t%-20s\t%-20s\t%20s\n",per[i].score,per[i].name,per[i-1].jianpin,per[i-1].sex,per[i-1].company,per[i-1].adds,per[i-1].tel,per[i-1].num,per[i-1].email,per[i-1].remark); i++; } fprintf(fp,"------------------------------------------------------------------------------------------\n"); fprintf(fp,"***************************************共有%d條記錄****************************************\n",n); fclose(fp);/*關(guān)閉文獻(xiàn)*/ printf("保存成功\n");}intLoad(Personper[],intn){inti;FILE*fp;/*指向文獻(xiàn)的指針*/if((fp=fopen("record.txt","rb"))==NULL)/*打開(kāi)文獻(xiàn)*/{printf("無(wú)法打開(kāi)文獻(xiàn)\n");/*不能打開(kāi)*/exit(1);/*退出*/}fscanf(fp,"%d",&n);/*讀入記錄數(shù)*/for(i=0;i<n;i++)fscanf(fp,"%20s%30s%10s",per[i].name,per[i].company,per[i].tel);/*按格式讀入記錄*/fclose(fp);/*關(guān)閉文獻(xiàn)*/printf("你已經(jīng)成功地從文獻(xiàn)中讀取數(shù)據(jù)\n");/*顯示保存成功*/returnn;/*返回記錄數(shù)*/}voidmain()/*主函數(shù)*/{ intn=0; for(;;) { switch(menu_select()) { case1: printf("\n\t添加記錄到通訊錄\n");
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年天津市安全員知識(shí)題庫(kù)
- 重慶工程職業(yè)技術(shù)學(xué)院《朗讀與講故事指導(dǎo)》2023-2024學(xué)年第二學(xué)期期末試卷
- 西南民族大學(xué)《古生物學(xué)含實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南京農(nóng)業(yè)大學(xué)《教育評(píng)價(jià)與測(cè)量》2023-2024學(xué)年第二學(xué)期期末試卷
- 哈爾濱劍橋?qū)W院《廣告創(chuàng)意與策劃》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣西體育高等專科學(xué)?!峨姶艌?chǎng)理論與光波導(dǎo)技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025屆河南省周口市西華縣三校聯(lián)考高三上學(xué)期一模歷史試卷
- 贛南師范大學(xué)《幼兒園體育游戲》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇聯(lián)合職業(yè)技術(shù)學(xué)院《分子生物學(xué)(英文)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州城建職業(yè)學(xué)院《銷售管理》2023-2024學(xué)年第二學(xué)期期末試卷
- DB12-T 1305-2024 公路瀝青路面泡沫瀝青冷再生技術(shù)規(guī)范
- 范文語(yǔ)文評(píng)課稿15篇
- 2024年山東省春季高考技能考試汽車專業(yè)試題庫(kù)-中(多選題匯總)
- 2024年西安電力高等??茖W(xué)校高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 2016-2023年德州科技職業(yè)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 《人文科學(xué)概論》課件
- 大學(xué)生返回母校宣講
- 光伏機(jī)器人行業(yè)報(bào)告
- 屋頂分布式光伏發(fā)電施工組織設(shè)計(jì)
- 踐行志愿服務(wù)(下)
- 環(huán)境監(jiān)測(cè)課件20-在線環(huán)境監(jiān)測(cè)技術(shù)
評(píng)論
0/150
提交評(píng)論