程式設計基礎實踐報告

2022-03-20 17:32:52 字數 3190 閱讀 1106

課程設計報告

課程名稱: 程式設計基礎實踐

院系: 資訊科學與工程學院

班級: 計科1504班

設計者學號

設計時間: 2015.12

目錄一.摘要3

關鍵字3

二.課程設計目標3

三.課程設計環境4

四.實驗一4

1.實驗要求4

2.實驗分析5

3.流程圖5

3.1主函式流程5

3.2寫入函式的流程6

3.3讀取函式的流程8

4.**實現8

5.設計結果8

五.實驗二10

1.實驗要求10

2.實驗分析10

3.模組分析10

4.流程圖10

4.1主函式流程圖11

4.2新增函式流程圖12

4.3顯示函式流程圖13

4.4刪除函式流程圖14

4.5查詢函式流程圖15

4.6修改函式流程圖16

5.**實現16

6.設計效果17

7.改進方法19

六.心得體會19

七.參考文獻19

一.摘要

這次共包括兩個試驗,實驗一為《正弦函式影象的繪製與資料的儲存與顯示》,實驗二為《個人通訊錄管理系統》,實驗一主要考察演算法的設計於檔案操作,實驗二主要考察對結構體陣列或鍊錶的使用與檔案操作,各有考察的方向。

關鍵字:課程設計,正弦函式影象,檔案操作,通訊錄,陣列

二.課程設計目標

通過課程設計使學生綜合使用所學過的c語言程式設計知識,掌握結構化程式設計的基本思路和方法,在所掌握的基本知識和技能的基礎上,進一步提高自學能力和查詢資料的能力,解決一定程度的複雜的結構化程式設計問題,加深對所學知識的理解與掌握,增強學生利用自己所學知識解決實際問題的能力,為以後的程式開發打下基礎。

課程設計的目的和要求:

1、使學生鞏固和加強《c語言程式設計》課程的理論知識。

2、使學生掌握c語言的基本概念、語法、語義和資料型別的使用特點。

3、使學生掌握c語言程式設計的方法及程式設計技巧,能正確使用c語言編寫程式。

4、進一步理解和運用結構化程式設計的思想和方法;學會利用傳統流程圖或n-s圖表示演算法。

5、使學生掌握除錯程式的基本方法及上機操作方法。

6、掌握書寫程式設計開發文件的能力,使學生學會撰寫課程設計總結報告。課程設計的思想和方法還可以作為學生做畢業**時的參考資料。

7、通過查閱手冊和文獻資料,培養學生獨立分析問題和解決問題的能力。為學生做畢業設計打好基礎。

8、初步掌握開發乙個小型實用系統的基本方法:結合實際應用的要求,使課程設計既覆蓋知識點,又接近工程實際需要。通過激發學習興趣,調動學生主動學習的積極性,並引導他們根據實際程式設計要求,訓練自己實際分析問題的能力及程式設計能力,並養成良好的程式設計習慣。

9、培養學生的創新能力和創新思維。學生可以根據指導書和相關文獻上的參考演算法,自己設計出相應的應用程式。

10、培養學生良好的程式設計風格。在實際程式設計中,為了提高程式設計質量,對空行、空格和注釋均有要求。學生在課程設計書寫**時,應該嚴格按要求處理,以便建立良好的程式設計風格。

三. 課程設計環境

⑴硬體:一般pc機。

⑵軟體:設計語言為visual c++、c free或turbo c2.0。

四.實驗一 《正弦函式影象的繪製與資料的儲存與顯示

1.實驗要求

問題描述

用c語言畫函式

1 畫出的點數為n個,即n個*符號,如下圖所示(可以不畫出座標值,n的值要大於20)

2 要將資料能存貯在檔案裡,並能從檔案裡讀取出來顯示

2.實驗分析

①.對於歡迎介面,使用一系列printf()函式來實現操作,可以做出合適的介面。

②.對於檔案的寫入與寫出,可以考慮使用兩個函式來實現:write_sin(file *fp)和read_sin(file *fp),由於操作物件是檔案,形參設為檔案指標。

