77范文网 - 专业文章范例文档资料分享平台

matlab经典习题及解答(7)

来源:网络收集 时间:2019-01-27 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

7.6 创建一个用于绘图参数选择的菜单对象Plot Option,其中包含三个选项LineStyle、Marker和Color,每个选项下面又包含若干的子项分别可以进行选择图线的类型、标记点的类型和颜色。

提示:

(1)打开菜单编辑器,建立第一级菜单项Plot Option;

(2)在Plot Option菜单项下面建立第二级子菜单项LineStyle、Marker和Color; (3)在第二级菜单项下面分别建立第三级子菜单项。

7.7 建立三个输入窗口的输入对话框,如图所示。

输入命令或程序:

prompt={'输入姓名','输入年龄','输入职业'}; title='信息登记'; lines=[1 1 1]';

def={'张平','3','教师'};

answer=inputdlg(prompt,title,lines,def);

第8章 M文件编程

8.1 命令文件与函数文件的主要区别是什么?

(1)命令文件是一系列命令的组合,函数文件的第一行必须用function说明;

(2)命令文件没有输入参数,也不用返回参数,函数文件可以接受输入参数,也可以返回参数;

(3)命令文件处理的变量为工作空间变量,函数文件处理的变量为函数内部的局部变量,也可以处理全局变量。

8.2 如何定义全局变量?

用关键字global可以把一个变量定义为全局变量,在M文件中定义全局变量时,如果在当前工作空间已经存在了相同的变量,系统将会给出警告,说明由于将该变量定义为全局变量,可能会使变量的值发生改变,为避免发生这种情况,应该在使用变量前先将其定义为全局变量。

8.3 如果x是一个结构型数组,如何观察其中的内容?

结果数组用于存储一组相关的数据元素(域),这些元素可以是不同类型、不同尺寸的,结构数组不能用数组编辑器观察和修改其中的元素。对于明为x的结构型数组,可以直接键入x以观察其中所包含的域名及内容,也可以键入x.域名观察指定域名的内容,例如

>>x x =

name: 'line' color: 'red'

data: [1 2.7000 3 5.9000 8.4000 12.2000 16.6000 18.8000 26.2000] >> x.color ans = red

8.4 if语句有几种表现形式? (1)if 表达式 语句体 end (2)if 表达式 语句体1 else 语句体2

end (3)if 表达式1 语句体1 elseif 表达式2 语句体2 end (4)if 表达式1 语句体1 elseif 表达式2 语句体2 else 语句体3 end

8.5 说明break语句和return语句的用法。

break语句用于终止for循环和while循环的执行。如果遇到break语句,则退出循环体,继续执行循环体外的下一行语句。在嵌套循环中,break只存在于最内层的循环中。

return语句用于终止当前的命令序列,并返回到调用的函数或键盘,也用于终止keyboad方式,在MATLAB中,被调用的函数运行结束后会自动返回调用函数,使用return语句时将return插入被调用函数的某一位置,根据某种条件迫使被调用函数提前结束并返回调用函数。

8.6 有一周期为4?的正弦波上叠加了方差为0.1的正态分布的随机噪声的信号,用循环结构编制一个三点线性滑动平均的程序。(提示:①用0.1*randn(1,n)产生方差为0.1的正态分布的随机噪声;②三点线性滑动平均就是依次取每三个相邻数的平均值作为新的数据,如x1(2)=(x(1)+x(2)+x(3))/3,x1(3)=( x(2)+x(3)+x(4))/3??)

t=0:pi/50:4*pi; n=length(t);

y=sin(t)+0.1*randn(1,n); ya(1)=y(1); for i=2:n-1

ya(i)=sum(y(i-1:i+1))/3; end ya(n)=y(n);

plot(t,y,'c',t,ya,'r','linewidth',2)

8.7 编制一个解数论问题的函数文件:取任意整数,若是偶数,则用2除,否则乘3加1,重复此过程,直到整数变为1。

function c=collatz(n)

% collatz

% Classic “3n+1” Ploblem from number theory c=n;

while n>1

if rem(n,2)==0 n=n/2; else

n=3*n+1; end

c=[c n]; end

8.8 有一组学生的考试成绩(见表),根据规定,成绩在100分时为满分,成绩在90~99之间时为优秀,成绩在80~89分之间时为良好,成绩在60~79分之间为及格,成绩在60分以下时为不及格,编制一个根据成绩划分等级的程序。

学生姓名 成 绩

Name=['王','张','刘','李','陈','杨','于','黄','郭','赵']; Marks=[72,83,56,94,100,88,96,68,54,65];

% 划分区域:满分(100),优秀(90-99),良好(80-89),及格(60-79),不及格(<60)。 n=length(Marks); for i=1:n a{i}=89+i; b{i}=79+i; c{i}=69+i; d{i}=59+i; end; c=[d,c];

% 根据学生的分数,求出相应的等级。 for i=1:n

switch Marks(i) case 100

%得分为100时

Rank(i,:)=' 满分'; case a Rank(i,:)=' 优秀'; case b case c otherwise end end

% 将学生姓名,得分,级等信息打印出来。 disp(' ')

disp(['学生姓名 ',' 得分 ',' 等级']);

%得分在80~89之间

Rank(i,:)=' 良好';

%得分在60~79之间 %得分低于60。

Rank(i,:)=' 及格'; Rank(i,:)='不及格';

%得分在90~99之间

王 72 张 83 刘 56 李 94 陈 100 杨 88 于 96 黄 68 郭 54 赵 65

disp('--------------------------') for i=1:10;

disp([' ',Name(i),' ',num2str(Marks(i)),' end

学生姓名 得分 等级

----------------------------------------- 王 72 及格 张 83 刘 56 李 94

良好 不及格 优秀

',Rank(i,:)]);

陈 100 满分 杨 88 良好 于 96 优秀 黄 68 及格 郭 54 赵 65

8.9 编写一段程序,能够把输入的摄氏温度转化成华氏温度,也能把华氏温度转换成摄氏温度。

k=input('选择转换方式(1--摄氏转换为华氏,2--华氏转换为摄氏):'); if k~=1 & k~=2

disp('请指定转换方式') break end

tin=input('输入待转变的温度(允许输入数组):'); if k==1

tout=tin*9/5+32; % 摄氏转换为华氏 k1=2; elseif k==2

tout=(tin-32)*5/9; % 华氏转换为摄氏 k1=1; end

str=[' ?C';' ?F'];

disp(['转换前的温度', ' ', '转换后的温度'])

disp([' ',num2str(tin),str(k,:), ' ', num2str(tout),str(k1,:)])

8.10 keyboard命令的作用是什么?当在函数中使用keyboard命令时,是否可以在工作空间浏览器中观察和修改函数中的局部变量?退出keyboard状态的命令是什么?编一个函数文件,在其中设置keyboard,观察变量情况。

当运行中的程序遇到keyboard命令时会暂时停止运行,将控制权交给键盘,这时命令窗口的提示符变为K>>,可以在命令窗口或工作空间浏览器中观察和修改变量内容,如果keyboard命令设置在函数中,则可以观察和修改函数中的局部变量,检查或修改完成后,键入return命令,退出keyboard状态,控制权交还给系统,程序将继续运行。

第9章 Simulink基础

9.1 什么是Simulink ?

Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持连续的、离散的或二者混合的线性和非线性系

不及格 及格

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库matlab经典习题及解答(7)在线全文阅读。

matlab经典习题及解答(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/459095.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: