C語言課程設計報告

2021-08-01 13:24:46 字數 2508 閱讀 9472

********電氣與資訊工程學院

《c語言程式設計》

課程設計報告

課程設計題目: 酒店房間登記與計費管理

專業自動化

班級t1023-6

姓名師曉義

1、需求分析

1)、問題

根據需求,該系統所應包含的資訊有以下一些:

酒店房間登記與計費管理的基本資訊:

客戶姓名、身份證號、開始入住時間、退房時間、入住房間號、房間**、入住費用。

根據需求,該系統所應實現的功能有以下一些:

各種基本資料的錄入。如:入住客戶的基本資訊錄入。

基於各種資料的查詢。例如:輸入張三姓名,查詢張三的身份證號、開始入住時間、退房時間、入住房間號、房間**、入住費用。

資料匯出:將住宿的資訊匯出到指定檔案儲存。

資料匯入:從指定檔案匯入住宿的客戶資訊。

2)、系統

採用c語言實現,開發環境為vc,可以執行在作業系統windows98及以上皆可。

3、執行要求

能不受限制的錄入入住客戶的資訊

介面友好,操作方便,例如在使用者輸入錯誤的情況下進行提示。

2、總體設計

1)、系統流程設計

根據系統要求,設計如下的系統流程

2)、系統模組設計

根據系統的功能設計,如下模組

主介面模組:完成系統選單的顯示。

功能選擇模組:根據使用者的選擇,完成其相應的功能。

客戶資訊錄入:完成使用者從介面輸入客戶入住資訊,儲存入系統的功能。

客戶資訊顯示:完成系統中顯示現有信心的功能。

入住房間查詢:完成查詢特定房間的功能。

房間費用查詢:完成費用統計的功能。

3)、詳細設計

1、資料結構設計

根據系統要求,系統中需要儲存的資料有通訊錄的資訊,其結構如下:

為了能實現不受限制的增加入住客戶資訊,採用鍊錶的結構儲存客戶的資訊,在增加入住客戶的基本資訊時,建立乙個客戶資訊的節點,將其插入到鍊錶中,示意圖如下。

使用c語言建立的結構體如下:

truct room房間*/

member[10];

struct room member[10初始化陣列

,,,,,

,,,,};

struct date日期*/

;struct customer

;2、介面設計

主介面:

根據系統要求,設計乙個字元介面,顯示系統的選單,為了體現友好性,將在每個選單前顯示該選單項對應的數字

使用者輸入選單項前面的數字,主選單消失,進入該模組的相應介面,進行相應的操作,完成後,回到主介面。

輸入介面:

功能選擇:

選擇1:

選擇2:入住資訊顯示

選擇3:入住資訊查詢。

選擇4:統計住宿費用:根據提示輸入房間號、開始統計時間、結束統計時間。

3、模組實現

主介面實現:呼叫printf()函式,在螢幕上列印需要顯示的字元資訊,需要在顯示之前呼叫system(「cls」)函式將前面的介面清空。

對應的實現函式menu_show();

功能選擇模組實現:

接受從鍵盤輸入的選單選擇,判斷並呼叫相應的功能函式,完成其對應的功能。實現功能選擇。

對應的函式:menu_select();

客戶資訊錄入模組實現:

模組說明:從鍵盤接收輸入的客戶基本資訊,在動態儲存區中建立客戶資訊的節點,遍歷鍊錶,將其插入到客戶資訊鍊錶的最後位置。

模組流程:

對應函式:struct customer *add()//建立鍊錶從檔案讀入資訊模組實現:

模組說明:從鍵盤輸入需要統計的時間段(開始統計時間、結束統計時間),通過函式自動計算在改時間段產生的住宿費用。

模組流程:

對應函式:int cost(struct customer *head,struct room number member); //統計產生的住宿費用

查詢房間的入住情況模組實現:

模組說明:根據提示選擇查詢方式:按房間號查詢,此時輸入房間號,顯示客戶基本資訊;模組流程:

對應函式:void search(struct customer *head) 查詢房間的入住情況

4、課程設計總結

課程設計感想

這次的課設完成的很好,這是之前沒有想到的。

剛剛開始做時,十分無厘頭,根本不知道如何入手,只好到處找以前做好的程式來看,看她們的想法,思路,後來漸漸的理清了頭緒,開始下手做,大體工作完成以後,下了很大功夫在人性化上面,當然也是老師對這方面強調比較多,要求也高,同時它包括了介面的設計,畫面的美觀,提示的語句對錯誤資訊的相容和提示改正,等等。

期間主要遇到了以下的問題1:鍊錶的建立2:各個函式之間的引數的交換傳遞3:長度定義的問題長度定義不正確容易造成越界,出現亂碼。

面對乙個大程式,從中間尋找錯誤實在不是一件容易的事情,要查到是**出現了問題,老師教我用printf的方法,輸出結果,確定是**出現了問題,然後在加以改正。

總的來說,通過這次的課設,讓我學到了很多單純從課本上學不到的技能,更加趨向於實際。

C語言課程設計報告

課程名稱計算機高階語言課程設計 c 教師姓名 本科生姓名 本科生學號 本科生專業機械設計製造及其自動化 所在院系機電學院 類別c.本科生 日期2013.7.11 注 1 無評閱人簽名成績無效 2 必須用鋼筆或原子筆批閱,用鉛筆閱卷無效 3 如有平時成績,必須在上面評分表中標出,並計算入總成績。模擬手...

C語言課程設計報告

1.本頁為設計報告要求頁,製作好報告後輸出時將本頁刪除 2.本模板的各種字型及頁面設定請同學們 3.本設計報告左側裝訂。在虛線處裝訂。4.在課程設計封皮一頁上用已經設定好的宋體四號來填寫各個專案。5.在課程設計評定表一頁上用宋體小四填寫班級 學號 姓名 專案組 專案組長 專案組組員 本人工作簡介。組...

C語言課程設計報告

一 程式主要功能 用單向鍊錶結構實現簡單的學生成績管理功能,具有鍊錶建立 鍊錶輸出 結點有序插入 結點刪除 資料查詢等功能。使用者在主選單介面輸入選項,即按照功能列表0 9輸入任意數字,回車後執行該功能。1 create list 建立有序單向鍊錶 從鍵盤上一次輸入乙個學生的姓名及成績,以姓名為序建...