程序控制結(jié)構(gòu)是指以某種順序執(zhí)行的一系列動作,用于解決某個問題。理論和實踐證明,無論多復(fù)雜的算法均可通過順序、選擇、循環(huán)這三種基本控制結(jié)構(gòu)構(gòu)造出來。每種結(jié)構(gòu)僅有一個入口和出口。由這3種基本結(jié)構(gòu)組成的多層嵌套程序稱為結(jié)構(gòu)化程序。百度百科解釋的很棒!再來學習另外一種開關(guān)結(jié)構(gòu)!
switch語句用的場合不如if的多!
注意!
開關(guān)結(jié)構(gòu)運行時,MATLAB將開關(guān)表達式的值依次和各個 case后面的表達式進行比較,如果是“邏輯真”,將執(zhí)行相應(yīng)的語句,如果是“邏輯假”,則取下一個 case 后面的表達式進行比較。如果所有 case 后面的語句均與開關(guān)表達式的值不相等,則執(zhí)行 otherwise 后面的指令語句組。
開關(guān)表達式的形式有兩種:一種是標量;另外一種是字符串。對于字符串形式,MATLAB 在比較時將調(diào)用函數(shù) strcmp( ),得出字符串比較的邏輯輸出值,MATLAB 根據(jù)該邏輯值的真假來判斷是否執(zhí)行該 case 后面的語句。
什么是流程?
流程簡單的解釋就是指事物進行中的次序或順序的布置和安排。我們做的很多事情都有一個流程。比如你要到京東買東西就要先登錄賬號,然后購物,然后提交,再然后進行付費。再比如華為公司使用的BPM。這是一個流程管理軟件,先處理什么事情,再處理什么事情,涉及順序,管理思想等。只有到了一定規(guī)模的公司,你才能接觸到這個概念。我們先從軟件編程的角度出發(fā)來理解流程控制內(nèi)容吧。那什么是流程圖呢?學過C語言的同學肯定知道。復(fù)雜的編程一定要先畫流程圖!
做個例題吧。
例四:switch-case開關(guān)結(jié)構(gòu)實例。
通過鍵盤輸入百分制成績,輸出成績的等級,其中90~100分等級為A,80~89分等級為B,70~79分等級為C,60~69分等級為D,60分以下不及格。
正確嗎?
如果不正確,應(yīng)該如何改呢?
先思考一下!
注意!
試探結(jié)構(gòu)首先試探性的執(zhí)行指令語句組 1,如果在此語句組執(zhí)行過程中出現(xiàn)錯誤,則將錯誤信息給保留的 lasterr 變量,并放棄這組語句,轉(zhuǎn)而執(zhí)行語句組 2 中的語句。
若語句 2 執(zhí)行過程中又出現(xiàn)錯誤,則 MATLAB 終止該結(jié)構(gòu)。
什么是魔方矩陣?
考試時候也許會遇到哦!
如何生成呢?magic函數(shù)可以來幫忙!魔方矩陣是指具有相同的行數(shù)和列數(shù),并且在每行每列、對角線上的和都相等的矩陣。魔方矩陣中的每個元素不能相同。你能構(gòu)造出任何大?。ǔ?x2)的魔方矩陣。
這個結(jié)構(gòu)用的少!
而下面的結(jié)構(gòu)幾乎無處不在!
注意!
”表達式“可以是 MATLAB 指令產(chǎn)生的數(shù)組,也可以是任意給定的一個數(shù)組。循環(huán)變量從”表達式“中的第一個數(shù)值(或第一列數(shù)組)一直循環(huán)到”表達式“的最后一個數(shù)值(或最后一列數(shù)組)。
注意!
執(zhí)行時,只要邏輯表達式為”邏輯真“(非 0),就執(zhí)行指令語句組,執(zhí)行后再返回到 while 引導(dǎo)的邏輯表達式處,繼續(xù)判斷;如果邏輯表達式為”邏輯假“,則跳出循環(huán)。
通常,邏輯表達式的值為一個標量,但數(shù)組也同樣有效。
示例講解!
例七:運用 while……end循環(huán)結(jié)構(gòu)實現(xiàn):從鍵盤輸入若干個數(shù),當輸入數(shù)字為零時,結(jié)束輸入。求這些數(shù)字的平均值以及它們的和。
如果你熟悉C語言的語法知識,那么掌握這些就易如反掌!如果忘記了,可以通過互聯(lián)網(wǎng)來回顧!如果沒有學過C語言,那么就需要在MATLAB相關(guān)書籍中學習相關(guān)內(nèi)容。繼續(xù)通過示例來了解這兩個語句的用法吧。
知識點!
審核編輯:劉清
-
matlab
+關(guān)注
關(guān)注
181文章
2960瀏覽量
230031 -
C語言
+關(guān)注
關(guān)注
180文章
7595瀏覽量
135872 -
MATLAB仿真
+關(guān)注
關(guān)注
4文章
175瀏覽量
19891
原文標題:MATLAB課程之第三章v2 M文件知識(3)
文章出處:【微信號:gh_30373fc74387,微信公眾號:通信工程師專輯】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論