版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
程序設(shè)計(jì)及C語(yǔ)言大作業(yè)《程序設(shè)計(jì)及C語(yǔ)言》大作業(yè)指導(dǎo)東南大學(xué)經(jīng)濟(jì)管理學(xué)院程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第1頁(yè)。2013年8月程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第1頁(yè)。目錄TOC\o"1-2"\h\u18496一、目的與要求 327103二、題目與考核 4278221、經(jīng)濟(jì)類(lèi)題目 4191812、管理類(lèi)題目 6253703、小組考核 83336三、模板與案例 9220961、模板 925482、案例 9程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第2頁(yè)。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第2頁(yè)。一、目的與要求1、目的:大作業(yè)是《程序設(shè)計(jì)及C語(yǔ)言》課程的綜合實(shí)驗(yàn),旨在加強(qiáng)學(xué)生的自主學(xué)習(xí)、收集資料和動(dòng)手編程的能力,為后續(xù)專(zhuān)業(yè)課程打好基礎(chǔ)。2、授課對(duì)象:一年級(jí)本科生。3、任務(wù)安排:(1)選題:大作業(yè)題目分為經(jīng)濟(jì)和管理兩類(lèi),每類(lèi)有五道題,任選一道題做。經(jīng)濟(jì)類(lèi)的學(xué)生只能選經(jīng)濟(jì)類(lèi)的題目,管理類(lèi)的學(xué)生只能選管理類(lèi)的題目。(2)大作業(yè)可獨(dú)立完成;也可2~3人為一組共同完成,但每人必須獨(dú)立完成題目的一個(gè)部分。(3)大作業(yè)安排在上機(jī)時(shí)間完成,包括查資料的時(shí)間,大約需要24學(xué)時(shí)。(4)程序設(shè)計(jì)環(huán)境請(qǐng)使用VisualC++6.0,不允許用數(shù)據(jù)庫(kù)開(kāi)發(fā)工具。(5)所有程序要求調(diào)試通過(guò),有運(yùn)行結(jié)果(多數(shù)程序需要把結(jié)果保存到文件中)。(6)要求提交大作業(yè)報(bào)告(Word文檔,書(shū)寫(xiě)格式見(jiàn)模板)和程序源代碼。所有文件應(yīng)使用WinRAR打包為一個(gè)壓縮文件。4、時(shí)間安排:程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第3頁(yè)。短學(xué)期第一周內(nèi),將題目和小組成員信息發(fā)到老師郵箱;短學(xué)期結(jié)束之前,將報(bào)告和源程序代碼打包上傳到作業(yè)管理指定的文件夾。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第3頁(yè)。二、題目與考核1、經(jīng)濟(jì)類(lèi)題目題目1:保險(xiǎn)公司營(yíng)銷(xiāo)員信息管理系統(tǒng)程序設(shè)計(jì)隨著科技的發(fā)展,越來(lái)越多的企業(yè)也發(fā)展起來(lái),公司的員工也越來(lái)越多,伴隨而來(lái)的是企業(yè)因員工量大而信息管理更加繁重的問(wèn)題。開(kāi)發(fā)保險(xiǎn)公司營(yíng)銷(xiāo)員信息管理系統(tǒng),使得企業(yè)對(duì)員工的信息管理問(wèn)題得到了改善。保險(xiǎn)公司營(yíng)銷(xiāo)員信息管理程序,使實(shí)現(xiàn)企業(yè)對(duì)員工信息的添加、查找、修改和刪除等功能,方便了企業(yè)的管理,滿足了企業(yè)的需求。依據(jù)課程設(shè)計(jì)任務(wù)書(shū)要求,本系統(tǒng)完成以下功能和性能。(1)對(duì)營(yíng)銷(xiāo)員信息進(jìn)行輸入并存儲(chǔ)檔案(2)對(duì)營(yíng)銷(xiāo)員信息檔案進(jìn)行輸出(3)對(duì)營(yíng)銷(xiāo)員信息進(jìn)行添加(4)對(duì)營(yíng)銷(xiāo)員信息進(jìn)行查找(5)對(duì)營(yíng)銷(xiāo)員信息進(jìn)行修改(6)對(duì)營(yíng)銷(xiāo)員信息進(jìn)行刪除題目2:銀行ATM存取款系統(tǒng)程序設(shè)計(jì)銀行ATM存取款系統(tǒng)業(yè)務(wù)描述如下:銀行ATM存取款系統(tǒng)能為用戶提供存款、取款、查詢、轉(zhuǎn)賬和修改密碼的功能。用戶通過(guò)開(kāi)戶業(yè)務(wù)在本系統(tǒng)開(kāi)立銀行賬戶,之后可以通過(guò)該銀行賬戶登錄ATM系統(tǒng),在系統(tǒng)中實(shí)現(xiàn)存款、取款、查詢賬戶信息、修改密碼的操作。本系統(tǒng)各個(gè)業(yè)務(wù)有如下注意點(diǎn):程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第4頁(yè)。(1)登錄系統(tǒng)程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第4頁(yè)。用戶登錄之前,必須在登錄界面輸入其銀行賬戶,通過(guò)其正確輸入的銀行賬戶登錄系統(tǒng)。(2)開(kāi)戶業(yè)務(wù)要使用本系統(tǒng)必須首先執(zhí)行開(kāi)戶業(yè)務(wù)開(kāi)立新的銀行賬戶,并且將此新開(kāi)的銀行存儲(chǔ)于文件當(dāng)中。同時(shí),系統(tǒng)以身份證號(hào)碼作為開(kāi)戶的充分條件,即一個(gè)身份證號(hào)碼只能開(kāi)立一次銀行賬戶。(3)存款業(yè)務(wù)客戶登陸系統(tǒng)后,選擇存款業(yè)務(wù),即可以將輸入的存款金額存入相應(yīng)的賬戶。(4)取款業(yè)務(wù)客戶登陸系統(tǒng)后,選擇取款業(yè)務(wù),即可以將輸入的取款金額從相應(yīng)的銀行賬戶取出,但其取款金額必須大于目前的賬戶余額。(5)查詢業(yè)務(wù)客戶登陸系統(tǒng)后,可以選擇查詢業(yè)務(wù),查詢賬戶余額。(6)轉(zhuǎn)賬業(yè)務(wù)客戶登陸系統(tǒng)后,可以選擇轉(zhuǎn)賬業(yè)務(wù)進(jìn)行轉(zhuǎn)賬。注意的是轉(zhuǎn)賬的目的賬戶必須是本系統(tǒng)已經(jīng)存在的銀行賬戶。(7)修改密碼客戶登陸系統(tǒng)后,可以選擇修改密碼,進(jìn)行密碼修改。題目3:個(gè)人股票管理系統(tǒng)程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第5頁(yè)。該系統(tǒng)要求建立一個(gè)時(shí)間段內(nèi)某股民的投資情況管理系統(tǒng),并具有排序、查找、計(jì)算、顯示等功能。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第5頁(yè)。功能要求:(1)股票賬戶信息應(yīng)包括:股票代碼,股票名稱(chēng),持倉(cāng)數(shù)目,當(dāng)前價(jià),漲跌幅,浮動(dòng)盈虧,賬戶總值,剩余資金等(2)需要實(shí)現(xiàn)的功能①建立5支給定股票的信息結(jié)構(gòu)數(shù)組,包括股票代碼,股票名稱(chēng),當(dāng)前價(jià),漲跌幅等。并在統(tǒng)計(jì)的時(shí)間段以當(dāng)天的收盤(pán)價(jià)作為每只股票的當(dāng)前價(jià)進(jìn)行信息更新和顯示
②實(shí)現(xiàn)用戶的投資過(guò)程,記錄買(mǎi)賣(mài)過(guò)程(通過(guò)持倉(cāng)數(shù)目的變化顯示)
③每天更新和顯示用戶的賬戶信息
④計(jì)算并顯示給定時(shí)間段內(nèi)的盈虧
⑤按盈虧大小進(jìn)行排序
⑥按股票代碼查找該股票的價(jià)格變化
⑦將該時(shí)間段內(nèi)每天的賬戶信息內(nèi)容存為文件。
提示:輸入信息符合邏輯如股票買(mǎi)入數(shù)目必須為100的整數(shù)倍,剩余資金不能為負(fù)數(shù)、不可能有非數(shù)字的字符等。題目4:個(gè)人財(cái)務(wù)管理系統(tǒng)程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第6頁(yè)。隨著信息技術(shù)的發(fā)展,我們每個(gè)人的生活已經(jīng)離不開(kāi)計(jì)算機(jī)的幫助,為了使我們的生活更加方便和快捷,越來(lái)越多的個(gè)人應(yīng)用軟件成為人們的重要助手。實(shí)際生活總經(jīng)常要對(duì)個(gè)人的各項(xiàng)財(cái)務(wù)收支進(jìn)行管理,開(kāi)發(fā)該系統(tǒng)的目的是利用計(jì)算機(jī)對(duì)各項(xiàng)財(cái)務(wù)進(jìn)行電子化的管理,使我們的理財(cái)更加方便和理性化,提升我們的生活質(zhì)量與品位。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第6頁(yè)。對(duì)于個(gè)人財(cái)務(wù)管理系統(tǒng),我們要求滿足用戶對(duì)個(gè)人財(cái)務(wù)的隱私性管理,提供用戶對(duì)現(xiàn)金的收支進(jìn)行的操作功能,使得當(dāng)用戶的記錄需要修改時(shí),可以方便的添加、修改和刪除。功能要求:(1)打開(kāi):顯示文件中的所有記錄,提供分頁(yè)顯示:(2)保存信息;(3)更新:可插入、刪除、修改各消費(fèi)記錄;(4)查找:按時(shí)間、類(lèi)別、金額;(5)排序:按時(shí)間、類(lèi)別、金額;(6)可分類(lèi)統(tǒng)計(jì)。題目5:銀行集成賬戶管理信息系統(tǒng)為適應(yīng)我國(guó)經(jīng)濟(jì)金融改革的不斷深化和市場(chǎng)經(jīng)濟(jì)的需求,深入貫徹《工會(huì)會(huì)計(jì)制度》和《中國(guó)建設(shè)銀行工會(huì)經(jīng)費(fèi)管理辦法》,嚴(yán)格管理分行工會(huì)財(cái)務(wù),分行上收了個(gè)支行的個(gè)人工會(huì)經(jīng)費(fèi)賬戶,實(shí)行集中核算、分戶管理,開(kāi)發(fā)一套工會(huì)經(jīng)費(fèi)賬戶管理及核算系統(tǒng),為分行工會(huì)賬戶下的各支行子賬戶提供對(duì)賬單查詢打印功能以及利息計(jì)算功能等。銀行集成賬戶管理系統(tǒng)及時(shí)該系統(tǒng)的主要支撐系統(tǒng)。系統(tǒng)實(shí)現(xiàn)的主要參數(shù)功能和業(yè)務(wù)功能:參數(shù)功能模塊:主賬戶維護(hù)和子賬戶維護(hù)功能(其中主賬戶維護(hù)包括主賬戶信息的錄入、查詢、修改、刪除,子賬戶參數(shù)維護(hù)包括子賬戶信息的錄入、查詢、修改和刪除);程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第7頁(yè)。業(yè)務(wù)功能模塊:子賬戶收款、子賬戶付款、主賬戶對(duì)賬、補(bǔ)錄收付款、子賬戶結(jié)息處理、利息清單打印、查詢打印子賬戶對(duì)賬單。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第7頁(yè)。設(shè)計(jì)銀行集成賬戶管理信息系統(tǒng),要求模塊劃分簡(jiǎn)介清晰,設(shè)計(jì)各階段分工明確。2、管理類(lèi)題目題目1:生產(chǎn)訂單管理系統(tǒng)企業(yè)的訂單管理是涉及企業(yè)生產(chǎn)、企業(yè)資金流和企業(yè)的經(jīng)營(yíng)風(fēng)險(xiǎn)的關(guān)鍵環(huán)節(jié)。訂單管理是企業(yè)管理中的源頭管理。訂單管理至關(guān)重要,一個(gè)好的訂單管理系統(tǒng)可以使企業(yè)的管理邁向一個(gè)新的臺(tái)階。訂單管理系統(tǒng)是指接受客戶訂單信息,以及倉(cāng)儲(chǔ)管理系統(tǒng)發(fā)來(lái)的庫(kù)存信息,然后按客戶和緊要程度給訂單歸類(lèi),對(duì)不同倉(cāng)儲(chǔ)地點(diǎn)的庫(kù)存進(jìn)行配置,并確定交付日期的這樣一個(gè)系統(tǒng)。本題要求設(shè)計(jì)出一個(gè)訂單管理系統(tǒng),該系統(tǒng)能夠?qū)崿F(xiàn)訂單的錄入、訂單的瀏覽、訂單的處理、訂單的統(tǒng)計(jì)等功能。要求用函數(shù)實(shí)現(xiàn)各個(gè)子功能
用戶界面輸入:程序正常運(yùn)行后,屏幕上顯示一個(gè)文字菜單(根據(jù)序號(hào)選定相應(yīng)的操作項(xiàng)目),當(dāng)用戶選定操作項(xiàng)目所對(duì)應(yīng)的序號(hào)時(shí),根據(jù)應(yīng)用程序的提示信息,從鍵盤(pán)上輸入相應(yīng)的數(shù)據(jù)。
輸出:1)應(yīng)用程序正常運(yùn)行后,要在屏幕上顯示一個(gè)文字菜單
2)要求用戶輸入數(shù)據(jù)時(shí),要給出清晰、明確的提示信息,包括輸入的數(shù)據(jù)內(nèi)容、格式及結(jié)束方式等。題目2:物流配送管理系統(tǒng)設(shè)計(jì)程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第8頁(yè)。隨著社會(huì)發(fā)展的日新月異,商業(yè)往來(lái)日漸廣泛,物資多樣化,以及計(jì)算機(jī)的普及,對(duì)于企業(yè)物流配送管理要求逐漸變大。物流配送是銷(xiāo)售公司企業(yè)的主要后備力量的機(jī)構(gòu),勢(shì)必要在物資方面加以嚴(yán)格有序的管理,對(duì)各種資源進(jìn)行信息化管理。這樣企業(yè)在可以放心的生產(chǎn)和出售產(chǎn)品了。經(jīng)濟(jì)效益有大幅度提高,本系統(tǒng)就是針對(duì)企業(yè)的迫切需要而設(shè)計(jì)的。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第8頁(yè)。1、本題要求設(shè)計(jì)一個(gè)簡(jiǎn)單的物流配送管理系統(tǒng),實(shí)現(xiàn)物流配送管理最基本的功能。每個(gè)物流配送基本信息:物品名稱(chēng)、物品編號(hào)、物品出廠地、物品配送地、配送方式、配送個(gè)數(shù)、配送金額、配送日期(年、月、日)等。
2、功能要求:
①添加:即添加新增的物流配送基本信息。
②顯示:即在屏幕上顯示每個(gè)物流配送基本信息。
③存儲(chǔ):即將每個(gè)物流配送基本信息保存在一個(gè)文件中。
④查詢:按物品名稱(chēng)或物品編號(hào)查詢每個(gè)物流配送基本信息。
⑤更改:可更改每個(gè)物流配送基本信息。
⑥刪除:可刪除每個(gè)物流配送基本信題目3:人事管理系統(tǒng)在企業(yè)中,人事管理工作是非常重要的一項(xiàng)工作,它負(fù)責(zé)整個(gè)企業(yè)的日常人事安排,人員的人事管理等。高效的人事管理可以提高企業(yè)的市場(chǎng)競(jìng)爭(zhēng)力,使企業(yè)具有更強(qiáng)的凝聚力和活力。(1)系統(tǒng)要求:程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第9頁(yè)。人事管理系統(tǒng)的主要任務(wù)是對(duì)人事檔案進(jìn)行整理,使得能方便快捷地對(duì)人事檔案進(jìn)行查詢、統(tǒng)計(jì)、更新,并且能按一定要求輸出報(bào)表。通過(guò)該系統(tǒng),使企業(yè)的人事管理工作系統(tǒng)化、規(guī)范化、自動(dòng)化,從而提高企業(yè)人事管理的效率。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第9頁(yè)。(2)系統(tǒng)模塊:①信息的錄入:包括職工的基本信息(工號(hào)、姓名、性別、職務(wù)編號(hào)、出生日期、地址等)、職工所屬部門(mén)信息(部門(mén)編號(hào)、職務(wù)編號(hào)、備注等)、職工工資信息(職務(wù)編號(hào)、職務(wù)名稱(chēng)、職務(wù)工資)②信息的修改:當(dāng)職工信息發(fā)生變化時(shí),便于對(duì)信息進(jìn)行修改。③信息的插入:該模塊主要功能是輸入新職工的信息。④信息的刪除:該模塊的主要功能時(shí)刪除職工信息。⑤信息的查詢:該模塊提供查詢符合某一條件的人事檔案的界面,要求包括兩種查詢方式,一種是按姓名查找,另一種是按職工號(hào)查找。題目4:超市庫(kù)存管理系統(tǒng)隨著現(xiàn)代生活質(zhì)量的提高,超市這種便利的服務(wù)開(kāi)始走進(jìn)我們的生活,同時(shí)隨著超市涌入我們的生活,如何更便利的對(duì)超市進(jìn)行系統(tǒng)和有序的操作,成為了我們需要考慮的問(wèn)題,本課題要求運(yùn)用C語(yǔ)言程序設(shè)計(jì)一個(gè)超市管理系統(tǒng)。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第10頁(yè)。需求分析:該超市管理系統(tǒng)的的功能主要有新購(gòu)物品入庫(kù)、物品信息刪除、物品信息修改、物品信息查詢、物品信息瀏覽功能。不僅如此,還要求能夠?qū)ι唐返膬r(jià)格進(jìn)行統(tǒng)計(jì),對(duì)商品的進(jìn)貨價(jià)格、出貨價(jià)格、以及凈利潤(rùn)進(jìn)行統(tǒng)計(jì)。要求在相應(yīng)的硬盤(pán)上面進(jìn)行存盤(pán)以防止部分?jǐn)?shù)據(jù)的丟失。為了更加人性化使用此管理系統(tǒng),還在MENU選項(xiàng)總添加了系統(tǒng)顏色設(shè)置功能,使用戶可以根據(jù)自己的喜好修改操作界面。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第10頁(yè)。題目5:庫(kù)存管理系統(tǒng)的設(shè)計(jì)在商場(chǎng)中,各種商品的庫(kù)存量在每天的銷(xiāo)售和進(jìn)貨過(guò)程中會(huì)發(fā)生不斷的變化,而由于商場(chǎng)是零售經(jīng)營(yíng),所以每天涉及庫(kù)存的維護(hù)是一個(gè)比較麻煩的問(wèn)題,另一方面,受市場(chǎng)和物價(jià)的影響,商品的價(jià)格也可能發(fā)生變化,部分商品也會(huì)由于科技的發(fā)展,或消費(fèi)者價(jià)值取向,審美觀等方面的影響,會(huì)被淘汰掉,這個(gè)過(guò)程中涉及商品的變化和商品價(jià)格的變化,沒(méi)有一個(gè)好的庫(kù)存管理方案,將會(huì)是一場(chǎng)災(zāi)難,所以庫(kù)存管理系統(tǒng)是必須的。本題就是運(yùn)用C語(yǔ)言設(shè)計(jì)這樣一個(gè)庫(kù)存管理系統(tǒng),從而實(shí)現(xiàn)商品的信息維護(hù),其中包括商品的錄入、商品的淘汰刪除、商品信息的更新(價(jià)格和數(shù)量)、商品信息的打印等。小組考核小組組成:自由組成,成員不能超過(guò)3人,分工明確。考核:自評(píng):根據(jù)小組成員各自的任務(wù)量、難易程度確定各自的分?jǐn)?shù)(按百分制);程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第11頁(yè)。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第11頁(yè)。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第12頁(yè)。教師評(píng)分:依據(jù)作業(yè)總體完成情況、小組成員各自的任務(wù)及其完成情況、自評(píng)分?jǐn)?shù)確定最終分?jǐn)?shù)。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第12頁(yè)。三、模板與案例1、模板報(bào)告格式由封面、目錄及報(bào)告正文組成。封面:題目名稱(chēng),小組成員學(xué)號(hào)、姓名及專(zhuān)業(yè),完成時(shí)間正文:參照下面案例的樣式2、案例家庭財(cái)務(wù)管理系統(tǒng)一案例描述1.總體描述家庭財(cái)務(wù)管理系統(tǒng)主要是對(duì)家庭成員的收入,支出,進(jìn)行添加,刪除,查詢等操作,并能統(tǒng)計(jì)總收入和總支出。該軟件給家庭成員提供了一個(gè)管理家庭財(cái)務(wù)的平臺(tái)。2.模塊描述1)菜單設(shè)計(jì):本系統(tǒng)提供簡(jiǎn)單易操作的界面。有提示,幫助用戶根據(jù)需要對(duì)家庭財(cái)務(wù)管理系統(tǒng)進(jìn)行操作。2)添加模塊:根據(jù)實(shí)際的收入或支出,添加相應(yīng)的記錄,條數(shù)不限。3)查詢模塊:可以選擇不同關(guān)鍵字輸入,查找該條記錄。4)刪除模塊:若某條記錄錯(cuò)誤或者不需要?jiǎng)t可以刪除。5)顯示模塊:按照添加的先后順序依次把記錄顯示在屏幕上,并顯示總收入和總支出以及余額。6)退出模塊:退出財(cái)務(wù)管理系統(tǒng)并保存文件。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第13頁(yè)。二界面設(shè)計(jì)程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第13頁(yè)。界面有相應(yīng)的選擇,根據(jù)自己的需要對(duì)該管理系統(tǒng)進(jìn)行添加,查找,刪除,顯示功能操作。本軟件界面友好,不難操作,用戶可根據(jù)自己的需要按提示進(jìn)行。三模塊化設(shè)計(jì)方案1.系統(tǒng)主要函數(shù)及功能DataInit函數(shù):功能為數(shù)據(jù)初始化將數(shù)據(jù)從硬盤(pán)傳到內(nèi)存。add函數(shù):功能為添加收入或支出的記錄search函數(shù):功能為查找聯(lián)系人輸入關(guān)鍵字,從文件中搜索相應(yīng)的記錄并顯示出來(lái)。delete_rec函數(shù):功能為刪除記錄若某條記錄錯(cuò)誤或者不需要?jiǎng)t可以刪除。5)show函數(shù):功能為顯示記錄將添加的記錄顯示在屏幕上。6)quit函數(shù):功能為保存信息退出系統(tǒng)2.主函數(shù)調(diào)用各功能函數(shù)流程程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第14頁(yè)。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第14頁(yè)。開(kāi)始開(kāi)始打開(kāi)文件,載入信息用戶菜單界面1添加記錄2查詢記錄3刪除記錄4顯示記錄0退出保存結(jié)束四.?dāng)?shù)據(jù)結(jié)構(gòu)描述structF_Data{ intyear;//年 intmonth;//月 intdata;//日期 floatamout;//金額charname[20];//姓名程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第15頁(yè)。inttype;//收入或支出類(lèi)型程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第15頁(yè)。 charcomment[100];//備注 structF_Data*next;//定義一個(gè)指針};該數(shù)據(jù)結(jié)構(gòu)為鏈表,是一種動(dòng)態(tài)進(jìn)行存儲(chǔ)分配的結(jié)構(gòu)。鏈表的每一個(gè)一個(gè)節(jié)點(diǎn)中包含了一個(gè)指針變量,用它存放下一個(gè)結(jié)點(diǎn)的地址,環(huán)環(huán)相扣,中間決不能斷開(kāi),該指針指向一個(gè)structF_Data類(lèi)型的數(shù)據(jù)。鏈表中各元素在內(nèi)存中可以不是連續(xù)存放的。五算法設(shè)計(jì)添加開(kāi)始開(kāi)始輸入年月月份>0&&月份<13?是輸入日,金額,姓名,類(lèi)型類(lèi)型結(jié)束鏈表中添加該記錄在主菜單選擇添加選項(xiàng)后,系統(tǒng)會(huì)依次讓用戶輸入年月日,并且限定月份輸入時(shí)要在1至12內(nèi),如果符合要求則繼續(xù)執(zhí)行,輸完整條記錄。動(dòng)態(tài)鏈表會(huì)根據(jù)用戶的使用情況動(dòng)態(tài)調(diào)整內(nèi)存大小。插入一個(gè)結(jié)點(diǎn)到已有鏈表后,head指向插入的結(jié)點(diǎn),該結(jié)點(diǎn)指向head原來(lái)所指的結(jié)點(diǎn)。每添加一條記錄后接點(diǎn)隨即加一。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第16頁(yè)。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第16頁(yè)。查詢?cè)谥鞑藛芜x擇查詢選項(xiàng)后,選擇查詢方式,1.按姓名查2.按類(lèi)型查。然后按提示輸入相應(yīng)的信息姓名(或備注),系統(tǒng)會(huì)根據(jù)信息用一個(gè)指針從這個(gè)鏈表的第一個(gè)結(jié)點(diǎn)依次往后開(kāi)始查詢,若某個(gè)結(jié)點(diǎn)符合則輸出該記錄的信息,若指向NULL即最后一個(gè)結(jié)點(diǎn)也查詢完畢依然沒(méi)找到,則返回主菜單。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第17頁(yè)。刪除程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第17頁(yè)。輸入需要?jiǎng)h除的姓名和金額,系統(tǒng)會(huì)根據(jù)信息用一個(gè)q指針從這個(gè)鏈表的第一個(gè)結(jié)點(diǎn)依次往后開(kāi)始查詢,并將已查詢過(guò)的結(jié)點(diǎn)賦給另一個(gè)p指針。若某個(gè)結(jié)點(diǎn)符合則顯示該記錄的信息,并讓用戶再次確認(rèn)是否刪除。若指向NULL即最后一個(gè)結(jié)點(diǎn)也查詢完畢依然沒(méi)找到,則則返回主菜單。如果確定刪除該結(jié)點(diǎn),則q所指的結(jié)點(diǎn)的前一個(gè)結(jié)點(diǎn)(即p所指的結(jié)點(diǎn))指向該接點(diǎn)所指向的下一個(gè)結(jié)點(diǎn),也就是將q所指的結(jié)點(diǎn)從原來(lái)的鏈表中分離出來(lái)。每刪除一條記錄后接點(diǎn)隨即減一。六.程序運(yùn)行結(jié)果程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第18頁(yè)。添加聯(lián)系人程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第18頁(yè)。添加記錄時(shí)限定月份在1~12月之間,否則無(wú)法添加,每添加一條記錄后就返回主菜單,鏈表中插入了該結(jié)點(diǎn)。2查詢聯(lián)系人查詢記錄時(shí),可以選擇類(lèi)型或者姓名進(jìn)行查找。若選擇按姓名查找,則在輸入名字后,系統(tǒng)會(huì)根據(jù)添加的先后順序,在屏幕上依次顯示出該聯(lián)系人的全部記錄。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第19頁(yè)。3刪除聯(lián)系人程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第19頁(yè)。選擇刪除選項(xiàng)后,界面會(huì)讓使用者輸入要?jiǎng)h除者的姓名及金額,并根據(jù)輸入的信息顯示該條記錄,并且為了防止意外刪除而有提示是否刪除,經(jīng)使用者再三確認(rèn)后便刪除該記錄。4顯示聯(lián)系人在菜單中選擇顯示選項(xiàng)后,系統(tǒng)會(huì)把所有的記錄按照先后順序依次逐條顯示在界面上,并且還計(jì)算出了一共的收入,一共的支出及當(dāng)前余額。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第20頁(yè)。程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第20頁(yè)。5退出在菜單中選中該選項(xiàng)后,系統(tǒng)會(huì)把所有的資料都保存到文件中,然后關(guān)閉該系統(tǒng)。七.總結(jié)1.分工情況某某同學(xué):設(shè)計(jì)程序的整個(gè)框架,編寫(xiě)add函數(shù),delete_rec函數(shù),并對(duì)初步完成的整個(gè)程序做調(diào)試修改。制作報(bào)告的案例描述,模塊設(shè)計(jì)方案,數(shù)據(jù)結(jié)構(gòu)描述,總結(jié)。某某同學(xué):編寫(xiě)search函數(shù),quit函數(shù),制作報(bào)告的封面,流程圖,界面設(shè)計(jì)。某某同學(xué):編寫(xiě)DataInit函數(shù),show函數(shù),算法設(shè)計(jì),程序運(yùn)行結(jié)果。2.心得體會(huì)本次對(duì)家庭財(cái)務(wù)管理系統(tǒng)的編寫(xiě),我遇到了許多困難。主要原因不怎么擅長(zhǎng)使用“指針”。在添加模塊中,由于沒(méi)有很好的理解指針中插入的專(zhuān)用句子,所以脫離書(shū)本的時(shí)候根本不知怎么開(kāi)始,自己想了很久也沒(méi)想出來(lái),后面翻了書(shū),把相關(guān)的句子抄上去后死記硬背了下來(lái)。p->next=head;head=p;在寫(xiě)刪除模塊是也遇到了類(lèi)似的問(wèn)題。看了書(shū)上的一個(gè)例題,里面有兩個(gè)指針,可是我的代碼中只有一個(gè),怎么辦呢?模仿了書(shū)上的寫(xiě)法,第一次以失敗告終,經(jīng)過(guò)很多種修改后總結(jié)出失敗的原因是該指針定義錯(cuò)誤,針對(duì)該錯(cuò)誤,經(jīng)過(guò)很多的嘗試終成功了。在顯示函數(shù)中,自我感覺(jué)沒(méi)有錯(cuò)誤了,可是每次在“一共收入,一共支出,當(dāng)前余額”后面都顯示了一長(zhǎng)串?dāng)?shù)字,在快放棄時(shí)終于發(fā)現(xiàn)自己犯了一個(gè)很可笑的錯(cuò),printf語(yǔ)言中居然用了取地址符,真是苦笑不得。在保存函數(shù)中葉犯了一些常見(jiàn)的錯(cuò),在寫(xiě)入文件中居然用了fscanf語(yǔ)句,因此,一開(kāi)始打開(kāi)該系統(tǒng)時(shí)總是什么記錄也沒(méi)有,后來(lái)老師給我指出了這個(gè)錯(cuò)誤,在修改之后還是不能顯示之前的記錄,請(qǐng)教其他同學(xué)后才發(fā)現(xiàn)主函數(shù)中沒(méi)有調(diào)用數(shù)據(jù)導(dǎo)入函數(shù),在修改之后,一個(gè)系統(tǒng)就完成了。我們也有了一些感慨:我們平時(shí)的一些基礎(chǔ)學(xué)習(xí)真的很重要.總而言之,這次的報(bào)告讓我們獲益匪淺。3.自評(píng)得分某某同學(xué):98某某同學(xué):92某某同學(xué):89附頁(yè)(源代碼附加注釋?zhuān)┮韵率翘砑幽K代碼 voidadd(){ system("cls"); /*清屏*/ structF_Data*p=NULL;/*定義pNode為structF_Data類(lèi)型指針*/ p=(structF_Data*)malloc(sizeof(structF_Data));/*運(yùn)行時(shí)動(dòng)態(tài)調(diào)整所占內(nèi)存的大小*/printf("請(qǐng)輸入年份:");程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第21頁(yè)。 scanf("%d",&p->year);程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第21頁(yè)。printf("請(qǐng)輸入月份:"); scanf("%d",&p->month);if((p->month>0)&&(p->month<13))/*限定月份為1~12*/{printf("請(qǐng)輸入日期:"); scanf("%d",&p->data);printf("請(qǐng)輸入金額:"); scanf("%f",&p->amout); printf("請(qǐng)輸入姓名:");scanf("%s",p->name); printf("收入按1,支出按0:"); scanf("%d",&p->type); printf("請(qǐng)輸入類(lèi)型:");scanf("%s",p->comment); p->next=head;/*插入一個(gè)結(jié)點(diǎn)*/ head=p; Recordcount++;/*結(jié)點(diǎn)數(shù)加一*/}system("PAUSE");/*停頓*/}在菜單界面選擇“添加”選項(xiàng),界面會(huì)依次顯示年份,月份,且限定月份為1~12,再顯示日期,金額,姓名,type,類(lèi)型逐個(gè)填寫(xiě),然后返回到菜單界面。以下是查詢模塊代碼voidsearch(){ system("cls");/*清屏*/charname[20];inttype;intchoice;structF_Data*p=NULL;/*定義pNode為structF_Data類(lèi)型指針*/printf("1按姓名查找\n2按類(lèi)型查找\n"); printf("請(qǐng)輸入你的選擇:"); scanf("%d",&choice); if(choice==1) { printf("請(qǐng)輸入姓名:"); scanf("%s",name); for(p=head;p!=NULL;p=p->next)/*從鏈表的第一個(gè)結(jié)點(diǎn)到尾結(jié)點(diǎn)*/程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第22頁(yè)。 if(strcmp(p->name,name)==0)/*如果輸入的name和結(jié)點(diǎn)中的name一樣*/程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第22頁(yè)。 { printf("%d\t",p->year); printf("%d\t",p->month); printf("%d\t",p->data); printf("%.2f\t",p->amout); printf("%s\t",p->name); printf("%d\t",p->type); printf("%s\n",p->comment); } } if(choice==2) { printf("請(qǐng)輸入類(lèi)型:1收入0支出\n"); scanf("%d",&type); for(p=head;p!=NULL;p=p->next) if(p->type==type)/*如果輸入的type和結(jié)點(diǎn)中的type一樣*/ { printf("%d\t",p->year); printf("%d\t",p->month); printf("%d\t",p->data); printf("%.2f\t",p->amout); printf("%s\t",p->name); printf("%d\t",p->type); printf("%s\n",p->comment); } } system("PAUSE");/*停頓*/}在菜單界面選擇“查詢”選項(xiàng),界面會(huì)讓你選擇查找的方式:1按姓名查找2按類(lèi)型查找,用戶可以根據(jù)自己的需要進(jìn)行選擇,按1就輸入聯(lián)系人的姓名,按2就輸入類(lèi)型,系統(tǒng)會(huì)進(jìn)行查詢,如果有就顯示該條記錄。以下是刪除模塊代碼 voiddelete_rec(){system("cls");/*清屏*/charname[20];floatamout;intchoice;structF_Data*p=NULL,*q=NULL;/*定義p和q都為structF_Data類(lèi)型指針*/p=head;/*p指向第一個(gè)結(jié)點(diǎn)*/程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第23頁(yè)。q=head;/*q指向第一個(gè)結(jié)點(diǎn)*/程序設(shè)計(jì)及C語(yǔ)言大作業(yè)全文共26頁(yè),當(dāng)前為第23頁(yè)。printf("請(qǐng)輸入要?jiǎng)h除者的姓名:");scanf("%s",name); printf("請(qǐng)輸入金額:");scanf("%f",&amout);for(;q!=NULL;q=q->next)/*q指針從鏈表的第一個(gè)結(jié)點(diǎn)到尾結(jié)點(diǎn)*/{if((head->amout==amout)&&(strcmp(head->name,name)==0))/*如果頭結(jié)點(diǎn)符合要求*/{ printf("%d\t",q->year); printf("%d\t",q->month); printf("%d\t",q->data); printf("%.2f\t",q->amout); printf("%s\t",q->name); printf("%d\t",q->type); printf("%s\n",q->comment); printf("確認(rèn)刪除?\n1是\n2否\n"); scanf("%d",&choice); if(choice==1) { head=q->next;/*刪除頭結(jié)點(diǎn)*/Recordcount--;/*結(jié)點(diǎn)數(shù)減一*/ } elsebreak;}else{if((q->amout==amout)&&(strcmp(q->name,name)==0))/*如果結(jié)點(diǎn)符合要求*/{ { printf("%d\t",q->year); printf("%d\t",q->month);
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026湖南長(zhǎng)沙市南雅星沙實(shí)驗(yàn)中學(xué)秋季學(xué)期教師招聘?jìng)淇碱}庫(kù)附答案
- 2026福建海峽企業(yè)管理服務(wù)有限公司聯(lián)通外包項(xiàng)目實(shí)習(xí)生招聘參考題庫(kù)附答案
- 2026福建省面向湖南大學(xué)選調(diào)生選拔工作備考題庫(kù)附答案
- 2026福建龍洲運(yùn)輸集團(tuán)有限公司上杭分公司招聘?jìng)淇碱}庫(kù)附答案
- 2026西藏阿里地區(qū)普蘭縣財(cái)政局招聘財(cái)會(huì)管理專(zhuān)業(yè)人才1人參考題庫(kù)附答案
- 2026重慶涪陵區(qū)人民政府義和街道選聘4人參考題庫(kù)附答案
- 2026陜西能源職業(yè)技術(shù)學(xué)院博士招聘40人參考題庫(kù)附答案
- 2026黑龍江哈爾濱市香坊第二小學(xué)校招聘體育教師1人參考題庫(kù)附答案
- 北京市大興區(qū)瀛海鎮(zhèn)社區(qū)衛(wèi)生服務(wù)中心面向社會(huì)招聘臨時(shí)輔助用工人員考試參考題庫(kù)附答案
- 成都市新都區(qū)毗河中學(xué)校關(guān)于2025年12月面向社會(huì)公開(kāi)招聘校聘教師的備考題庫(kù)附答案
- 胸外科手術(shù)圍手術(shù)期的護(hù)理
- 測(cè)繪公司創(chuàng)新技術(shù)應(yīng)用及成果
- 全球著名空港產(chǎn)業(yè)發(fā)展案例解析
- 科技領(lǐng)域安全風(fēng)險(xiǎn)評(píng)估及保障措施
- 鍋爐水質(zhì)化驗(yàn)記錄表(完整版)
- 鋼筋工勞務(wù)合同
- 《水利工程白蟻燈光誘殺技術(shù)導(dǎo)則》編制說(shuō)明
- 倉(cāng)儲(chǔ)物流行業(yè)普洛斯分析報(bào)告
- DB33T 2188.3-2019 大型賽會(huì)志愿服務(wù)崗位規(guī)范 第3部分:抵離迎送志愿服務(wù)
- 二級(jí)煙草專(zhuān)賣(mài)管理師理論考試題庫(kù)
- DB36T 1342-2020 兒童福利機(jī)構(gòu) 3歲~15歲康教融合服務(wù)規(guī)范
評(píng)論
0/150
提交評(píng)論