999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MATLAB 在C 語言教學中的應用研究

2020-11-02 07:49:52彭石
現代計算機 2020年26期
關鍵詞:語言教學

彭石

(中山大學南方學院電氣與計算工程學院,廣州510900)

0 引言

多媒體技術的發展使教學活動發生了顯著的變化,許多先進的教學設備和教學軟件系統紛紛走進了今天的課堂[1],教師的地位在發生著悄悄的變化,為了提高教學效率,針對不同的課程選擇合適的教學手段成為了教師要思考的問題。增強學生學習的積極性,活躍課堂的氣氛,將教學內容變抽象為具體、變難懂為易懂,可以取得簡明高效的教學效果。本文針對C 語言教學之中存在的具體問題,作了深入分析,提出了使用MATLAB 來輔助教學活動的方案[2],實踐表明,該方案可以解決上述問題。

1 C語言和MATLAB的特點

C 語言和其它計算機語言相比,具有很多自己的特點。例如它有豐富的數據類型,有自己獨特的運算符,如++,--,有功能強大又很神秘的指針和編譯器;它還有許多和程式邏輯息息相關的操作是編譯器定義加上去的,使慣于循序思考的學生容易不知所措,總之C語言具有自己獨特的特性,對于沒有相關背景的初學者,難度很大[3]。

強大的繪圖功能是MATLAB 的特點之一,這是C語言不具備的。它提供了一系列的繪圖函數,即使是初學的用戶,只需要掌握一些基本參數就能得到所需圖形[4]。此外,MATLAB 可以采用不同的坐標系,如直角坐標、對數坐標、極坐標等,它包含了許多制作動畫和視頻常用的函數,用戶可以很方便的使用這些函數實現自己的目的而不必去思考具體的實現細節。

針對C 語言教學之中的種種問題,接下來本文將會結合具體案例進行仔細分析。

2 使用MATLAB解決C語言教學問題的案例

2.1 循環語句之for循環用法

循環結構可以將重復書寫的代碼的變得簡單,用來描述重復執行某段過程的問題,這是程序設計中可以充分發揮計算機特長的程序結構,C 語言中主要包含四種循環,即goto 循環、while 循環、do while 循環和for 循環。

在MATLAB 中,最基本而且應用最為常見的繪圖函數為plot,利用它可以在二維平面上繪制出各種曲線。為了說明for 循環的作用,本例子用MATLAB 繪制了5 個不同顏色的同心圓,圖1 演示了使用for 循環繪制5 個同心圓的過程。

圖1 使用for循環繪制的同心圓

其中,x 和y 是單個圓進行40 次采樣的位置坐標數組,C 是設置顏色的數組,從圖形可以看出,使用MATLAB 可以方便的繪制出不同色彩的圖形方便學生理解,彌補了C 語言的不足。

2.2 函數遞歸之漢諾塔問題

函數遞歸是一種強大又復雜的編程技巧,它將大的問題分解為一組相似的小問題,每個小問題都有一個簡單解。遞歸函數是會直接調用自身的一種函數,一般來說,遞歸函數反復調用自身直到問題最終解決。

“漢諾塔”是程序設計中一個經典的遞歸問題,是一個著名的益智游戲,描述如下:塔上有A、B、C 三根柱子和直徑依次遞減的空心圓盤,開始時A 柱子上的所有圓盤都按從大到小的順序排列,通過每次移動一個圓盤到另一根柱子上,最終把所有圓盤移動到C 柱子上,過程中大的圓盤不能放在小圓盤上[5]。使用C 語言可以求出漢諾塔移動的過程,可是由于缺少繪圖API,無法將整個運行流程動態的展現出來,因此本文采用了MATLAB 語言來編程實現這個問題。

首先是MATLAB 寫的漢諾塔遞歸函數hanoi.m 文件,在這個函數里面引用了繪圖函數arr.m。

其次是繪圖函數文件arr.m,這個函數分別繪制了三個柱子上的圓盤放置情況,以及動態的變化過程,其中a,b,c 是三個存放盤子信息的數組,pause(2)是程序休眠;clf 代表清屏。

最后是程序啟動的運行代碼。

圖2 使用MATLAB制作的漢諾塔演示動畫

圖形動畫演示如圖2 所示,左邊是程序開始的截圖,右邊是程序運行結束的圖形,從圖形里可以看出,整個漢諾塔包含三根柱子,從左邊挪到右邊大概需要3分鐘,層數越多,程序運行需要的遞歸次數越多,因而時間也越久。動畫完整地展示了漢諾塔的運行流程,可以說MATLAB 讓復雜的數學問題變得清晰易懂。

2.3 具體應用之動態規劃問題

動態規劃是求解決策過程最優化的數學方法,日常生活之中經常會碰到需要求解結果最優的問題,由于這類問題涉及到的技巧性,使用C 語言研究多階段決策過程的優化問題,在各類編程競賽和數學建模之中屢見不鮮[6]。最優化原理把多階過程轉化為一組簡單的單階段問題,利用各階段之間的關系,逐個求解,這就是動態規劃。

