【正文】
Ch由上述命令外殼 (mand shell)和一個集成開發(fā)環(huán)境 (Ch Integrated Development Environment, ChIDE)兩大模塊構(gòu)成。 c = a + b。函數(shù) addition()可以用于程序或如圖 28 所示的命令外殼中。} double c c = add(, 20) 基于 ch 平臺 c 語言程序設(shè)計的教學(xué)探討 6 件只含有一個函數(shù)定義。 Ch的函數(shù)文件是一種擴(kuò)展名為 .chf的文件,此類文struct tag {int i。 C語言標(biāo)準(zhǔn)庫中的所有函數(shù)都可以 進(jìn)行交互式執(zhí)行,也可以在用戶自定義的函數(shù)中使用。 Ch shell還可以方便地檢查 C語言結(jié)構(gòu)或 C++類的對齊,如圖 25所示。 圖 23 Ch shell示例 1 任何有效的 C語言表達(dá)式都可以在 Ch shell中求值。 Ch shell中的默認(rèn)提示符是可配置的。在一個平臺上開發(fā)的 程 序 可 以 在 其 他 任 何 一 個 平 臺 上 運 行 。在運行 在處理某些任務(wù)時, C語言功能及其編譯 /鏈接 /運行 /調(diào)試等繁瑣過程不盡完美且效率不高。 ChIDE操作簡便,是專門為教師授課和學(xué)生學(xué)習(xí)而開發(fā)的。從我國率先引進(jìn)的學(xué)校來看,基于 ch 平臺 c 語言程序設(shè)計的教學(xué)探討 3 其對學(xué)生成績的提高十分明顯。本文介紹的 Ch是跨平臺的 C/C++解釋計算環(huán)境,對于提高計算機(jī)編程入門教學(xué)具有良好的效果。 C語言可以在各種計算機(jī)上運行,其中包括微控制器、微型計算機(jī)、手執(zhí)設(shè)備、個人電腦、工作站乃至超型計算機(jī)。有些需要編寫數(shù)千行 C語言代碼才能解 決的問題, Ch代碼只需寥寥數(shù)行即可完成。 Ch還能解釋使用面向?qū)ο缶幊烫匦缘?C++程序。 Ch借鑒了很多其他語言和軟件包的特性和創(chuàng)意,它和其他一些語 言和軟件包的關(guān)系見圖 11。與其他大部分 C語言編譯器相比較, Ch支持更多 C99的新增特性。 Ch設(shè)計嚴(yán)格遵循了 C語言標(biāo)準(zhǔn),是 C語言的超集。提高大學(xué)生 C/C++的程序設(shè)計能力和實際動手能力 ,對他們的專業(yè)發(fā)展及今后的就業(yè)具有非常重要的意義。 關(guān)鍵詞 : C語言; CH解釋 器 ; C語言程序設(shè)計教學(xué) Discussion based on the teaching of ch platform c language programming Abstract: with the rapid development of information technology, C language has been into a variety of electronic products. Therefore the cultivation of can skilled grasp the C language talent is very urgent, but well known C language is a puter program design teaching is also more difficult to learn the most popular programming languages. This paper introduces the Ch platform is fit for interactive teaching the concept of cross platform C / C + + explains puting environment, is a plete C language interpreter, support the new C language standard C99 in most of the new features and C + + class. It consists of an interactive mand shell and special teaching and friendly interface integrated development environment two big modules, thus forming a kind of new C program design teaching platform and the new teaching model. Ch support for puting array, provides graphics rendering library and advanced numerical functions, convenient to be able to solve many plex issues related to engineering and science. Ch because of its crossplatform implementation of C / C + + features, so that it can be in the Linux, Unix, Windows and other operating system operation. Ch also can be used as engine script seamlessly embedded into the piled program, realize the flexible programming. This article will focus on the introduction of Ch based on the C program design in teaching shows the advantage. The use of this platform to a considerable extent, improves the teaching of puter progra m design, practical teaching and students39。 Ch因其 跨平臺執(zhí)行 C/C++的特點 ,使 它可以在Linux、 Unix、 Windows 等多種操作系運行 。所以培養(yǎng)能 熟練掌握 C語言的人才便顯得十分迫切,但是總所周知 C語言是計算機(jī)程序設(shè)計入門教學(xué)中最流行也較難學(xué)的編程語言之一。 其次 ,感謝我的班主任、 傳授我知識的每一位老師以及身邊所有的朋友與同學(xué),四年的生活相處不久,卻從他們身上學(xué)到了太多,必將終身受益。 首先誠摯的感謝我的畢業(yè)論文導(dǎo)師張會榮。參與同一工作的其他同志對本研究所作的任何貢獻(xiàn)已在論文中作了明確的說明并表示了謝意。 本科畢業(yè)論文(設(shè)計) 論文題目: 基于 ch 平臺 c 語言程序設(shè)計的教學(xué)探討 作 者: 學(xué)號: 2021121329 學(xué) 院: 物理與電子工程學(xué)院 年 級: 2021 級 專 業(yè): 物理學(xué) 指導(dǎo)教師: 職稱: 講師 日 期: 2021 年 5 月 18 日 曲靖師范學(xué)院教務(wù)處制 曲靖師范學(xué)院 本論文(設(shè)計)經(jīng)答辯小組全體成員審查,確認(rèn)符合曲靖師范學(xué) 院本科 (學(xué)士學(xué)位 )畢業(yè)論文(設(shè)計)質(zhì)量要求。 簽名: 日期: 論文使用授權(quán)說明 本論文作者完全了解曲靖師范學(xué)院有關(guān)保留、使用畢業(yè)(學(xué)位)論文的規(guī)定,即學(xué)校有權(quán)保留論文及送交論文復(fù)印件,允許論文被查閱和借閱;學(xué)??梢怨颊撐牡娜炕虿糠謨?nèi)容。本論文的所有研究工作從論文的選題、實現(xiàn)條件到論文寫作等階段都是在張會榮老師的悉心指導(dǎo)下完成的。 最后要感謝我的父母,在我生命的每一個分秒,都給予我無私的愛與關(guān)懷;在我成長的每一個腳步里以及我大學(xué)生涯的每一個階段,都給予我充分的支持與期望。本文介紹的 Ch平臺正是契合了面向交互式教學(xué)這一理念的跨平臺 C/C++解釋計算環(huán)境,是一個完整的 C語言解釋器,支持最新 C語言標(biāo)準(zhǔn) C99中大部分的新增特性以及 C++的類。 Ch還可以作為引擎腳本無縫地嵌入到編譯的程序中,實現(xiàn)柔性編程。 learning enthusiasm, help students more easily understand and master the puter program design in the field of engineering and science is the important basic skills. Key words: language interpreter C。 當(dāng)初設(shè)計和開發(fā) Ch的主要目的是為了更有效地進(jìn)行 C語言計算機(jī)程序設(shè)計入門教學(xué),同時兼顧智能機(jī)電系統(tǒng)方面的科研和工程應(yīng)用 [1][2]。作為一個完整的 C語言解釋器 ,Ch支持 C89標(biāo)準(zhǔn) [5]的所有特性。所 以使用 Ch可以極大地簡化很多編程任務(wù)。 圖 11 Ch和其他一些計算機(jī)語言和軟件包的關(guān)系 基于 ch 平臺 c 語言程序設(shè)計的教學(xué)探討 2 Ch的以下主要功能是一般的 C語言編譯器所無法提供的。其次,一些應(yīng)用于工程和科學(xué)方面的語言 (如 MATLAB和 Mathematica)所具有的高級數(shù)值計算和圖形繪制特性也被 Ch擴(kuò)展到 C語言上。此外, Ch還可以無縫地嵌入到用 C或 C++語言編寫的編譯應(yīng)用程序中,使應(yīng)用程序可以用 C/C++腳本柔性編程,極大地擴(kuò)展了應(yīng)用程序的功能。在目前制造的所有微處理器中,只有不到 5%的處理器用于新的個人電腦和工作站中,剩余的則用于工業(yè)機(jī)器、醫(yī)療設(shè)備、交通燈控制器 和家用電器等的嵌入式系統(tǒng)中。 應(yīng)用現(xiàn)狀 C語言的廣泛應(yīng)用也擴(kuò)展了許多的開發(fā)平臺,目前普遍運用的主要有: Ch 、 Turbo C++ 、 Visual C++ 2021和微軟的 Visual C++。這對 ch平臺在我國大規(guī)模普及起到了十分積極的意義。 ChIDE的特征和布局都是那些沒有任何編程經(jīng)驗的初學(xué)者而設(shè)置的;其四: Ch的高級科學(xué)計算功能,調(diào)用高級函數(shù);其五:可視化的繪圖能力,圖形繪制對數(shù)值結(jié)果的可視化和 解釋是極為重要的。隨著計算機(jī)硬件越來越便宜,計算速度越來越快, Ch作為跨平臺 C/C++解釋器,其在程序設(shè)計效率、柔性及成本 方面的優(yōu)勢已被越來越廣泛應(yīng)用,特別是在 C語言程序設(shè)計教學(xué)上。 在輔助初學(xué)者學(xué)習(xí)計算機(jī)編程方面, Ch有很多專門開發(fā)的警告和出錯提示 信息,而不用如段故障和總線錯誤之類含義模糊且令人費解的出錯提示信息。為簡易起見,下文關(guān)于 Ch shell的命令行敘述中只顯示提示符 ,而不列出完整路徑。因此,把 Ch當(dāng)作計算器使用也是相當(dāng)方便的。 圖 25 Ch shell示例 3 本例中的 int和 double雖然分別占 4和 8個字節(jié),但為了對齊,結(jié)構(gòu)體 s的 int和 double兩個字段共占 16個字節(jié),而不是 12個。比如,在交互式解釋執(zhí)行如圖 26所示的代碼: 圖 26 交互式解釋執(zhí)行代碼 在隨機(jī)數(shù)值生成函數(shù) rand()中種入時間值 srand (time(NULL))。 double d。函數(shù)文件名和函數(shù)定義是相同的。 圖 28 函數(shù) addition()用于命令外殼中 C/C++程序無需編譯即可直接進(jìn)行交互式執(zhí)行。 return c。 ChIDE允許用戶在 IDE中編輯、調(diào)試或運行 C/C++程序, 其用戶界面支持包括中文在內(nèi)的 30多種語言。單擊錯誤提示就可以直接跳轉(zhuǎn)到有錯誤的那一行 。 另外,它具有自動語法高亮顯示,可 幫助用戶發(fā)現(xiàn)程序的一些語法錯誤。變量 a和 i以及表達(dá)式 2*g的值可以通過將相應(yīng)命令輸入右下角的調(diào)試窗格中獲取。 C99 為 C 語言添加了可變長數(shù)組和復(fù)數(shù),使得數(shù)值計算得到極大簡化。這些數(shù)值擴(kuò)展極大地簡化了工程和科學(xué)中復(fù)雜問題的編程。一維的計算數(shù)組作矢量處理,而二維數(shù)組則作為線性代數(shù)矩陣處理。如果程序中沒有包含頭文件 ,那么 標(biāo)識符 array就被作為變量名使用。 linsolve(x, a, b)。 } 基于 ch 平臺 c 語言程序設(shè)計的教學(xué)探討 10 圖 213 用數(shù)值分析函數(shù) linsolve()求解線性方程組 輸出結(jié)果如圖 214 所示。通過高級數(shù)值分析函數(shù)庫,用戶只需調(diào)用一個函數(shù)就能解決諸如 LU分解、 QR分解、偽逆、奇異值分解、矩陣的特征值和特征向量、非線性方程、常微分方程等復(fù)雜數(shù)值分析問題。 Ch在 C/C++的框架下,為二維和三維圖形繪制提供了幾乎最簡捷的方案。三維繪圖與二維繪圖方法x = A*x = 基于 ch 平臺 c 語言程序設(shè)計的教學(xué)探討 11 也是一樣的。 retval = sin(x)/x。 /* number of data points for (x, y) for plotting */ fplotxy(sinc, x0, xf, num, function sinc(x), x, sinc(x))。相比傳統(tǒng)平臺只需更少得多的代碼即