- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
总体变数和局部变数
(4) 在程式的適當位置使用keyboard 指令,在需要 進行偵錯的M 檔案中,使用keyboard 指令將控 制權交給鍵盤後,可以輸入一定的變數或程式 查詢程式執行過程中的變數數值,並分析判斷 其錯誤類型。在分析完畢後,使用鍵盤輸入 return 指令,返回原程式。 8.3.2 工具偵錯法 圖8-4 偵錯指令的幫助列表 1. 設置中斷點 圖8-5 程式執行到當前中斷點 表8-1 設置中斷點的指令 2. 清除中斷點 表8-2 清除中斷點的指令 3. 恢復執行 4. 呼叫堆疊 5. 列出所有中斷點 6. 執行一行或多行語句 7. 列出檔案內容 8. 切換到工作空間 9. 退出偵錯模式 第9章 M 檔案處理和輸入輸出操作 9.1 M 檔案的編寫 9.1.1 M 檔案簡介 使用M 檔案顯示如何應用繪圖函數plot()。啟動MATLAB 程式後,主頁面如圖9-1 所示。 圖9-2 程式編輯器Editor 圖9-3 MATLAB 指令輸入視窗 圖9-4 plot() 函數執行結果 9.1.2 M 檔案的兩種形式 1. 指令檔案 編寫指令檔案編寫小於1000 的Fibonacci 數列。 圖9-5 Fibonnaci 數列圖 2. 函數檔案 (1) M 函數檔案的第一行必須是以function 引導的 說明語句,稱為函數聲明行。 (2) 在函數聲明行和第一行指令之間可以增加若干 注釋行,做為該函數的輔助檔案,輔助檔案之 後為函數的函數體,函數體根據輸入參數,經 由一系列的運算之後,將得出的結果以輸出參 數的形式輸出給使用者。 (3) 在函數執行過程中,函數體內的變數臨時建立 工作區,做為函數工作區。 (4) 在M 函數檔案中也可以呼叫M 指令檔案,而此 時M 指令檔案中的所有變數都做為函數的局部 變數存在。 (5) 在M 函數檔案中也可以創造子函數,並且個數 不限,可以是一個或多個,有時也稱為局部函 數。 例 9-03 請將【例9-02】中的指令文件改為小於任意自然數的函數檔案,並將自然數給定1000 後執行。 3. 函數檔案的呼叫 利用函數的遞迴呼叫,求1!+2!+3!t? +n!。分析本題須先求出 n!,而 n!本身就是以遞迴的形式定義的: 5. M 檔案的規則和屬性 命名M 檔案時遵循如下規則。 (1) 檔案名的首字母必須是英文字母,不能是數字或下 畫線。 (2) 檔案名不能和MATLAB 內部函數名相同。 (3) 檔案名中不能有空格,但是可以包含下畫線。 (4) M 檔案在命名時不能是兩個分開的單詞。例如,檔 案命名為hello world是錯誤的,應該寫成 hello_world。 9.1.3 總體變數和局部變數 1. 總體變數 (1) 總體變數保存在靜態存貯區,程式開始執行時為其 分配記憶體,程式結束釋放該記憶體,與局部變數 的動態分配、動態釋放相比,總體變數生存期比較 長,過多的總體變數會佔用較多的記憶體,因而影 響系統的執行速度。 (2) 總體變數破壞了函數的封裝性能,使用函數時經由 函數參數和返回值進行輸入/輸出,函數內部完成 相對獨立。 (3) 總體變數使函數的代碼可讀性降低,由於多個函數 都可能使用總體變數,函數執行時總體變數的值可 能隨時發生變化,對於程式的偵錯非常不利。 2. 局部變數 (1) 主函數中所定義的變數也只能在主函數中使用,不 能在其他函數中使用。 (2) 形式變數是屬於被調函數的局部變數,而實際變數 則屬於主要函數的局部變數。 (3) 可以在不同的函數中使用相同的變數名,各自代表 不同的物件,分配不同的單元,互不干擾,並且也 不會發生混淆。 (4) 在複合語句中也可以定義變數,但是作用域只限制 在複合語句範圍內。 9.1.4 子函數 求平均數及中間數 function [avg,med]=main_fun(x) n=length(x) avg=sub_fun1(x,n); med=sub_fun2(x,n); function a=sub_fun1(x,n) a=sum(x)/n; function m=sub_fun2(x,n) x=sort(x)
您可能关注的文档
最近下载
- 农业服务中心2025年度工作计划 .doc VIP
- 外窗防水节点施工方案(JS).doc
- 2025-2026学年小学科学五年级上册青岛版(五四制2024)教学设计合集.docx
- 2025《J金融租赁公司所在行业的波特五力模型分析》5800字.doc
- 2025金风变流器2.0MW故障代码手册V4.docx VIP
- AP微积分AB 2014年真题 (选择题+问答题) AP Calculus AB 2014 Released Exam and Answers (MCQ+FRQ).pdf VIP
- 动态口令认证机制的网上投票系统设计与实现.docx VIP
- 保洁安全规范作业保障措施.docx VIP
- 2 中国人首次进入自己的空间站(公开课一等奖创新教学设计).docx VIP
- 华电天仁2X变桨培训.pptx VIP
文档评论(0)