




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《C語(yǔ)言課程設(shè)計(jì)》實(shí)驗(yàn)課題:書(shū)店存貨清單學(xué)院:專(zhuān)業(yè)班級(jí):學(xué)號(hào)姓名:
一.使用的子函數(shù)voidwelcome();//歡迎界面voidfunction();//主功能主界面voidsubfunction(int);//次功能提示界面voidread();//讀取文件到內(nèi)存voidadd();//創(chuàng)建以及添加voidbuy();//查詢購(gòu)買(mǎi)功能的實(shí)現(xiàn)voidsave();//文件的存儲(chǔ)voidlogin();//登陸二、編寫(xiě)思路1.定義結(jié)構(gòu)體structinformation//書(shū)店存貨結(jié)構(gòu)體{chartitle[100];//書(shū)名charauthor[100];//作者charpress[100];//出版社floatdate;//出版日期doubleprice;//價(jià)格intcount;//當(dāng)前圖書(shū)數(shù)量 intposition;//在清單中的位置}lists[N];2.歡迎函數(shù)voidwelcome()//歡迎界面{printf("********************************************************************************\n");printf("★---您好,歡迎使用書(shū)店存貨清單系統(tǒng)!---★\n\n");printf("books.txt正在導(dǎo)入中...請(qǐng)您稍等...\n\n");read();//讀取}3.主功能函數(shù)voidfunction()//主功能主界面{printf("********************************************************************************\n");printf("--------☆請(qǐng)選擇功能☆--------\n\n" "--------☆1.錄入書(shū)籍☆--------\n\n" "--------☆2.購(gòu)買(mǎi)書(shū)籍☆--------\n\n" "--------☆3.存儲(chǔ)書(shū)籍☆--------\n\n" "--------☆0.退出程序☆--------\n\n");printf("********************************************************************************\n\n");intc;scanf("%d",&c);switch(c){case1:add();break;case2:buy();break;case3:save();break;case0:exit(0);break;default:printf("輸入錯(cuò)誤!正在返回...\n");function();break;}}4.次功能函數(shù)voidsubfunction(intk)//次功能提示界面{printf("********************************************************************************\n");printf("--------☆請(qǐng)選擇功能☆--------\n\n" "--------☆1.返回上級(jí)☆--------\n\n" "--------☆2.錄入書(shū)籍☆--------\n\n" "--------☆3.購(gòu)買(mǎi)書(shū)籍☆--------\n\n" "--------☆4.存儲(chǔ)書(shū)籍☆--------\n\n" "--------☆0.退出程序☆--------\n\n");printf("********************************************************************************\n\n");intc;scanf("%d",&c);switch(c)//次功能選擇的實(shí)現(xiàn){case1:function();break;case2:add();break;case3:buy();break;case4:save();break;case0:exit(0);break;default:printf("輸入錯(cuò)誤!正在返回...\n");subfunction(k);break;}}5.讀取函數(shù)voidread()//讀取文件到內(nèi)存{FILE*fp;fp=fopen("books.txt","r");//文件是否正常打開(kāi)if(fp==NULL){printf("對(duì)不起,文件不存在!\n\n");printf("********************************************************************************\n");exit(0);}//從文件讀取到內(nèi)存for(;i<N;i++){if(feof(fp))break;fscanf(fp,"%s",lists[i].title);fscanf(fp,"%s",lists[i].author);fscanf(fp,"%s",lists[i].press);fscanf(fp,"%f",lists[i].date);fscanf(fp,"%lf",lists[i].price);fscanf(fp,"%d",lists[i].count);fscanf(fp,"%d",lists[i].position);}i--;fclose(fp);}6.添加函數(shù)voidadd()//創(chuàng)建以及添加{printf("請(qǐng)輸入書(shū)名:\n");scanf("%s",lists[i].title);printf("請(qǐng)輸入作者:\n");scanf("%s",lists[i].author);printf("請(qǐng)輸入出版社:\n");scanf("%s",lists[i].press);printf("請(qǐng)輸入出版日期:\n");scanf("%f",&lists[i].date);printf("請(qǐng)輸入價(jià)格:\n");scanf("%lf",&lists[i].price);printf("請(qǐng)輸入數(shù)量:\n");scanf("%d",&lists[i].count);printf("請(qǐng)輸入序號(hào):\n");scanf("%d",&lists[i].position);i++;//全局變量的自增function();}7.查詢購(gòu)買(mǎi)函數(shù)voidbuy()//查詢購(gòu)買(mǎi)功能的實(shí)現(xiàn){printf("請(qǐng)輸入書(shū)名:\n");//輸入書(shū)名搜索charstr[50],c;intn;scanf("%s",str);intk;for(k=0;k<=i;k++)if(!strcmp(lists[k].title,str)){printf("書(shū)名:");printf("%s",lists[k].title);printf("\n");printf("作者:");printf("%s",lists[k].author);printf("\n");printf("出版社:");printf("%s",lists[k].press);printf("\n");printf("出版日期:");printf("%.2f",lists[k].date);printf("\n");printf("價(jià)格:");printf("%.2lf",lists[k].price);printf("\n");printf("數(shù)量:");printf("%d",lists[k].count);printf("\n");printf("序號(hào):");printf("%d",lists[k].position);printf("\n");printf("請(qǐng)輸入所需數(shù)量:");fflush(stdin);scanf("%d",&n);if(n<=lists[k].count){printf("總價(jià)為:%.2lf\n",n*lists[k].price);}elseprintf("所需數(shù)量不在庫(kù)存范圍內(nèi)\n");printf("是否還想買(mǎi)其他書(shū)籍?(Y/N)\n");fflush(stdin);scanf("%c",&c);if(c=='y'||c=='Y')buy();elsebreak;}if(lists[k].title[0]=='\0')printf("您查找的信息不存在或已刪除,請(qǐng)重新查找\n");subfunction(k);}8.存儲(chǔ)函數(shù)voidsave()//文件的存儲(chǔ){FILE*fp;fp=fopen("books.txt","w+");intj;for(j=0;j<i;j++){fprintf(fp,"%s",lists[j].title);fprintf(fp,"\n");fprintf(fp,"%s",lists[j].author);fprintf(fp,"\n");fprintf(fp,"%s",lists[j].press);fprintf(fp,"\n");fprintf(fp,"%.2f",lists[j].date);fprintf(fp,"\n");fprintf(fp,"%.2lf",lists[j].price);fprintf(fp,"\n");fprintf(fp,"%d",lists[j].count);fprintf(fp,"\n");fprintf(fp,"%d",lists[j].position);fprintf(fp,"\n");}fclose(fp);printf("文件已存儲(chǔ)!\n");}9.登陸函數(shù)voidlogin()//登陸{charname[10];charcode[10];charname1[10]="sdchqd";charcode1[10]="666666";intj=0,d=0;charc;printf("********************************************************************************\n");printf("\t\t\t\t書(shū)店存貨清單系統(tǒng)\n");printf("\t\t\t\t請(qǐng)您登錄\n");while(j<3){printf("\t\t\t\t請(qǐng)輸入用戶名:\n\t\t\t\t");inta,b;for(a=0;(c=getchar())!='\n';a++)name[a]=c;name[a]='\0';printf("\t\t\t\t請(qǐng)輸入密碼:\n\t\t\t\t");for(b=0;(c=getchar())!='\n';b++)code[b]=c;code[b]='\0';if(!strcmp(name,name1)==0||!strcmp(code,code1)==0)printf("\t\t\t用戶名或密碼錯(cuò)誤!\n\n");else{d=1;break;}j++;}if(d==1)welcome();elseif(d==0)exit(0);}程序運(yùn)行1、開(kāi)始運(yùn)行程序首先在桌面新建一個(gè)命名為books的txt文件。運(yùn)行程序彈出登錄頁(yè)面。2、登錄進(jìn)入系統(tǒng)輸入用戶名“sdchqd”,密碼“666666”。登陸成功進(jìn)入系統(tǒng)頁(yè)面3、錄入書(shū)籍“1”選擇錄入功能導(dǎo)入名為txt的書(shū)本信息4、購(gòu)買(mǎi)書(shū)籍“2”選擇購(gòu)買(mǎi)書(shū)籍功能購(gòu)買(mǎi)兩本txt。5、存儲(chǔ)書(shū)籍“4”存儲(chǔ)文件功能(此時(shí)多了一個(gè)返回上級(jí)功能,否則存儲(chǔ)功能為“3”)不使用存儲(chǔ)功能則桌面內(nèi)books中無(wú)書(shū)籍信息6、退出程序使用完系統(tǒng)功能“0”退出程序。四、說(shuō)明1.程序運(yùn)行前須在桌面創(chuàng)建名為“books.txt”的文本文件。2.如果存儲(chǔ)書(shū)籍,運(yùn)行時(shí)須清空文本文件中的內(nèi)容。
《課程設(shè)計(jì)報(bào)告》[問(wèn)題定義]題目?jī)?nèi)容:書(shū)店通常使用個(gè)人電腦設(shè)置一個(gè)清單來(lái)管理書(shū)籍的存貨情況,該清單記錄每本書(shū)籍的書(shū)名,作者,出版社,在清單中的位置等信息。當(dāng)顧客想要買(mǎi)某本書(shū)時(shí),只要輸入書(shū)籍的名稱(chēng)和作者,系統(tǒng)就會(huì)顯示該書(shū)籍是否在清單中,如果書(shū)籍在清單中,系統(tǒng)會(huì)顯示書(shū)籍的詳細(xì)信息以及庫(kù)存數(shù)量,如果不在清單中,也會(huì)顯示相應(yīng)的提示信息。如果顧客想買(mǎi)的書(shū)籍?dāng)?shù)量在庫(kù)存的范圍內(nèi),系統(tǒng)會(huì)計(jì)算總價(jià)格并顯示出來(lái),否則,會(huì)提示“所需數(shù)量不在庫(kù)存范圍內(nèi)”。軟件功能:1.記錄:記錄書(shū)籍的存貨情況2.查詢:輸入書(shū)籍名稱(chēng)作者查詢書(shū)籍詳細(xì)信息3.判斷顧客需求:判斷顧客所需書(shū)籍?dāng)?shù)量是不是在庫(kù)存范圍內(nèi),如果顧客想買(mǎi)的書(shū)籍?dāng)?shù)量在庫(kù)存的范圍內(nèi),執(zhí)行4,否則,會(huì)提示“所需數(shù)量不在庫(kù)存范圍內(nèi)”4.計(jì)算書(shū)籍總價(jià):顯示顧客所需數(shù)量的書(shū)籍總價(jià)[開(kāi)發(fā)工具]VisualC++6.0[數(shù)據(jù)結(jié)構(gòu)]typedefstructinformation{chartitle[100]charauthor[100]charpress[100]floatdatedoublepriceintcountintposition}liststypedef聲明新類(lèi)型名lists代表結(jié)構(gòu)體類(lèi)型結(jié)構(gòu)體名information成員表列title表示書(shū)名author表示作者press表示出版社position表示在清單中的位置date表示出版日期price表示單價(jià)count表示當(dāng)前圖書(shū)數(shù)量[算法描述]定義結(jié)構(gòu)體歡迎函數(shù)主功能函數(shù)次功能函數(shù)讀取函數(shù)添加函數(shù)查詢購(gòu)買(mǎi)函數(shù)存儲(chǔ)函數(shù)登陸函數(shù)[程序調(diào)試情況]問(wèn)題:有設(shè)計(jì)用戶名密碼的想法不知道如何設(shè)計(jì)解決方法:百度問(wèn)題:不知道如何存儲(chǔ)數(shù)據(jù)到文本中解決方法:查看課本[心得及體會(huì)]通過(guò)這次c語(yǔ)言課程設(shè)計(jì),我明白了很多,也知道了很多,更收獲了很多。故這次課程設(shè)計(jì)至今我感慨頗多,的確,自從拿到題目到完成整個(gè)編程,從理論到實(shí)踐,我們小組學(xué)到了很多東西。卻學(xué)到了很多在書(shū)本上所沒(méi)有學(xué)到過(guò)的知識(shí)。通過(guò)這次課成設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的。只有把所學(xué)的理論知識(shí)與實(shí)際相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正的有所成就。設(shè)計(jì)的過(guò)程中遇到的問(wèn)題,同時(shí)在設(shè)計(jì)中發(fā)現(xiàn)自己的不足。對(duì)以前所學(xué)的知識(shí)理解不夠深刻,掌握不夠牢固。同時(shí)我們也明白了合作的重要性,小組內(nèi)積極討論,遇到難題迎難而上。課程設(shè)計(jì)是一個(gè)把需求分析程序,編寫(xiě)程序調(diào)試,撰寫(xiě)報(bào)告結(jié)合為一體的過(guò)程。這個(gè)過(guò)程中不僅僅鍛煉了我們縝密的思維和堅(jiān)持不懈的毅力,更磨練了一個(gè)隊(duì)伍團(tuán)結(jié)互助的精神。只有通過(guò)大家一起努力,才能將課程設(shè)計(jì)的所有環(huán)節(jié)都順利完成。相信在以后的學(xué)習(xí)生活中,我會(huì)有更多的實(shí)踐機(jī)會(huì)來(lái)提高自己的能力。培養(yǎng)自己的耐心,這是一次難忘的設(shè)計(jì)課程。感謝老師的指導(dǎo)幫助,感謝同組成員的互相幫助。[教師評(píng)語(yǔ)(評(píng)分)]源代碼:#include<stdio.h>#include<string.h>#include<stdlib.h>#defineN100//結(jié)構(gòu)體的定義structinformation//書(shū)店存貨結(jié)構(gòu)體{chartitle[100];//書(shū)名charauthor[100];//作者charpress[100];//出版社floatdate;//出版日期doubleprice;//價(jià)格intcount;//當(dāng)前圖書(shū)數(shù)量 intposition;//在清單中的位置}lists[N];//函數(shù)的聲明voidwelcome();voidfunction();voidsubfunction(int);voidread();voidadd();voidbuy();voidsave();voidlogin();inti=0;//定義全局變量intmain()//主函數(shù){login();function();return(0);}voidwelcome()//歡迎界面{printf("********************************************************************************\n");printf("★---您好,歡迎使用書(shū)店存貨清單系統(tǒng)!---★\n\n");printf("books.txt正在導(dǎo)入中...請(qǐng)您稍等...\n\n");read();//讀取}voidfunction()//主功能主界面{printf("********************************************************************************\n");printf("--------☆請(qǐng)選擇功能☆--------\n\n" "--------☆1.錄入書(shū)籍☆--------\n\n" "--------☆2.購(gòu)買(mǎi)書(shū)籍☆--------\n\n" "--------☆3.存儲(chǔ)書(shū)籍☆--------\n\n" "--------☆0.退出程序☆--------\n\n");printf("********************************************************************************\n\n");intc;scanf("%d",&c);switch(c){case1:add();break;case2:buy();break;case3:save();break;case0:exit(0);break;default:printf("輸入錯(cuò)誤!正在返回...\n");function();break;}}voidsubfunction(intk)//次功能提示界面{printf("********************************************************************************\n");printf("--------☆請(qǐng)選擇功能☆--------\n\n" "--------☆1.返回上級(jí)☆--------\n\n" "--------☆2.錄入書(shū)籍☆--------\n\n" "--------☆3.購(gòu)買(mǎi)書(shū)籍☆--------\n\n" "--------☆4.存儲(chǔ)書(shū)籍☆--------\n\n" "--------☆0.退出程序☆--------\n\n");printf("********************************************************************************\n\n");intc;scanf("%d",&c);switch(c)//次功能選擇的實(shí)現(xiàn){case1:function();break;case2:add();break;case3:buy();break;case4:save();break;case0:exit(0);break;default:printf("輸入錯(cuò)誤!正在返回...\n");subfunction(k);break;}}voidread()//讀取文件到內(nèi)存{FILE*fp;fp=fopen("books.txt","r");//文件是否正常打開(kāi)if(fp==NULL){printf("對(duì)不起,文件不存在!\n\n");printf("********************************************************************************\n");exit(0);}//從文件讀取到內(nèi)存for(;i<N;i++){if(feof(fp))break;fscanf(fp,"%s",lists[i].title);fscanf(fp,"%s",lists[i].author);fscanf(fp,"%s",lists[i].press);fscanf(fp,"%f",lists[i].date);fscanf(fp,"%lf",lists[i].price);fscanf(fp,"%d",lists[i].count);fscanf(fp,"%d",lists[i].position);}i--;fclose(fp);}voidadd()//創(chuàng)建以及添加{printf("請(qǐng)輸入書(shū)名:\n");scanf("%s",lists[i].title);printf("請(qǐng)輸入作者:\n");scanf("%s",lists[i].author);printf("請(qǐng)輸入出版社:\n");scanf("%s",lists[i].press);printf("請(qǐng)輸入出版日期:\n");scanf("%f",&lists[i].date);printf("請(qǐng)輸入價(jià)格:\n");scanf("%lf",&lists[i].price);printf("請(qǐng)輸入數(shù)量:\n");scanf("%d",&lists[i].count);printf("請(qǐng)輸入序號(hào):\n");scanf("%d",&lists[i].position);i++;//全局變量的自增function();}voidbuy()//查詢購(gòu)買(mǎi)功能的實(shí)現(xiàn){printf("請(qǐng)輸入書(shū)名:\n");//輸入書(shū)名搜索charstr[50],c;intn;scanf("%s",str);intk;for(k=0;k<=i;k++)if(!strcmp(lists[k].title,str)){printf("書(shū)名:");printf("%s",lists[k].title);printf("\n");printf("作者:");printf("%s",lists[k].author);printf("\n");printf("出版社:");printf("%s",lists[k].press);printf("\n");printf("出版日期:");printf("%.2f",lists[k].date);printf("\n");printf("價(jià)格:");printf("%.2lf",lists[k].price);printf("\n");printf("數(shù)量:");printf("%d",lists[k].count);printf("\n");printf("序號(hào):");printf("%d",lists[k].position);printf("\n");printf("請(qǐng)輸入所需數(shù)量:");fflush(stdin);scanf("%d",&n);if(n<=lists[k].count){printf("總價(jià)為:%.2lf\n",n*lists[k].price);}elseprintf("所需數(shù)量不在庫(kù)存范圍內(nèi)\n");printf("是否還想買(mǎi)其他書(shū)籍?(Y/N)\n");fflush(stdin);sca
溫馨提示
- 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-2030中國(guó)智慧城市建設(shè)進(jìn)程與投融資模式分析
- 農(nóng)藥啶蟲(chóng)脒生產(chǎn)工藝優(yōu)化設(shè)計(jì)解析
- 醫(yī)院感染控制工作總結(jié)與反思
- 2023-2024學(xué)年重慶市黔江區(qū)九年級(jí)上學(xué)期數(shù)學(xué)期末試題及答案
- 新鋼安全考試題庫(kù)及答案
- 高中生高效學(xué)習(xí)十大策略
- 勞務(wù)外包協(xié)議合同范本2024版
- 企業(yè)職工崗位安全職責(zé)手冊(cè)
- 西部計(jì)劃題庫(kù)及答案
- 學(xué)生上課安全協(xié)議書(shū)范本
- 2025便利店加盟的合同樣本
- 評(píng)職稱(chēng)老師考試題目及答案
- 2025年內(nèi)分泌風(fēng)濕免疫科進(jìn)修人員出科理論考試試題及答案
- 石油監(jiān)督考試試題及答案
- 2025年花卉栽培技術(shù)人員花卉栽培技術(shù)知識(shí)考核試卷及答案
- 2025年高一物理下學(xué)期期末考試試題及答案
- 學(xué)堂在線 高技術(shù)與現(xiàn)代局部戰(zhàn)爭(zhēng) 章節(jié)測(cè)試答案
- 2025年醫(yī)療器械倉(cāng)庫(kù)管理培訓(xùn)試題及答案
- 助焊劑存儲(chǔ)管理辦法
- 測(cè)井工崗位實(shí)習(xí)報(bào)告
- 2025至2030中國(guó)CAN收發(fā)器行業(yè)項(xiàng)目調(diào)研及市場(chǎng)前景預(yù)測(cè)評(píng)估報(bào)告
評(píng)論
0/150
提交評(píng)論