③.在write_sin(file *fp)函式中,關鍵是構造正弦函式的影象,可以考慮用二位陣列,不過二位陣列不可能全部用到,空的陣列相當於浪費了記憶體,在這裡我沒有使用陣列,而是採用了asin(x)這個函式,由於控制台採用從左向右輸出,可以看做正弦影象把左邊分成兩個部分,在某一行中,首先打出空格,遇到asin(x)的值時列印"*",接著列印空格,遇到asin(x)值時再列印"*"。

④.在read_sin(file *fp)函式中,關鍵是從檔案中讀取並在控制台列印出來。因此我採用了fgetc()函式,從檔案中逐一讀取字元,直到遇到檔案結束標誌eof,就可以將整個檔案讀取並顯示。

3.流程圖

因為乙個流程圖太龐大,所以我拆分成了幾個子流程。

3.1主函式流程

3.2寫入函式的流程

是否是否 是

否3.3讀取函式的流程

否是4.**實現

詳細**見附件。

5.設計結果

五.實驗二《個人通訊錄管理系統》

1.實驗要求

建立一通訊錄管理系統,通訊錄的每一條資訊包括姓名、單位、固定**、移動手機、分類(如同事、朋友、同學、家人等)、email、qq等。

功能要求:

①輸入功能:可以一次完成若干條資訊的輸入。

②顯示功能:完成全部通訊錄資訊的顯示(一屏最多顯示10條,超過十條應能夠自動分屏顯示)。

③查詢功能:可以按姓名等多種方式查詢通訊資訊。

④增加、刪除、修改功能:完成通訊錄資訊的多種更新。

2.實驗分析

①.對於通訊錄的每一條記錄,大體一致,考慮採用結構體變數,而通訊錄更多的使用其查詢功能,故考慮陣列,因為陣列的查詢速度要優於鍊錶。

②.要實現通訊錄的輸入,查詢,增刪,顯示,可以考慮用幾個子函式來分別實現。

③.涉及到檔案操作,可以採用檔案操作函式,並使用結構化設計方式。由於程式較複雜,將其分解為幾個子模組,在主函式中採用switch 語句,自頂而下,逐一設計。

3.模組分析

4.流程圖

由於模組較多,將幾個功能函式分開設計。

4.1主函式流程圖

4.2新增函式流程圖

4.3顯示函式流程圖

4.4刪除函式流程圖

4.5查詢函式流程圖

4.6修改函式流程圖

5.**實現

原始碼見附件;

6.設計結果

7.改進方法

①.該通訊錄存在不穩定性,同時由於採用陣列結構,分配的總長度有限,可以再次修改為動態陣列結構,呼叫記憶體的分配與釋放函式。

程式設計基礎課程實踐報告

1 題目 要將一張5美元的鈔票,換成等值的1美分 5美分 10美分 25美分和50美分的硬幣,要求每次換成20個硬幣,每種至少乙個。程式設計輸出所有可能的換法。2流程圖 3 程式源 include main c c 1 b b 1 a a 1 程式功能注釋 a,b,c,m,n分別為1美分,5美分 的...

計算機基礎與程式設計實踐報告

黑龍江科技大學建築工程二學歷實踐報告 1 實踐概述 在此次實踐中,我們在老師的帶領下,對土木工程中常用的一些計算機軟體有了新的認識 了解,使我們在計算機操作上了有了更大的進步。2 主要內容 1 cad 1 定義 cad即計算機輔助設計 cad puter aided design 利用計算機及其圖形...

高階語言程式設計實踐報告

題目 公司員工資訊管理系統設計 學號姓名 專業年月日 1 功能要求 1 問題描述 某公司需要儲存員工的編號 姓名 性別 所在部門,級別,並進行工資的計算。其中,員工分為經理 技術人員 銷售人員和銷售經理。2 功能要求 1 新增功能 程式能夠任意新增上述四類人員的記錄,可提供選擇介面供使用者選擇所要新...