




已閱讀5頁,還剩36頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
.沈 陽 工 程 學(xué) 院信 息 學(xué) 院C語言程序設(shè)計(jì)實(shí)踐課 程 設(shè) 計(jì)設(shè)計(jì)題目: 個(gè)人記帳管理 系 別 物聯(lián)網(wǎng)工程 班級(jí) 學(xué)生姓名 學(xué) 號(hào) 2016319119 指導(dǎo)教師 職稱 副教授/講師 起止日期: 2016年12月16日起至 2017年01月06日止.沈 陽 工 程 學(xué) 院 信 息 學(xué) 院 C語言程序設(shè)計(jì)實(shí)踐 課程設(shè)計(jì)成績?cè)u(píng)定表系(部): 班級(jí): 學(xué)生姓名: 指 導(dǎo) 教 師 評(píng) 審 意 見評(píng)價(jià)內(nèi)容具 體 要 求權(quán)重評(píng) 分加權(quán)分調(diào)研論證能獨(dú)立查閱文獻(xiàn),收集資料;能制定課程設(shè)計(jì)方案和日程安排。0.15432工作能力態(tài)度工作態(tài)度認(rèn)真,遵守紀(jì)律,出勤情況是否良好,能夠獨(dú)立完成設(shè)計(jì)工作, 0.25432工作量按期圓滿完成規(guī)定的設(shè)計(jì)任務(wù),工作量飽滿,難度適宜。0.25432說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理,文字通順,技術(shù)用語準(zhǔn)確,符號(hào)統(tǒng)一,編號(hào)齊全,圖表完備,書寫工整規(guī)范。0.55432指導(dǎo)教師評(píng)審成績(加權(quán)分合計(jì)乘以8) 分加權(quán)分合計(jì)指 導(dǎo) 教 師 簽 名: 年 月 日評(píng) 閱 教 師 評(píng) 審 意 見評(píng)價(jià)內(nèi)容具 體 要 求權(quán)重評(píng) 分加權(quán)分查閱文獻(xiàn)查閱文獻(xiàn)有一定廣泛性;有綜合歸納資料的能力0.25432工作量工作量飽滿,難度適中。0.55432說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理,文字通順,技術(shù)用語準(zhǔn)確,符號(hào)統(tǒng)一,編號(hào)齊全,圖表完備,書寫工整規(guī)范。0.35432評(píng)閱教師評(píng)審成績(加權(quán)分合計(jì)乘以4)分加權(quán)分合計(jì)評(píng) 閱 教 師 簽 名: 年 月 日答 辯 小 組 評(píng) 審 意 見評(píng)價(jià)內(nèi)容具 體 要 求權(quán)重評(píng) 分加權(quán)分學(xué)生匯報(bào)匯報(bào)準(zhǔn)備充分,思路清晰;語言表達(dá)準(zhǔn)確,概念清楚,論點(diǎn)正確,有層次,有重點(diǎn),基本上反映了所完成任務(wù)的全部內(nèi)容;時(shí)間符合要求。0.55432答 辯思路清晰;回答問題有理論依據(jù),基本概念清楚;主要問題回答準(zhǔn)確,深入,有說服力。0.55432答辯小組評(píng)審成績(加權(quán)分合計(jì)乘以8)分加權(quán)分合計(jì)答辯小組教師簽名: 年 月 日課 程 設(shè) 計(jì) 總 評(píng) 成 績分沈 陽 工 程 學(xué) 院 信 息 學(xué) 院 C語言程序設(shè)計(jì)實(shí)踐 課程設(shè)計(jì)成績?cè)u(píng)定表系(部): 班級(jí): 學(xué)生姓名: 指 導(dǎo) 教 師 評(píng) 審 意 見評(píng)價(jià)內(nèi)容具 體 要 求權(quán)重評(píng) 分加權(quán)分調(diào)研論證能獨(dú)立查閱文獻(xiàn),收集資料;能制定課程設(shè)計(jì)方案和日程安排。0.15432工作能力態(tài)度工作態(tài)度認(rèn)真,遵守紀(jì)律,出勤情況是否良好,能夠獨(dú)立完成設(shè)計(jì)工作, 0.25432工作量按期圓滿完成規(guī)定的設(shè)計(jì)任務(wù),工作量飽滿,難度適宜。0.25432說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理,文字通順,技術(shù)用語準(zhǔn)確,符號(hào)統(tǒng)一,編號(hào)齊全,圖表完備,書寫工整規(guī)范。0.55432指導(dǎo)教師評(píng)審成績(加權(quán)分合計(jì)乘以8) 分加權(quán)分合計(jì)指 導(dǎo) 教 師 簽 名: 年 月 日評(píng) 閱 教 師 評(píng) 審 意 見評(píng)價(jià)內(nèi)容具 體 要 求權(quán)重評(píng) 分加權(quán)分查閱文獻(xiàn)查閱文獻(xiàn)有一定廣泛性;有綜合歸納資料的能力0.25432工作量工作量飽滿,難度適中。0.55432說明書的質(zhì)量說明書立論正確,論述充分,結(jié)論嚴(yán)謹(jǐn)合理,文字通順,技術(shù)用語準(zhǔn)確,符號(hào)統(tǒng)一,編號(hào)齊全,圖表完備,書寫工整規(guī)范。0.35432評(píng)閱教師評(píng)審成績(加權(quán)分合計(jì)乘以4)分加權(quán)分合計(jì)評(píng) 閱 教 師 簽 名: 年 月 日答 辯 小 組 評(píng) 審 意 見評(píng)價(jià)內(nèi)容具 體 要 求權(quán)重評(píng) 分加權(quán)分學(xué)生匯報(bào)匯報(bào)準(zhǔn)備充分,思路清晰;語言表達(dá)準(zhǔn)確,概念清楚,論點(diǎn)正確,有層次,有重點(diǎn),基本上反映了所完成任務(wù)的全部內(nèi)容;時(shí)間符合要求。0.55432答 辯思路清晰;回答問題有理論依據(jù),基本概念清楚;主要問題回答準(zhǔn)確,深入,有說服力。0.55432答辯小組評(píng)審成績(加權(quán)分合計(jì)乘以8)分加權(quán)分合計(jì)答辯小組教師簽名: 年 月 日課 程 設(shè) 計(jì) 總 評(píng) 成 績分沈陽工程學(xué)院信息學(xué)院C語言程序設(shè)計(jì)實(shí)踐課程設(shè)計(jì)任務(wù)書 課程設(shè)計(jì)題目: 個(gè)人記帳管理 系 別 物聯(lián)網(wǎng)工程 班級(jí) 物聯(lián)網(wǎng)161 學(xué)生姓名 學(xué) 號(hào) 2 指導(dǎo)教師 職稱 副教授、講師 課程設(shè)計(jì)進(jìn)行地點(diǎn): 實(shí)訓(xùn)樓F六樓機(jī)房 任 務(wù) 下 達(dá) 時(shí) 間: 2016年 12 月 14 日起止日期:2016年12月16日起至2017年01月06日止系主任 2016年 12 月 09 日批準(zhǔn).一、 課程設(shè)計(jì)的原始資料及依據(jù)查閱有關(guān)資料,進(jìn)一步理解面向?qū)ο蟪绦蛟O(shè)計(jì)的思想,并編寫一個(gè)簡(jiǎn)單的應(yīng)用程序系統(tǒng)。通過本設(shè)計(jì)可以加深理解使用結(jié)構(gòu)化程序設(shè)計(jì)思想開發(fā)一個(gè)系統(tǒng)的方法,提高分析問題、解決問題和實(shí)際動(dòng)手的能力。二、課程設(shè)計(jì)主要內(nèi)容及要求設(shè)計(jì)內(nèi)容:1. 記賬信息:月份、食品消費(fèi)、房租費(fèi)用、子女教育費(fèi)、用水電費(fèi)用、醫(yī)療費(fèi)用、儲(chǔ)蓄費(fèi)用、收入費(fèi)用。2. 功能:分別可添加、修改、查詢、排序、刪除。3. 保存。設(shè)計(jì)要求:1. 要求利用結(jié)構(gòu)化的方法完成系統(tǒng)的設(shè)計(jì);2. 要求在設(shè)計(jì)的過程中建立清晰度層次結(jié)構(gòu);3. 設(shè)計(jì)功能滿足要求、易于操作的友好界面;4. 界面中需有菜單;5. 在系統(tǒng)的設(shè)計(jì)中,至少要建立5個(gè)以上獨(dú)立函數(shù);6. 要求操作簡(jiǎn)單,用戶界面友好。7. 運(yùn)行程序,檢查結(jié)果是否和理論值一致。8. 在完成該題目時(shí),小組人員進(jìn)行詳細(xì)的任務(wù)分工,并要在報(bào)告中體現(xiàn)出來。三、對(duì)課程設(shè)計(jì)說明書撰寫內(nèi)容、格式、字?jǐn)?shù)的要求1課程設(shè)計(jì)說明書是體現(xiàn)和總結(jié)課程設(shè)計(jì)成果的載體,主要內(nèi)容包括:設(shè)計(jì)題目、設(shè)計(jì)目的、設(shè)備器材、設(shè)計(jì)原理及內(nèi)容、設(shè)計(jì)步驟、遇到的問題及解決方法、設(shè)計(jì)總結(jié)、參考文獻(xiàn)等。一般不應(yīng)少于3000字。2在適當(dāng)位置配合相應(yīng)的實(shí)驗(yàn)原理圖、功能模塊圖、算法流程圖等圖表進(jìn)行說明。應(yīng)做到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。3設(shè)計(jì)總結(jié)部分主要寫本人完成工作簡(jiǎn)介以及自己的設(shè)計(jì)體會(huì),包括通過課程設(shè)計(jì)學(xué)到了什么,哪里遇到了困難,解決的辦法以及今后的目標(biāo)。4課程設(shè)計(jì)說明書手寫或打印均可。手寫要用學(xué)校統(tǒng)一的課程設(shè)計(jì)用紙,用黑或藍(lán)黑墨水工整書寫;打印時(shí)采用A4紙,頁邊距均為20mm,正文采用宋體小四號(hào)字,行間距18磅。文中大標(biāo)題采用黑體小三號(hào)字,一級(jí)節(jié)標(biāo)題采用黑體四號(hào)字,二級(jí)節(jié)標(biāo)題采用黑體小四號(hào)字,表題與圖題采用宋體五號(hào)字。5課程設(shè)計(jì)說明書裝訂順序?yàn)椋悍饷?、任?wù)書、成績?cè)u(píng)定表、目錄、正文、參考文獻(xiàn)。四、設(shè)計(jì)完成后應(yīng)提交成果的種類、數(shù)量、質(zhì)量等方面的要求1完成“任務(wù)書”中指定的功能,運(yùn)行結(jié)果正確。2課程設(shè)計(jì)說明書。五、時(shí)間進(jìn)度安排順序階段日期計(jì) 劃 完 成 內(nèi) 容備注1第1天進(jìn)行設(shè)計(jì)準(zhǔn)備,閱讀資料,分析設(shè)計(jì)任務(wù)書,明確設(shè)計(jì)要求、內(nèi)容和步驟2第2天需求分析3第3天概要設(shè)計(jì)4第4-5天詳細(xì)設(shè)計(jì)5第58天編碼、調(diào)試6第9-10天程序答辯,撰寫課程設(shè)計(jì)報(bào)告六、主要參考資料(文獻(xiàn))1譚浩強(qiáng).C程序設(shè)計(jì)(第三版).北京: 清華大學(xué)出版社.20062陳天洲.C語言高級(jí)程序設(shè)計(jì). 北京:人民郵電出版社.2002 3楊旭.C語言程序設(shè)計(jì)案例教程.北京: 人民郵電出版社.20054郭翠英.程序設(shè)計(jì)案例經(jīng)典.中國水利電力出版社.20045譚浩強(qiáng).程序設(shè)計(jì)基礎(chǔ).北京:清華大學(xué)出版社.20046張翔.C語言函數(shù)大全 電子工業(yè)出版社.20057王為青.C語言高級(jí)編程及實(shí)例剖析.北京:人民郵電出版社.2008.028徐慧.C語言實(shí)例解析精粹.北京:人民郵電出版社.2006.049姚大鵬 欒好利 張翼英 等編著.C語言程序設(shè)計(jì)教程習(xí)題與上機(jī)實(shí)訓(xùn)指導(dǎo).中國水利水電出版社.2005.課 程 設(shè) 計(jì) 任 務(wù) 分 工組長姓名張峻銘題目個(gè)人記帳管理項(xiàng)目組成員個(gè)人任務(wù)描述自我評(píng)定錄入功能的設(shè)計(jì)和儲(chǔ)存功能設(shè)計(jì)和排序功能的設(shè)計(jì)以及刪除功能的設(shè)計(jì)優(yōu)秀主頁面的設(shè)計(jì)和查詢功能的設(shè)計(jì)和修改功能設(shè)計(jì)以及制作world文檔良好.目 錄第1章 緒 論1第2章 系統(tǒng)功能分析22.1 功能22.2系統(tǒng)功能需求2第3章 總體設(shè)計(jì)33.1 系統(tǒng)設(shè)計(jì)33.2 分塊設(shè)計(jì)31)菜單32)錄入功能設(shè)計(jì)43 ) 存儲(chǔ)功能設(shè)計(jì)54)查看功能設(shè)計(jì)55)修改功能設(shè)計(jì)76)查詢功能設(shè)計(jì)87 ) 排序功能設(shè)計(jì)108)刪除功能設(shè)計(jì)12第4章 調(diào)試結(jié)果和設(shè)計(jì)分析144.1 主頁面144.2 錄入數(shù)據(jù)144.3 查看數(shù)據(jù)154.4 修改數(shù)據(jù)154.5 查詢數(shù)據(jù)164.6 排序系統(tǒng)174.7 刪除系統(tǒng)17結(jié) 論18致 謝19參考文獻(xiàn)20程序21 .第1章 緒 論程序設(shè)計(jì)過程有如解決一個(gè)實(shí)際問題,從解決實(shí)際問題的角度,我們可以這樣來看:首先要了解這個(gè)問題的基本要求,即輸入、輸出、完成從輸入到輸出的要求是什么;其次,從問題的要害入手,從前到后的解決問題的每個(gè)方面,即從輸入開始入手,著重考慮如何從輸入導(dǎo)出輸出,在這個(gè)過程中,可確定所需的變量、數(shù)組、指針、鏈表、命令、函數(shù),然后確定處理過程算法。可得最后結(jié)果這次我們組要解決的實(shí)際問題是個(gè)人賬簿管理系統(tǒng)的設(shè)計(jì)我們將嚴(yán)格按照程序設(shè)計(jì)的過程來完成這一個(gè)課題的設(shè)計(jì).第2章 系統(tǒng)功能分析 2.1 功能 個(gè)人帳簿管理系統(tǒng)記錄某人每月的全部收入及各項(xiàng)開支情況,包括食品消費(fèi),房租,子女教育費(fèi)用,水電費(fèi),醫(yī)療費(fèi),儲(chǔ)蓄等。進(jìn)入系統(tǒng)后可以輸入和修改某月的收支情況,可以對(duì)每月的開支從小到大進(jìn)行排序,可以根據(jù)輸入的月份查詢每月的收支情況。2.2系統(tǒng)功能需求1.文件操作功能:自動(dòng)加載和保存數(shù)據(jù)文件。2.數(shù)據(jù)輸入功能:可以按提示錄入各項(xiàng)數(shù)據(jù)。 3.數(shù)據(jù)修改功能:可以按提示修改各項(xiàng)數(shù)據(jù)。 4.查詢功能:可按月份、食品消費(fèi)進(jìn)行特定查詢,及顯示全部數(shù)據(jù)。 5.排序功能:完成對(duì)每月開支的排序。 6.刪除功能:可以按提示刪除一些數(shù)據(jù)。7.轉(zhuǎn)碼功能:我們對(duì)文件用的是dat的形式,設(shè)計(jì)轉(zhuǎn)碼功能,將它轉(zhuǎn)為txt形式。.第3章 總體設(shè)計(jì)3.1 系統(tǒng)設(shè)計(jì)按系統(tǒng)分析的功能要求將系統(tǒng)劃分為以下幾個(gè)主要功能模塊:結(jié)構(gòu)圖:主菜單錄入數(shù)據(jù)儲(chǔ)存數(shù)據(jù)修改數(shù)據(jù)查詢數(shù)據(jù)刪除數(shù)據(jù)排序退出查看數(shù)據(jù)3.2 分塊設(shè)計(jì)1)菜單 void menu(void) int item; int mon; Yyy *a; a=(Yyy *)malloc(sizeof(Yyy); do printf(個(gè)人帳簿管理系統(tǒng)設(shè)計(jì)n); printf(1.錄入數(shù)據(jù)n); printf(2.查看數(shù)據(jù)n); printf(3.修改數(shù)據(jù)n); printf(4.查詢數(shù)據(jù)n); printf(5.排序數(shù)據(jù)n); printf(6.刪除數(shù)據(jù)n); printf(0.退出系統(tǒng)n); printf(請(qǐng)輸入要進(jìn)行的操作: ); scanf(%d,&item); while(item6 | itemmonth,&newI-spxf,&newI-fzfy,&newI-znjy,&newI-sdfy,&newI-ylfy,&newI-cxfy,&newI-srfy);fflush(stdin); 3 ) 存儲(chǔ)功能設(shè)計(jì)void writeyyy(Yyy *newI) FILE *fp; fp=fopen(FilePath1,ab+); if(fp=NULL) printf(無法創(chuàng)建文件:%s,FilePath1); exit(0); fwrite(newI,sizeof(Yyy),1,fp); fclose(fp); printf(數(shù)據(jù)錄入成功!n); 4)查看功能設(shè)計(jì) void changeFormat(void) /暫時(shí)只能操作一行文件有待改進(jìn) FILE *fp1,*fp2; Yyy *a; a=(Yyy *)malloc(sizeof(Yyy); fp1=fopen(FilePath1,rb+); if(fp1=NULL) printf(無法找到文件:%sn,FilePath1); return ;/返回主函數(shù) fp2=fopen(FilePath2,wt+); if(fp2=NULL) printf(無法創(chuàng)建文件:%sn,FilePath2); return ;/返回主函數(shù) fputs( n個(gè)人帳簿管理系統(tǒng)n,fp2); fputs(記錄月份 食品消費(fèi) 房租費(fèi)用 子女費(fèi)用 水電費(fèi)用 醫(yī)療費(fèi)用 儲(chǔ)蓄費(fèi)用 本月收入n,fp2);fputs(- n,fp2); printf(n記錄月份 食品消費(fèi) 房租費(fèi)用 子女費(fèi)用 水電費(fèi)用 醫(yī)療費(fèi)用 儲(chǔ)蓄費(fèi)用 本月收入n);printf(- n); rewind(fp1); fread(a,sizeof(Yyy),1,fp1); while(!feof(fp1) printf(%7d %8d %8d %8d %8d %8d %8d %8dn,a-month,a-spxf,a-fzfy,a-znjy,a-sdfy,a-ylfy,a-cxfy,a-srfy);fprintf(fp2,%7d %8d %8d %8d %8d %8d %8d %8dn,a-month,a-spxf,a-fzfy,a-znjy,a-sdfy,a-ylfy,a-cxfy,a-srfy); fread(a,sizeof(Yyy),1,fp1); fputs(- n,fp2); fputs(關(guān)閉本程序繼續(xù)原程序!n,fp2); fclose(fp1); fclose(fp2); system(FilePath2); /調(diào)用打開轉(zhuǎn)換的文本文件 remove(FilePath2);/刪除文本文件文件 5)修改功能設(shè)計(jì)void modify(Yyy *a,int mon) FILE *fp1,*fp2; Yyy *b; b=(Yyy *)malloc(sizeof(Yyy); fp1=fopen(FilePath1,rt); fp2=fopen(temp.dat,wt+); rewind(fp1); fread(b,sizeof(Yyy),1,fp1); while (!feof(fp1) if(b-month=mon) fwrite(a,sizeof(Yyy),1,fp2); else fwrite(b,sizeof(Yyy),1,fp2); fread(b,sizeof(Yyy),1,fp1); fclose(fp1); fclose(fp2); remove(FilePath1);/刪除源文件 rename(temp.dat,FilePath1);/重命名中間文件 printf(修改數(shù)據(jù)成功!n ); changeFormat(); 6)查詢功能設(shè)計(jì)Status search(Yyy *a) FILE *fp1; int mon; int isfound=0; printf(請(qǐng)正確輸入要查詢的月份:); scanf(%d,&mon); fflush(stdin); fp1=fopen(FilePath1,rb+); if(fp1=NULL) printf(無法找到文件:%sn,FilePath1); return 0; /返回主函數(shù) rewind(fp1); fread(a,sizeof(Yyy),1,fp1); while(!feof(fp1) if(a-month=mon) isfound=1; break; else isfound=0; fread(a,sizeof(Yyy),1,fp1); fclose(fp1); if(isfound) return 1; else return NotFound; 7 ) 排序功能設(shè)計(jì)void paixu(Yyy *a) int i=0,j=0,flag=0,t; pType px8=0,0; char str810=記錄月份,食品消費(fèi),房租費(fèi)用,子女費(fèi)用,水電費(fèi)用,醫(yī)療費(fèi)用,儲(chǔ)蓄費(fèi)用,本月收入; for(;imonth; px1.data=a-spxf; px2.data=a-fzfy; px3.data=a-znjy; px4.data=a-sdfy; px5.data=a-ylfy; px6.data=a-cxfy; px7.data=a-srfy; for(i=1;i8;i+) for(j=0;jpxj+1.data) t=pxj.data; pxj.data=pxj+1.data; pxj+1.data=t; t=pxj.no; pxj.no=pxj+1.no; pxj+1.no=t; printf(n); for(i=0;i8;i+) printf( %s,strpxi.no); printf(n- n); for(i=0;imonth!=mon) fwrite(b,sizeof(Yyy),1,fp2); fread(b,sizeof(Yyy),1,fp1); fclose(fp1); fclose(fp2); remove(FilePath1);/刪除源文件 rename(temp.dat,FilePath1);/重命名中間文件 printf(刪除數(shù)據(jù)成功!n ); .第4章 調(diào)試結(jié)果和設(shè)計(jì)分析4.1 主頁面4.2 錄入數(shù)據(jù)4.3 查看數(shù)據(jù)4.4 修改數(shù)據(jù)4.5 查詢數(shù)據(jù)4.6 排序系統(tǒng)4.7 刪除系統(tǒng).結(jié) 論在這次的課程設(shè)計(jì),我發(fā)現(xiàn)了自己還有很多的不足,在這方面還有很多的不會(huì)。還需要更加深入的學(xué)習(xí)。通過此次的課程設(shè)計(jì),在大一C語言學(xué)習(xí)的基礎(chǔ)上,我較為深入的掌握了數(shù)據(jù)結(jié)構(gòu)與算法的設(shè)計(jì)方法,具備了一定獨(dú)立分析和設(shè)計(jì)能力和初步掌握軟件開發(fā)過程的問題分析,系統(tǒng)設(shè)計(jì),程序編碼,測(cè)試等基本方法和技能。.致 謝感謝隊(duì)友的幫助,在我一些不懂的地方給予了我及時(shí)的幫助。感謝老師的教導(dǎo),正在有些方面自己和同組人還有很多的不會(huì),不過經(jīng)過老師的輔導(dǎo)還是成功編寫了出來。.參考文獻(xiàn)程序#include #include #include #include /文件保存路徑 #define FilePath1 Myyyy.dat #define FilePath2 Myyyy.txt /查詢用聲明 #define Status int #define OK 1 #define Error 0 #define NotFound 2 typedef struct int month;/月份 int spxf;/食品消費(fèi) int fzfy;/房租費(fèi)用 int znjy;/子女教育費(fèi)用 int sdfy;/水電費(fèi)用 int ylfy;/醫(yī)療費(fèi)用 int cxfy;/儲(chǔ)蓄費(fèi)用 int srfy;/收入費(fèi)用 Yyy; typedef struct / 查詢用自定義數(shù)據(jù)類型 int no; int data; pType;void menu(void); /菜單 void input(Yyy *newI); /接收鍵盤輸入 void writeyyy(Yyy *newI);/向文件內(nèi)寫入內(nèi)容 void changeFormat(void );/將dat格式文件轉(zhuǎn)換為txt文件 Status search(Yyy *a);/查詢函數(shù)返回查詢的結(jié)果及查詢的狀態(tài) void paixu(Yyy *a);/對(duì)查詢據(jù)結(jié)果排序 void modify(Yyy *a,int mon);/修改數(shù)據(jù) void delRecord(int mon);/刪除數(shù)據(jù) void main() while(1) menu(); void menu(void) int item; int mon; Yyy *a; a=(Yyy *)malloc(sizeof(Yyy); do printf(個(gè)人帳簿管理系統(tǒng)設(shè)計(jì)n); printf(1.錄入數(shù)據(jù)n); printf(2.查看數(shù)據(jù)n); printf(3.修改數(shù)據(jù)n); printf(4.查詢數(shù)據(jù)n); printf(5.排序數(shù)據(jù)n); printf(6.刪除數(shù)據(jù)n); printf(0.退出系統(tǒng)n); printf(請(qǐng)輸入要進(jìn)行的操作: ); scanf(%d,&item); while(item6 | itemmonth; if (item!=OK) printf(n沒有符合條件的記錄!n); else printf(n記錄月份 食品消費(fèi) 房租費(fèi)用 子女費(fèi)用 水電費(fèi)用 醫(yī)療費(fèi)用 儲(chǔ)蓄費(fèi)用 本月收入 n);printf(- n);printf(%7d %8d %8d %8d %8d %8d %8d %8d/n,a-month,a-spxf,a-fzfy,a-znjy,a-sdfy,a-ylfy,a-cxfy,a-srfy); input(a); modify(a,mon); break; /查詢數(shù)據(jù) case 4: item=search(a); if (item!=OK) printf(n沒有符合條件的記錄!n); else printf(n記錄月份 食品消費(fèi) 房租費(fèi)用 子女費(fèi)用 水電費(fèi)用 醫(yī)療費(fèi)用 儲(chǔ)蓄費(fèi)用 本月收入n);printf(- n);printf(%7d %8d %8d %8d %8d %8d %8d %8d/n,a-month,a-spxf,a-fzfy,a-znjy,a-sdfy,a-ylfy,a-cxfy,a-srfy); break; /排序數(shù)據(jù) case 5: item=search(a); if (item!=OK) printf(n沒有符合條件的記錄!n); else paixu(a); break; /刪除數(shù)據(jù) case 6: item=search(a); mon=a-month; if (item!=OK) printf(n沒有符合條件的記錄!n); else printf(n記錄月份 食品消費(fèi) 房租費(fèi)用 子女費(fèi)用 水電費(fèi)用 醫(yī)療費(fèi)用 儲(chǔ)蓄費(fèi)用 本月收入n);printf(- n);printf(%7d %8d %8d %8d %8d %8d %8d %8d/n,a-month,a-spxf,a-fzfy,a-znjy,a-sdfy,a-ylfy,a-cxfy,a-srfy); delRecord(mon); break; free(a);/釋放內(nèi)存空間 void input(Yyy *newI) printf(n依次輸入數(shù)據(jù):n(本月月份 食品消費(fèi) 房租費(fèi)用 子女費(fèi)用 水電費(fèi)用 醫(yī)療費(fèi)用 儲(chǔ)蓄費(fèi)用 收入費(fèi)用)n);scanf(%d%d%d%d%d%d%d%d,&newI-month,&newI-spxf,&newI-fzfy,&newI-znjy,&newI-sdfy,&newI-ylfy,&newI-cxfy,&newI-srfy); fflush(stdin); void writeyyy(Yyy *newI) FILE *fp; fp=fopen(FilePath1,ab+); if(fp=NULL) printf(無法創(chuàng)建文件:%s,FilePath1); exit(1); fwrite(newI,sizeof(Yyy),1,fp); fclose(fp); printf(數(shù)據(jù)錄入成功!n); void changeFormat(void) /暫時(shí)只能操作一行文件有待改進(jìn) FILE *fp1,*fp2; Yyy *a; a=(Yyy *)malloc(sizeof(Yyy); fp1=fopen(FilePath1,rb+); if(fp1=NULL) printf(無法找到文件:%sn,FilePath1); return ;/返回主函數(shù) fp2=fopen(FilePath2,wt+); if(fp2=NULL) printf(無法創(chuàng)建文件:%sn,FilePath2); return ;/返回主函數(shù) fputs( n個(gè)人帳簿管理系統(tǒng)n,fp2); fputs(記錄月份 食品消費(fèi) 房租費(fèi)用 子女費(fèi)用 水電費(fèi)用 醫(yī)療費(fèi)用 儲(chǔ)蓄費(fèi)用 本月收入n,fp2);fputs(- n,fp2); printf(n記錄月份 食品消費(fèi) 房租費(fèi)用 子女費(fèi)用 水電費(fèi)用 醫(yī)療費(fèi)用 儲(chǔ)蓄費(fèi)用 本月收入n);printf(- n); rewind(fp1); fread(a,sizeof(Yyy),1,fp1); while(!feof(fp1) printf(%7d %8d %8d %8d %8d %8d %8d %8dn,a-month,a-spxf,a-fzfy,a-znjy,a-sdfy,a-ylfy,a-cxfy,a-srfy);fprintf(fp2,%7d %8d %8d %8d %8d %8d %8d %8dn,a-month,a-spxf,a-fzfy,a-znjy,a-sdfy,a-ylfy,a-cxfy,a-srfy); fread(a,sizeof(Yyy),1,fp1); fputs(- n,fp2); fputs(關(guān)閉本程序繼續(xù)原程序!n,fp2); fclose(fp1); fclose(fp2); system(FilePath2); /調(diào)用打開轉(zhuǎn)換的文本文件 remove(FilePath2);/刪除文本文件文件 Status search(Yyy *a) FILE *fp1; int mon; int isfound=0; printf(請(qǐng)正確輸入要查詢的月份:); scanf(%d,&mon); fflush(stdin); fp1=fopen(FilePath1,rb+); if(fp1=NULL) printf(無法找到文件:%sn,FilePath1); return Error; /返回主函數(shù) rewind(fp1); fread(a,sizeof(Yyy),1,fp1); while(!feof(fp1)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)保科技設(shè)備進(jìn)銷存合同
- 2025企業(yè)勞動(dòng)合同指南
- 家鄉(xiāng)的美景讓我如此陶醉寫景作文(9篇)
- 技術(shù)研發(fā)與項(xiàng)目委托開發(fā)合同
- 物理定律在工程材料力學(xué)中的應(yīng)用知識(shí)考點(diǎn)
- 2024屆江蘇省南通市高考三模地理試題(解析版)
- 2024-2025學(xué)年山西省部分學(xué)校高一下學(xué)期開學(xué)質(zhì)量檢測(cè)地理試題(解析版)
- 浙江省杭州市S9聯(lián)盟2024-2025學(xué)年高一上學(xué)期期中聯(lián)考政治試題(解析版)
- 山東省棗莊市薛城區(qū)、山亭區(qū)2024-2025學(xué)年高一上學(xué)期期末考試政治試題(解析版)
- 通信設(shè)備制造業(yè)供應(yīng)鏈協(xié)同管理方案設(shè)計(jì)
- 湖北省武漢市武昌區(qū)2025屆高三5月質(zhì)量檢測(cè)考試語文及參考答案
- 核電站鋼板混凝土結(jié)構(gòu)技術(shù)標(biāo)準(zhǔn)
- 《兒童健康保障課件:理性選擇與購買策略》
- 校醫(yī)招聘考試試題及答案
- 新能源安規(guī)試題及答案
- 中國多聚甲醛行業(yè)發(fā)展分析及投資價(jià)值預(yù)測(cè)研究報(bào)告2025-2028版
- 2O25中國商業(yè)航天創(chuàng)新生態(tài)報(bào)告
- 江蘇省南通等六市2025屆高三最后一卷英語試卷含解析
- 路橋施工作業(yè)指導(dǎo)書匯編
- 房建工程總承包EPC項(xiàng)目技術(shù)標(biāo)(投標(biāo)方案)(技術(shù)標(biāo))
- 《全球市場(chǎng)分析與發(fā)展趨勢(shì)》課件
評(píng)論
0/150
提交評(píng)論