版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、吉林工程技術師范學院c語言程序課程設計報告書設計題目: 魔方陣程序設計 專 業(yè): 計算機科學與技術 班級: 1054 學生姓名: 學號: 21 指導教師:xx 2011年1月信息工程學院摘 要我的實驗題目是對c語言程序設計魔方陣的編寫,主要的功能是實現(xiàn)每一行,每一列以及對角線的相加結果相同,而且每一個數(shù)字均不相等。本次實驗能夠充分的考核我們對c語言的學習程度以及動手操作能力,對我們提高c語言的能力有極大的幫助,所以這次實驗也是十分有必要的。我的設計內(nèi)容就是利用循環(huán)語句,以及判斷條件等函數(shù)的合理使用,通過不斷的運行,調(diào)試,輸出,對本程序進行合理的解決,對魔方陣進一步的了解掌握。關鍵字:c語言 魔
2、方陣 程序設計i目 錄摘 要第1章 概述1第2章 系統(tǒng)分析22.1 技術分析22.2 功能分析2第3章 總體設計與詳細設計33.1 系統(tǒng)總體設計33.2 詳細設計4第4章 編碼實現(xiàn)64.1 數(shù)據(jù)輸入部分代碼設計64.2 運算部分代碼設計64.3 輸出部分代碼設計7第5章 系統(tǒng)調(diào)試95.1 程序運行結果95.2 調(diào)試過程中的問題與對策10第6章 設計總結10參考資料12致謝12附錄:1 源代碼132 附圖1414信息工程學院 c語言課程設計報告第1章 概述本次實驗報告十分有意義,對鞏固c語言的學習有很大的幫助。作用:我的實驗課題是魔方陣(魔方陣是一個奇數(shù)行列式方陣),主要是實現(xiàn)一行,一列,對角線
3、的和都相等。意義、幫助:1、能夠熟練掌握if、ifelse、ifelse if語句格式及使用方法,掌握if語句中的嵌套關系和匹配原則,利用if語句實現(xiàn)分支選擇結構。2、能夠熟練掌握while語句和for語句格式及使用方法,掌握循環(huán)控制語句的循環(huán)過程以及循環(huán)結構的嵌套,利用循環(huán)語句實現(xiàn)循環(huán)結構。3、能夠掌握簡單、常用的算法,并在編程過程中體驗各種算法的編程技巧。進一步學習調(diào)試程序,掌握語法錯誤和邏輯錯誤的檢查方法。第2章 系統(tǒng)分析2.1 技術分析我設計的程序從魔方陣的判斷語句入手,利用循環(huán)語句進行判斷,利用scanf輸入函數(shù)對數(shù)據(jù)進行輸入,然后對輸入的數(shù)據(jù)進行判斷,在利用if,else語句進行判
4、斷,然后利用循環(huán)語句進行循環(huán),建立魔方,判斷數(shù)據(jù)的位置,最后進行輸出。軟件系統(tǒng)采用turbo c2.0作為題目的設計平臺,在這個平臺上進行程序的調(diào)試。2.2 功能分析我設計的程序包括的功能有很多,主要是數(shù)據(jù)的輸入,判斷,建立魔方,判斷條件,輸入魔方等功能。本程序能夠?qū)語言的知識得到合理的運用,對語句的判斷是一個極大的考核,也能鍛煉我的思維能力,邏輯能力,動手能力等。通過本次實驗;對于提高c語言函數(shù),語句以及程序的編寫都有極大的幫助。第3章 總體設計與詳細設計3.1 系統(tǒng)總體設計就是使用模塊化思維方法分析課題,畫出模塊結構圖??刹扇∽皂斚蛳隆⒅饘臃纸獾姆椒?,將課題分成有若干個模塊,然后對各模塊
5、重點和難點內(nèi)容進行分析,最終各個擊破。1設計流程圖系統(tǒng)總體結構圖如3-1所示。以輸入“3”輸出為例:定義a1616,i,j,k,p,n初始化從鍵盤輸入3判斷3是否不等于0小于16 是否為奇數(shù) 真假p=1繼續(xù)循環(huán)while退出while運行循環(huán)語句結束死循環(huán)輸出魔方陣圖3-1 總體設計流程圖2包含的功能本系統(tǒng)包括了數(shù)據(jù)的輸入,運行,判斷,調(diào)試,輸出等功能。3.2 詳細設計# include <stdio.h>void main()int a1616,i,j,k,p,n; / 一堆定義 p=1; while(p=1) / p 是一個標志,專門用來控制何時跳出whileprintf(&q
6、uot;enter n:"); /讀入一個整數(shù)到n 就是幻方的階數(shù)。 scanf("%d",&n); if (n!=0)&&(n<=15)&&(n%2!=0) p=0; /如果輸入的數(shù)>=1 且<=16 且是奇數(shù),就跳出while,繼續(xù)以下計算。/如果不滿足以上條件就死循環(huán)。 for (i=1;i<=n;i+) for (j=1;j<=n;j+) aij=0; 將矩陣中的1n*1n的范圍內(nèi)清0.i=1; j=n/2+1; aij=1;i=1; / 開始填1,在第一行的中間 for (k=2;k&
7、lt;=n*n;k+) i=i-1;j=j+1;/ 依次填 2,3.一直到填滿 / 規(guī)則是當前數(shù)填在上個數(shù)的右上。 if (i<1)&&(j>n) i=i+2;j=j-1; / 但是如果到達矩陣的最右上時,要改為 / 填在最右上的下邊一格。 else if ( i<1 ) i=n;/ 如果上一個數(shù)在最右邊界, / 那么當前數(shù)的x坐標設成最左邊。 / 好像一個席子卷起來,左邊和右邊相接。 / 最右邊填完了就接到最左邊繼續(xù)填 if ( j>n ) j=1;/ 縱向方向同理 if (aij=0) aij=k;如果當前沒有數(shù),就填入 else i=i+2;j=j
8、-1; aij=k; / 如果當前已經(jīng)有數(shù)占領了,就填到上一個數(shù)的下邊。/* 如果要看的清楚,就每填一個就打印一次。 for(i=1;i<=n;i+) for (j=1;j<=n;j+) printf("%4d",aij); / 循環(huán)打印結果。 printf("nn");return 0; 這個模塊實現(xiàn)了數(shù)據(jù)的定義,以及定義的類型,數(shù)據(jù)的初始化。第4章 編碼實現(xiàn) 4.1 數(shù)據(jù)輸入部分代碼設計我的實驗輸入部分利用了for語句,也就是循環(huán)語句。例如:int a1616,i,j,k,p,n; p=1; while(p=1) printf("
9、;enter n:"); scanf("%d",&n); if (n!=0)&&(n<=15)&&(n%2!=0) p=0; for (i=1;i<=n;i+) for (j=1;j<=n;j+) aij=0; i=1; j=n/2+1; aij=1; for (k=2;k<=n*n;k+) 4.2 運算部分代碼設計我的實驗運算部分利用了if 、else語句也就是判斷語句。例如:if (i<1)&&(j>n) i=i+2;j=j-1; else if ( i<1 )
10、i=n; if ( j>n ) j=1; if (aij=0) aij=k; else i=i+2;j=j-1; aij=k; 4.3 輸出部分代碼設計我的實驗運算部分利用了printf語句也就是使用了函數(shù)。例如:for(i=1;i<=n;i+) for (j=1;j<=n;j+) printf("%5d",aij);printf("nn"); return 0;第5章 系統(tǒng)調(diào)試 5.1 程序運行結果系統(tǒng)經(jīng)過多次調(diào)試、運行、修改,通過后的運行界面如圖5-1所示。圖5-1 程序運行結果圖1當輸入的數(shù)據(jù)是3時,輸出的結果如圖5-2所示。2當
11、輸入的數(shù)據(jù)是5時,輸出的結果如圖5-3所示。 圖5-2 數(shù)據(jù)為3時運行結果圖 圖5-3 數(shù)據(jù)為5時運行結果圖5.2 調(diào)試過程中的問題與對策1問題(1)首先是自己在指法上還不行,經(jīng)常按錯字母,通過學習也有所改進;(2)再有對c語言的一些標準庫函數(shù)不太了解,還有對函數(shù)調(diào)用的正確使用不夠熟悉(3)還有對c語言中經(jīng)常出現(xiàn)的錯誤也不了解,通過實踐的學習,我認識到學好計算機要重視實踐操作,不僅僅是學習c語言,還是其它的語言,(4)對語言中所出現(xiàn)的錯誤以及提示信息不能夠完全理解(5)對dos下的抓屏技術不夠全面。(6)缺乏耐心,仔細的品質(zhì),意志力不夠堅強,電腦的程序軟件出現(xiàn)錯誤,影響做題質(zhì)量。2對策通過老師
12、的輔導以及自己的反復調(diào)試,檢查,再加上上網(wǎng)對dos下抓屏的自學,歷經(jīng)種種磨難將本次實踐做成功總之,在實驗過程中體現(xiàn)了許多的毛病和不足,我一定會積極改正,吸取教訓,對c語言的學習充滿希望!第6章 設計總結經(jīng)過一個星期的上機實踐學習,使我對c語言有了更進一步的認識和了解,要想學好它要重在實踐,要通過不斷的上機操作才能更好地學習它。通過實踐的學習,讓我掌握了魔方陣的編程方法,本次實驗也讓我達到了實驗的目地,不但將老師留得任務完美的完成,也對c語言更深的掌握,了解。魔方陣的那個判斷條件得到掌握,總體來說這次實驗讓我收獲頗多,對c語言的函數(shù)語句得到進一步的掌握,謝謝王老師給我們?yōu)槟蠹疫@次難得的機會!課
13、程設計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn)、提出、分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對我們的實際工作能力的具體訓練和考察過程.隨著科學技術發(fā)展的日新月異,當今計算機應用在生活中可以說得是無處不在。因此作為二十一世紀的大學來說掌握程序開發(fā)技術是十分重要的,而c語言又是最常見,功能最強大的一種高級語言,因此做好c語言課程設計是十分必要的?;仡櫰鸫舜握n程設計,至今我們?nèi)愿锌H多,的確,自從拿到題目到完成整個編程,從理論到實踐,在整整十天的日子里,可以學到很多很多的東西,同時不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。通過這次課程設計使我們懂得了理論與實際相結合是
14、很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,6理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設計的過程中發(fā)現(xiàn)了自己的不足之處,對一些前面學過的知識理解得不夠深刻,掌握得不夠牢固,比如說結構體,指針通過這次課程設計之后,我們把前面所學過的知識又重新溫故了一遍。我做的是魔方陣課程設計,雖然是很簡單的一個小的程序,但對我來說卻是一個很大的困難,主要是那個判斷條件。更加是第一次做課程設計,所以第一天上午在機房做了很久卻絲毫沒有進展,最主要是不知
15、從何開始,這個時候才知道上課老師們不厭其煩的教導是多么的寶貴,這個時候才后悔上課的時候沒有認真的聽講??墒乾F(xiàn)在一切都晚了,還好時間還算是充裕,只好拿出書本重新復習一下。一開始在紙上編程,后來經(jīng)過反復研究讀程,終于開始正式在電腦上編程。編程是一件很枯燥很無聊的事情,但是出于完成作業(yè),得到學分的壓力,還必須強迫自己堅持下去,按照老師所說的內(nèi)容和給的要求,分步的進行編寫。而且編程是一件高精度、模范化的事情,稍有疏乎都會影響全局,也可能因為某一處的小的錯誤而導致整個程序的無法運行。所以認真仔細就是非常重要的了。開始的時候真的感覺編程是一件很無聊的事情,不過當一個程序運行成功的時候那種喜悅是無法言語的,
16、那種成就感是無法比擬的。又經(jīng)過幾天的努力,終于把程序完成了,盡管程序還是有很多錯誤和漏洞,不過還是很高興的。無論如何是自己的勞動成果,是自己經(jīng)過努力得到的成績,同時也是學習c語言的一次實踐作業(yè),自己進步的證明。通過這次課程設計,使我對c語言有了更進一步的認識和了解,要想學好它要重在實踐,要通過不斷的上機操作才能更好地學習它,我也發(fā)現(xiàn)我的好多不足之處,首先是自己在指法上還不行,經(jīng)常按錯字母,通過學習也有所改進;再有對c語言的一些標準庫函數(shù)不太了解,還有對函數(shù)調(diào)用的正確使用不夠熟悉,還有對c語言中經(jīng)常出現(xiàn)的錯誤也不了解,通過實踐的學習,我認識到學好計算機要重視實踐操作,不僅僅是學習c語言,還是其它
17、的語言,以及其它的計算機方面的知識都要重在實踐,所以后在學習過程中,我會更加注視實踐操作,使自己便好地學好計算機。在課程設計過程中,收獲知識,提高能力的同時,我也學到了很多人生的哲理,懂得怎么樣去制定計劃,怎么樣去實現(xiàn)這個計劃,并掌握了在執(zhí)行過程中怎么樣去克服心理上的不良情緒。因此在以后的生活和學習的過程中,我一定會把課程設計的精神帶到生活中,不畏艱難,勇往直前!參考文獻1 烏云高娃等.c語言程序設計.北京:高等教育出版社,2007.72 吳婷等.c語言答疑解惑與典型題解.北京:郵電大學出版社,2010.53 譚浩強.c語言程序設計.北京:清華大學出版社,2000.14 譚浩強.c程序設計試題
18、匯編.北京清華大學出版社,2004.95 譚浩強.c程序設計.北京清華大學出版社,2005.96 李春葆.c語言習題解答.北京:清華大學出版社,2002.5致 謝通過這次實驗,讓我成長了不少,自己也收獲了許多,對于c語言的編程有很大的幫助,讓我的動手能力得到了提高,讓我對未來的語言類課程充滿了希望和信心。謝謝王老師能夠給我們這次機會,讓我們有這個機會實踐,王老師張松巖對每個同學都特別耐心,對我在編程過程中遇到問題時耐心輔導,謝謝您!通過本次c語言上機實驗,我對這個介于人類與非人類之間的計算機編程語言有了一定的體驗。其間開心過、郁悶過、無奈過、彷徨過隨著實驗的勝利成功與實驗報告的勝利完成,有點微微的自豪感使人難忘。感謝王少華/老師,您的高標準、嚴要求,感謝實驗課上同學們們的耐心指點,也感謝我在實驗中經(jīng)歷過的點點滴滴伴隨
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國PWM制氫電源行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 必殺03 第六單元 我們生活的大洲-亞洲(綜合題20題)(解析版)
- 講稿《教育強國建設規(guī)劃綱要(2024-2035年)》學習宣講
- 2025關于合同中的表見代理
- 商業(yè)物業(yè)租賃合同范本
- 試驗檢測未來的發(fā)展方向
- 天然氣購銷合同模板
- 2025機械加工合同
- 卷簾門電機售后合同范本
- 商鋪的買賣合同年
- cpk自動計算電子表格表格
- 2024-2025學年湖北省武漢市部分重點中學高一上學期期末聯(lián)考數(shù)學試卷(含答案)
- 2025年浙江省交通投資集團財務共享服務中心招聘2名高頻重點提升(共500題)附帶答案詳解
- 做投標文件培訓
- 9.4+跨學科實踐:制作簡易活塞式抽水機課件+-2024-2025學年人教版物理八年級下冊
- 建筑工程工作計劃
- 2025年中國國際投資促進中心限責任公司招聘管理單位筆試遴選500模擬題附帶答案詳解
- 瓶裝液化氣送氣工培訓
- 外科護理課程思政課程標準
- 船舶航行安全
- 9.2溶解度(第1課時飽和溶液不飽和溶液)+教學設計-2024-2025學年九年級化學人教版(2024)下冊
評論
0/150
提交評論