衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MATLAB之switch-case開關結構實例

通信工程師專輯 ? 來源:通信工程師專輯 ? 2023-08-07 09:12 ? 次閱讀

程序控制結構是指以某種順序執行的一系列動作,用于解決某個問題。理論和實踐證明,無論多復雜的算法均可通過順序、選擇、循環這三種基本控制結構構造出來。每種結構僅有一個入口和出口。由這3種基本結構組成的多層嵌套程序稱為結構化程序。百度百科解釋的很棒!再來學習另外一種開關結構!

d6885216-34be-11ee-9e74-dac502259ad0.png

switch語句用的場合不如if的多!

注意!

開關結構運行時,MATLAB將開關表達式的值依次和各個 case后面的表達式進行比較,如果是“邏輯真”,將執行相應的語句,如果是“邏輯假”,則取下一個 case 后面的表達式進行比較。如果所有 case 后面的語句均與開關表達式的值不相等,則執行 otherwise 后面的指令語句組。

開關表達式的形式有兩種:一種是標量;另外一種是字符串。對于字符串形式,MATLAB 在比較時將調用函數 strcmp( ),得出字符串比較的邏輯輸出值,MATLAB 根據該邏輯值的真假來判斷是否執行該 case 后面的語句。

什么是流程?

流程簡單的解釋就是指事物進行中的次序或順序的布置和安排。我們做的很多事情都有一個流程。比如你要到京東買東西就要先登錄賬號,然后購物,然后提交,再然后進行付費。再比如華為公司使用的BPM。這是一個流程管理軟件,先處理什么事情,再處理什么事情,涉及順序,管理思想等。只有到了一定規模的公司,你才能接觸到這個概念。我們先從軟件編程的角度出發來理解流程控制內容吧。那什么是流程圖呢?學過C語言的同學肯定知道。復雜的編程一定要先畫流程圖!

做個例題吧。

例四:switch-case開關結構實例。

通過鍵盤輸入百分制成績,輸出成績的等級,其中90~100分等級為A,80~89分等級為B,70~79分等級為C,60~69分等級為D,60分以下不及格。

d6d9706a-34be-11ee-9e74-dac502259ad0.png

正確嗎?

如果不正確,應該如何改呢?

先思考一下!

d70fde2a-34be-11ee-9e74-dac502259ad0.png

d74a52bc-34be-11ee-9e74-dac502259ad0.png

注意!

試探結構首先試探性的執行指令語句組 1,如果在此語句組執行過程中出現錯誤,則將錯誤信息給保留的 lasterr 變量,并放棄這組語句,轉而執行語句組 2 中的語句。

若語句 2 執行過程中又出現錯誤,則 MATLAB 終止該結構。

d780dcf6-34be-11ee-9e74-dac502259ad0.png

什么是魔方矩陣?

考試時候也許會遇到哦!

如何生成呢?magic函數可以來幫忙!魔方矩陣是指具有相同的行數和列數,并且在每行每列、對角線上的和都相等的矩陣。魔方矩陣中的每個元素不能相同。你能構造出任何大小(除了2x2)的魔方矩陣。

d7bb0642-34be-11ee-9e74-dac502259ad0.png

這個結構用的少!

而下面的結構幾乎無處不在!

d7e271dc-34be-11ee-9e74-dac502259ad0.png

注意!

”表達式“可以是 MATLAB 指令產生的數組,也可以是任意給定的一個數組。循環變量從”表達式“中的第一個數值(或第一列數組)一直循環到”表達式“的最后一個數值(或最后一列數組)。

d7f6b2be-34be-11ee-9e74-dac502259ad0.png

d82d0472-34be-11ee-9e74-dac502259ad0.png

d85550e4-34be-11ee-9e74-dac502259ad0.png

注意!

執行時,只要邏輯表達式為”邏輯真“(非 0),就執行指令語句組,執行后再返回到 while 引導的邏輯表達式處,繼續判斷;如果邏輯表達式為”邏輯假“,則跳出循環。

通常,邏輯表達式的值為一個標量,但數組也同樣有效。

示例講解!

例七:運用 while……end循環結構實現:從鍵盤輸入若干個數,當輸入數字為零時,結束輸入。求這些數字的平均值以及它們的和。

d8958f06-34be-11ee-9e74-dac502259ad0.png

d8b34a6e-34be-11ee-9e74-dac502259ad0.png

d8e0f108-34be-11ee-9e74-dac502259ad0.png

如果你熟悉C語言的語法知識,那么掌握這些就易如反掌!如果忘記了,可以通過互聯網來回顧!如果沒有學過C語言,那么就需要在MATLAB相關書籍中學習相關內容。繼續通過示例來了解這兩個語句的用法吧。

d8fdf80c-34be-11ee-9e74-dac502259ad0.png

知識點!

d93e5492-34be-11ee-9e74-dac502259ad0.png






審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • matlab
    +關注

    關注

    185

    文章

    2981

    瀏覽量

    231010
  • C語言
    +關注

    關注

    180

    文章

    7614

    瀏覽量

    137719
  • MATLAB仿真
    +關注

    關注

    4

    文章

    176

    瀏覽量

    19998

原文標題:MATLAB課程之第三章v2 M文件知識(3)