本文舉一個經典的動態規劃例子,下面有一組數字三角形,要求計算一條從頂部到底部的路徑,使得路徑上所經過的數字和最大,路徑的每個點都只能往相鄰的左下或右下走,求出這個最大路徑的和即可,不需要具體的路徑;三角形的行數介于1-100,各個點數字為0-99。

圖3

這里簡化程序的輸入輸出過程,直接使用給出的數據,構造一個模型可以適用于任意輸入數據組合,算法的思想是先求解最下一行的最大路徑值,接著逐行往上求解,使用MATLAB 編程如下所示:

圖4 動態規劃輸入輸出對比演示

用MATLAB 得到的結果如圖4 所示,使用MAT?LAB 繪制矩陣圖形,左邊是輸入的數據,右邊是求得的結果數組;計算得到最終結果g 值為30,各階的結果矩陣A2。左右對比可以很容易看出動態規劃的求解過程以及遞歸過程,因此使用MATLAB 可以將復雜的數學問題變得清晰易懂,它可以在C 語言的教學過程之中起到十分重要的輔助作用。

3 結語

C 語言是一門抽象的程序設計語言,它作為開發語言被應用在不同的領域;它結構的復雜性和學習的獨特性質,注定了初學者會遇到這樣那樣的問題,即使是具有一定編程經驗的程序員,在遇到復雜的數學問題時候,往往也會一籌莫展。因此選擇一種具有完整的圖形界用戶面和方便的編程接口的語言作為輔助教學開發工具,具有十分重要的作用,可以大大簡化理解的難度和開發的復雜度,方便教學的順利開展,為了解決這個問題,本文研究了使用MATLAB 語言來解決C語言教學之中遇到的一些問題,并且對具體的案例提出了解決方案,分析表明MATLAB 在C 語言的學習開發過程之中,具有十分重要的輔助作用,是課堂教學的重要工具。

猜你喜歡
語言教學
微課讓高中數學教學更高效
甘肅教育(2020年14期)2020-09-11 07:57:50
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
如何讓高中生物教學變得生動有趣
甘肅教育(2020年12期)2020-04-13 06:25:34
讓語言描寫搖曳多姿
“自我診斷表”在高中數學教學中的應用
東方教育(2017年19期)2017-12-05 15:14:48
多向度交往對語言磨蝕的補正之道
對外漢語教學中“想”和“要”的比較
唐山文學(2016年2期)2017-01-15 14:03:59
累積動態分析下的同聲傳譯語言壓縮
我有我語言
論語言的“得體”
語文知識(2014年10期)2014-02-28 22:00:56
主站蜘蛛池模板: 欧美劲爆第一页| 孕妇高潮太爽了在线观看免费| 久久综合婷婷| 亚洲天堂.com| a毛片在线| 制服丝袜亚洲| 日本精品视频一区二区| 欧美激情一区二区三区成人| 欧美一区二区丝袜高跟鞋| 伊人久久婷婷五月综合97色 | 天堂中文在线资源| 免费av一区二区三区在线| 国产丝袜无码精品| 区国产精品搜索视频| 一本大道东京热无码av| 波多野结衣一区二区三区四区视频 | 久久久久国产精品熟女影院| 日韩专区欧美| 亚洲毛片网站| 欧美精品在线视频观看| 国产青青操| 91青青在线视频| 午夜少妇精品视频小电影| 五月激激激综合网色播免费| 亚洲成人在线免费| 99国产在线视频| 成年人午夜免费视频| 国产靠逼视频| 97人人模人人爽人人喊小说| 亚洲看片网| 亚洲无码免费黄色网址| 无码人妻免费| 国产午夜精品鲁丝片| 91av国产在线| 99无码中文字幕视频| 久久免费看片| 亚洲国产成人精品无码区性色| 久久人午夜亚洲精品无码区| 国产视频欧美| 亚洲天堂区| 日韩高清中文字幕| 日韩东京热无码人妻| 精品一区二区无码av| 国产欧美视频综合二区| 亚洲精品动漫| 国产日本一区二区三区| 国产亚洲现在一区二区中文| 中文字幕 91| 国产亚洲美日韩AV中文字幕无码成人| 一区二区欧美日韩高清免费| 国产网站黄| 日韩精品一区二区三区大桥未久| 尤物视频一区| 不卡色老大久久综合网| 香港一级毛片免费看| 亚洲天堂首页| 精品福利视频网| 亚洲区视频在线观看| 久久综合成人| 色天天综合| 91最新精品视频发布页| 国产精品视频第一专区| 婷婷综合亚洲| 久久亚洲美女精品国产精品| 午夜无码一区二区三区在线app| 最新亚洲人成无码网站欣赏网| 亚洲国产精品日韩欧美一区| 亚洲AⅤ波多系列中文字幕| 黄色网在线免费观看| 在线精品亚洲国产| 国产午夜福利亚洲第一| 91精品人妻互换| 国产小视频a在线观看| 色香蕉影院| 全裸无码专区| 国产精品美女网站| 国内精品久久九九国产精品| 亚洲视频免| 为你提供最新久久精品久久综合| 五月婷婷欧美| 国产精鲁鲁网在线视频| 毛片久久网站小视频|