文章出處:【微信號:gh_30373fc74387,微信公眾號:通信工程師專輯】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    狀態機編程實例-嵌套switch-case

    嵌入式軟件開發中,狀態機編程是一個比較實用的代碼實現方式,特別適用于事件驅動的系統。本篇,以一個炸彈拆除的小游戲為例,介紹狀態機編程的思路。
    的頭像 發表于 06-15 09:01 ?1898次閱讀
    狀態機編程<b class='flag-5'>實例</b>-嵌套<b class='flag-5'>switch-case</b>法

    #simulink 11.13 switch switch-case子系統

    matlabEDA工具仿真Simulink
    虎哥電子
    發布于 :2022年07月22日 11:42:30

    【DOC】MATLAB程序實例遺傳算法

    【DOC】MATLAB程序實例遺傳算法附件:
    發表于 02-28 11:11

    C語言switch case怎么執行

    switch(temp){case a: for(i=0;i
    發表于 03-22 07:27

    JavaScript 【5】switch語句

    運行。實例顯示今天的星期名稱。請注意 Sunday=0, Monday=1, Tuesday=2, 等等:var d=new Date().getDay(); switch (d) { case 0
    發表于 07-17 10:40

    matlab實例教程下載

    matlab實例教程    本書介紹了MATLAB一般原理和基本運算,重點介紹了MATLAB圖形用戶界面的結構
    發表于 06-18 14:26 ?620次下載
    <b class='flag-5'>matlab</b><b class='flag-5'>實例</b>教程下載

    PCB設計實例開關電源

    PCB設計實例開關電源,很實用的資料,感興趣的可以看看。
    發表于 09-19 16:57 ?0次下載

    EMC設計工程實例——開關電源設計

    EMC設計工程實例——開關電源設計
    發表于 01-14 12:22 ?85次下載

    C語言教程之選擇結構程序設計資料概述和設計實例免費下載

    本文檔的主要內容詳細介紹的是C語言教程之選擇結構程序設計資料概述和設計實例免費下載包括了:1.if條件分支結構2.switch-case開關
    發表于 09-19 17:21 ?8次下載
    C語言教程之選擇<b class='flag-5'>結構</b>程序設計資料概述和設計<b class='flag-5'>實例</b>免費下載

    MATLAB教程之MATLAB程序設計基礎概述

    本文檔的主要內容詳細介紹的是MATLAB教程之MATLAB程序設計基礎概述主要內容包括了:1For循環,2While 循環,3If-else-End 結構,4switch 分支
    發表于 01-04 14:55 ?0次下載
    <b class='flag-5'>MATLAB</b>教程之<b class='flag-5'>MATLAB</b>程序設計基礎概述

    C語言的switch case多分支選擇語句的詳細資料說明

    1、switch-case開關語句是一種多分支選擇語句,用來實現多方向條件分支。雖然采用if-else條件判斷語句也可以實現多方向條件分支,但是當分支較多時,使用if-else條件語句的嵌套層次會
    發表于 07-12 17:39 ?1次下載
    C語言的<b class='flag-5'>switch</b> <b class='flag-5'>case</b>多分支選擇語句的詳細資料說明

    Switch case中的case順序

    Switch case中的case順序 Switch 可能轉化成多種不同算法的代碼。其中最常見的是跳轉表和比較鏈/樹。當switch用比較鏈
    的頭像 發表于 11-20 18:16 ?892次閱讀

    java switch case的語法規則

    在Java中,switch case語句是一種用于多分支選擇的控制流語句。它允許根據某個表達式的值來執行不同的代碼塊。下面是關于switch case語法規則的詳細解釋。 基本語法
    的頭像 發表于 11-30 14:40 ?2503次閱讀

    java switch case值能為枚舉值嗎

    Java中的switch語句可以接受枚舉類型的值作為參數。在Java中,枚舉是一種特殊的數據類型,它定義了一個固定數量的命名常量。因此,可以將枚舉值作為switch語句的case。 首先,讓我們來看
    的頭像 發表于 11-30 14:41 ?5594次閱讀

    java中的switch語句 case的取值

    Java中的switch語句是一種用于多重條件判斷的語句,用于根據不同的條件執行不同的代碼塊。在switch語句中,case關鍵字用來指定不同的取值。 在Java中,switch語句的
    的頭像 發表于 11-30 16:05 ?1264次閱讀
    威尼斯人娱乐城代理开户| 百家乐赚钱项目| 噢门百家乐官网玩法| 百家乐官网里面的奥妙| 百家乐官网高手和勒威| 百家乐官网怎么赢对子| 金都百家乐官网现金网| 百家乐官网庄闲下载| 百家乐官网娱乐天上人间| 百家乐官网筹码桌布| 网上百家乐官网是假| 澳门百家乐官网赌钱| 百家乐官网游戏免费下| 百家乐游戏出售| 百家乐云顶| 百家乐技巧阅读| 百家乐技巧大全| 皇室百家乐的玩法技巧和规则| 威尼斯人娱乐场 澳门赌场| 棋牌娱乐平台| 百家乐官网路子分析| 赌博百家乐官网技巧| 中国百家乐官网软件| 百家乐模拟游戏下载| 太阳城百家乐公司| 大发888下载新澳博| zaixian百家乐| 百家乐官网开过的路纸| 百家乐官网网址官网| 做生意放什么东西招财| 百家乐透视牌靴哪里有| 大发888游戏平台dafa888 gw| 突泉县| 百家乐官网官网游戏| gt百家乐平台| 威尼斯人娱乐城首存优惠| 临夏市| 百家乐官网双龙| 葡京百家乐官网注码| 百家乐官网平注7s88| 百家乐破解视频|