当前位置:文档之家› Matlab程序设计教改实践

Matlab程序设计教改实践

Matlab程序设计教改实践
Matlab程序设计教改实践

MATLAB程序设计教程(第二版)课后答案(可编辑修改word版)

MATLAB 第二版课后答案unit3-8 unit3 实验指导 1、 n=input('请输入一个三位数:'); a=fix(n/100); b=fix((n-a*100)/10); c=n-a*100-b*10; d=c*100+b*10+a 2(1) n=input('请输入成绩'); switch n case num2cell(90:100) p='A'; case num2cell(80:89) p='B'; case num2cell(70:79) p='C'; case num2cell(60:69) p='D'; otherwise p='E'; end price=p (2)n=input('请输入成绩'); if n>=90&n<=100 p='A'; elseif n>=80&n<=89 p='B'; elseif n>=70&n<=79 p='C'; elseif n>=60&n<=69 p='D'; else p='E'; end price=p (3)try n; catch price='erroe' end 3 n=[1,5,56,4,3,476,45,6,3,76,45,6,4,3,6,4,23,76,908,6];

b=n(1); for m=2:20 if n(m)>a a=n(m); elseif n(m)=0 disp(A([n],:)); elseif n<0 disp(lasterr); else disp(A([6],:)); disp(lasterr); end 7(1) f=[];

实验二 Matlab程序设计基本方法1

实验二Matlab程序设计基本方法 覃照乘自092 电气工程学院 一、实验目的: 1、熟悉MATLAB 程序编辑与设计环境 2、掌握各种编程语句语法规则及程序设计方法 3、函数文件的编写和设计 4、了解和熟悉跨空间变量传递和赋值 二、实验基本知识: ◆for循环结构 语法:for i=初值:增量:终值 语句1 …… 语句n end 说明:1.i=初值:终值,则增量为1。 2.初值、增量、终值可正可负,可以是整数,也可以是小数,只须符合数学逻辑。 ◆while 循环结构 语法:while 逻辑表达式 循环体语句 end 说明:1、whiIe结构依据逻辑表达式的值判断是否执行循环体语勾。若表达式的值为真,执行循环体语句一次、在反复执行时,每次都要进行判断。若表达 式的值为假,则程序执行end之后的语句。 2、为了避免因逻辑上的失误,而陷入死循环,建议在循环体语句的适当位 置加break语句、以便程序能正常执行。(执行循环体的次数不确定; 每一次执行循环体后,一定会改变while后面所跟关系式的值。) 3、while循环也可以嵌套、其结构如下:

while逻辑表达式1 循环体语句1 while逻辑表达式2 循环体语句2 end 循环体语句3 end ◆if-else-end分支结构 if 表达式1 语句1 else if 表达式2(可选) 语句2 else(可选) 语句3 end end 说明:1.if结构是一个条件分支语句,若满足表达式的条件,则往下执行;若不满足,则跳出if结构。 2.else if表达式2与else为可选项,这两条语句可依据具体情况取舍。 3.注意:每一个if都对应一个end,即有几个if,记就应有几个end。 ◆switch-case结构 语法:switch表达式 case常量表达式1 语句组1 case常量表达式2 语句组2 …… otherwise 语句组n end

D2_《C/C 语言程序设计》计算机实践_题目列表

要求:所有程序至少由二个函数完成 A类-简单题 A1:设计一个菜单程序,选择数字键1~3分别在屏幕中间输出正三角形、菱形和空心的平行四边形,选择数字4结束操作并回到操作系统状态。 A3:从键盘上输入三个矩阵,输出三个矩阵主对角线的和及乘积。 A4:字符左右排序 要求编制函数jsSort(),以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组中。 排序条件:将字符串从中间一分为二,左边部分按字符的ASCII码升序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参与处理,仍放在原位置上。 例如,原字符串: dcbahgfe 432198765 则处理后字符串: hgfe abcd 876591234 A5:简单的文件操作 编程完成读出文件 sfile.txt 中的内容,反序写入另一个文件 dfile.txt 中去。 A6:有一个一维数组,内放10个学生成绩,输出各分数段人数、平均分、最高分和最低分,保留小数点后一位。 A7:编写程序求出555555的约数中最大的三位数是多少。 A8:编写程序,实现比较两个分数的大小。 比较方法是:先比较两个数的分母,分母相同比较分子;否则通分后比较。 A9:求这样一个三位数,该三位数等于其每位数字的阶乘之和。 A10:求兔子问题。第1年有1对兔子,每对兔子从出生后第3个年起,就可每年生1对兔子,兔子的寿命是6年,问第n年有多少对兔子? A11:用C实现时钟程序。 A12:有5个人坐在一起,问第5个人多少岁,他说比第4个人大2岁。问第4个人多少岁,他说比第3个人大2岁。问第3个人多少岁,他说比第2个人大2岁。问第2个人多少岁,他说比第1个人大2岁。问第1个人多少岁,他说是10岁。请问第5个人多大? A13.用指针编写字符串函数strcpy,strcmp,strcat,strlen。并编写程序加以验证。 A14:给定某个年、月、日,计算出这一天为该年的第几天。要求写出计算闰年的函数和计算日期的函数。

MATLAB程序设计教程课后答案

实验指导 1、 n=input('请输入一个三位数:'); a=fix(n/100); b=fix((n-a*100)/10); c=n-a*100-b*10; d=c*100+b*10+a 2(1) n=input('请输入成绩'); switch n case num2cell(90:100) p='A'; case num2cell(80:89) p='B'; case num2cell(70:79) p='C'; case num2cell(60:69) p='D'; otherwise p='E'; end price=p (2)n=input('请输入成绩'); if n>=90&n<=100 p='A'; elseif n>=80&n<=89 p='B'; elseif n>=70&n<=79 p='C'; elseif n>=60&n<=69 p='D'; else p='E'; end price=p (3)try n; catch price='erroe' end 3 n=[1,5,56,4,3,476,45,6,3,76,45,6,4,3,6,4,23,76,908,6]; a=n(1);

for m=2:20 if n(m)>a a=n(m); elseif n(m)=0 disp(A([n],:)); elseif n<0 disp(lasterr); else disp(A([6],:)); disp(lasterr); end 7(1) f=[]; for n=1:40

湖北师范学院2010年专升本《C语言程序设计》试卷

湖北师范学院2010年“专升本”招生考试 《C语言程序设计》试题 一、选择题(本题共20小题,每题2分,共40分) 1.以下不合法的用户标识符是()。A)S2_KEY B)Int C) 4s D)_char 2.设有 int x=11; 则表达式 (++x)%3 的值是()。A)0 B)1 C)2 D)3 3.C语言源程序名的后缀是()。 A).exe B).cp C).obj D).c 4.若在定义语句:int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是()。 A)scanf("%d",a,b,c); B)scanf("%d%d%d",a,b,c); C)scanf("%d",p); D)scanf("%d",&p); 5.C语言中运算对象必须是整型的运算符是()。 A) %= B)/C) =D) 〈= 6.若有定义语句:int a[3][6]; ,按在内存中的存放顺序,a数组的第10个元素是()。A)a[0][4] B)a[0][3] C)a[1][4] D)a[1][3] 7.若要求定义具有10个int型元素的一维数组a,则以下定义语句中错误的是 A)#define N 10 Int a[N]B)#define n 5 Int a[2*n]C)int a[5+5]D)int n=10,a[n] 8.语句printf("a\bre\'hi\'y\\\bou\n");的输出结果是()。(说明:'\b'是退格符) A)re'hi'you B)abre'hi'y\bou C)a\bre\'hi\'y\bou D)a\bre\'hi\'y\\\bou 9.下列程序执行后的输出结果是()。 A)A B) B C) F D) G void main() { int x='f'; printf("%c \n",'A'+(x-'a'+1)); } 10.若变量已正确定义,有以下程序段

matlab程序设计实践-牛顿法解非线性方程

中南大学MATLAB程序设计实践学长有爱奉献,下载填上信息即可上交,没有下载券的自行百度。所需m文件照本文档做即可,即新建(FILE)→脚本(NEW-Sscript)→复制本文档代码→运行(会跳出保存界面,文件名默认不要修改,保存)→结果。第一题需要把数据文本文档和m文件放在一起。全部测试无误,放心使用。本文档针对做牛顿法求非线性函数题目的同学,当然第一题都一样,所有人都可以用。←记得删掉这段话 班级: ? 学号: 姓名:

一、《MATLAB程序设计实践》Matlab基础 表示多晶体材料织构的三维取向分布函数(f=f(φ1,φ,φ2))是一个非常复杂的函数,难以精确的用解析函数表达,通常采用离散 空间函数值来表示取向分布函数,是三维取向分布函数的一个实例。 由于数据量非常大,不便于分析,需要借助图形来分析。请你编写一 个matlab程序画出如下的几种图形来分析其取向分布特征: (1)用Slice函数给出其整体分布特征; " ~ (2)用pcolor或contour函数分别给出(φ2=0, 5, 10, 15, 20, 25, 30, 35 … 90)切面上f分布情况(需要用到subplot函数);

(3) 用plot函数给出沿α取向线(φ1=0~90,φ=45,φ2=0)的f分布情况。 (

备注:数据格式说明 解: (1)( (2)将文件内的数据按照要求读取到矩阵f(phi1,phi,phi2)中,代码如 下: fid=fopen(''); for i=1:18 tline=fgetl(fid); end phi1=1;phi=1;phi2=1;line=0; f=zeros(19,19,19); [ while ~feof(fid) tline=fgetl(fid); data=str2num(tline); line=line+1;数据说明部分,与 作图无关此方向表示f随着 φ1从0,5,10,15, 20 …到90的变化而 变化 此方向表示f随着φ 从0,5,10,15, 20 … 到90的变化而变化 表示以下数据为φ2=0的数据,即f(φ1,φ,0)

MATLAB程序设计教程(第二版)第三章实验报告下载

大学社区网收集整理https://www.doczj.com/doc/ca10371096.html, 评分 日期湖南商学院北津学院实验报告 课程名称MATLAB科学计算编程语言 实验名称MATLAB程序设计 专业班级信科1121班 姓名xxx 学号xxx 实验日期2012年11月5日 2012—2013学年度第一学期 一、实验目的 1.掌握利用if语句、switch语句实现选择结构的方法。 2.掌握利用for语句、while语句实现循环结构的方法。 3.熟悉利用向量运算来代替循环操作的方法并理解MATLAB程序设计的特点 4.掌握定义和调用MATLAB函数的方法。

二、实验环境 系统windows7旗舰版 处理器Intel(R)Core(TM)i7-3610M CPU @ 2.30GHz 安装内存 4.00GB (3.07GB 可用)系统类型64位操作系统运行环境 MATLAB 5.3 三、实验基本原理 利用上课所学知识解决以下问题: 1.从键盘输入一个3位数的整数,将它反向输出。如输入639,输出936。 2.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。 要求: (1)分别用if 语句和switch 语句实现。 (2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。3.输入20个数,求其中最大数和最小数。要求分别用循环结构和调用MATLAB 的max 函数、min 函数来实现。 4.23.0ln )3.0sin(23.03.0a a e e y a a +++?=?,当a 取-3.0、-2.9、-2.8、…、2.8、2.9、 3.0时,求各点的函数值。要求分别用顺序结构和循环结构实现。 5.当n 分别取100、1000、10000时,求下列各式的值: (1)) 6...(n 1...31211122222π=+++++(2)) 2...()12)(12()2)(2(...756653443122π =??? ?????+?????????××????????××????????××n n n n 要求分别用循环结构和向量运算(使用sum 函数)来实现。 6.建立5×6矩阵,要求输出矩阵第n 行元素。当n 值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。 7已知,o999 ) 20()30()40(f f f y += (1)当)5ln(10)(2 ++=n n n f 时,y 的值是多小。 (2)当+×+×+×=433221)(n f …+)1(+×n n 时,y 的值是多小。 8.先用函数的递归调用定义一个函数文件求 ∑=n i m i 1,然后调用该函数文件求

实验3MATLAB程序设计

1,编写M 函数实现求一个数是否为素数,再编写一主程序(脚本文件),要求通过键盘输入一个整数,然后调用判断素数函数,从而确定它是否素数。 x=input('请输入一个整数x:'); if myprime(x) disp('您输入的整数x是一个素数。') else disp('您输入的数x不是一个素数。') end function y=myprime(x) y=1; for i=2:fix(sqrt(x)) if mod(x,i)==0 y=0; end end 2,编写M 函数统计一数值中零的个数,然后编写脚本文件,实现统计从1—2007 中零的总个数。 function num=number0(a) %统计十进制数值中0的个数 sa=num2str(a);%将数值装化为字符串 num=length(find(sa=='0'));% ));%求取字符串中'0’的个数 y=0;

for a=1:2006 num=number0(a); y=num+y; end disp(y) 504 3,编写程序计算x∈[-3,3],字长0.01:并画出曲线x = -3:0.01:3; y=zeros(size(x)); for i = 1:length(x) if -3<= x(i)& x(i)<=-1 y(i)=(-x(i).^2-4*x(i)-3)/ 2; elseif -1<= x(i) & x(i)<=1 y(i)=-x(i).^2+1; elseif 1<=x(:,i)<=3 y(i)=(-x(i).^2+4*x(i)-3)/2; end end plot(x,y) -3-2-10123

2010年兰州交通大学程序设计801真题答案

考研算法设计题(交大2010年试题) 1、请编写程序,利用随机函数模拟投币结果,设共投币100次,求"两个正面"、"两个反面"、"一正一反"三种情况各出现几次。 2、由用户输入出生日期和当前日期,请编写程序计算实际年龄。 3、试编写程序求Hermite函数值: H0(x)=1 H1(x)=2x Hn(x)=2xHn-1(x)-2(n-1)Hn-2(x) n>1 4、试求某个三位数ABC,要求满足以下条件: a)A>B>C>0 b)交换A、C位置得到的新数比原数少495 c)对ABC作全排列得到的6个三位数之和为2886 5、请编写程序,从键盘接收一个字符串,然后按照字符顺序从小到大进行排序,并删除重复的字符。 6、编写程序,从键盘输入若干行,输入后把它们存储到一个磁盘文件中,再从该文件中读取这些数据,将其中的小写字母转换成对应的大写字母后在屏幕上显示出来。 7、A、B、C、D、E、F这6个人参加百米决赛,甲、乙、丙、丁4人猜测谁是冠军: 甲:冠军不是A就是B 乙:冠军决不是C 丙:冠军是C、D、E、F中的一位 丁:冠军就B或D 这4人所说的话只有一句是正确的,编写程序求谁是百米冠军。 8、有一磁盘文件"gstudent"内存放研究生(研究生数<10)数据,包括学号、姓名、性别、年龄、专业。试

编写程序完成以下功能:将学号、专业单独抽出来另建一个简明的研究生专业文件。 参考答案: //1、请编写程序,利用随机函数模拟投币结果,设共投币100次,求"两个正面"、"两个反面"、"一正一反"三种情况各出现几次。 #include #include #include #define N 100 void main() { int a1,a2,i,liangzheng,yizhyifan,liangfan; liangzheng=yizhyifan=liangfan=0; srand(time(NULL)); for(i=1;i<=N;i++) { a1=rand()%2; a2=rand()%2; if(a1*a2) liangzheng++; else if(a1+a2==1) yizhyifan++; else

刘卫国版MATLAB程序设计与应用课后实验六八九

实验六 高层绘图操作 %第一题: 程序代码如下: x=linspace(0,2*pi,101); y=(0.5+3*sin(x)./(1+x.^2)).*cos(x); plot(x,y) 01234567 -1 -0.5 0.5 1 1.5 %第二题: %(1) 程序代码如下: x=linspace(-2*pi,2*pi,100); y1=x.^2; y2=cos(2*x); y3=y1.*y2; plot(x,y1,'b-',x,y2,'r:',x,y3,'y--'); text(4,16,'\leftarrow y1=x^2'); text(6*pi/4,-1,'\downarrow y2=cos(2*x)'); text(-1.5*pi,-2.25*pi*pi,'\uparrow y3=y1*y2');

-8 -6 -4 -2 2 4 6 8 -30-20 -10 10 20 30 40 %(2) 程序代码如下: x=linspace(-2*pi,2*pi,100); y1=x.^2; y2=cos(2*x); y3=y1.*y2; subplot(1,3,1);%分区 plot(x,y1); title('y1=x^2');%设置标题 subplot(1,3,2); plot(x,y2); title('y2=cos(2*x)'); subplot(1,3,3); plot(x,y3); title('y3=x^2*cos(2*x)');

-10 10 0510 15202530 35 40y1=x 2 -10 10 -1-0.8 -0.6 -0.4-0.200.20.4 0.6 0.8 1y2=cos(2*x) -10 10 -30-20 -10 10 20 30 40 y3=x 2*cos(2*x) %(3) 程序代码如下: x=linspace(-2*pi,2*pi,20); y1=x.^2; subplot(2,2,1);%分区 bar(x,y1); title('y1=x^2的条形图');%设置标题 subplot(2,2,2); stairs(x,y1); title('y1=x^2的阶梯图'); subplot(2,2,3); stem(x,y1); title('y1=x^2的杆图'); subplot(2,2,4); fill(x,y1,'r');%如果少了'r'则会出错 title('y1=x^2的填充图'); %其他的函数照样做。

2010上半年软件设计师上午试题附答案

2010软件设计师上午试题和参考答案 ● 为实现程序指令的顺序执行,CPU (1)中的值将自动加1。 (1)A.指令寄存器OR) B.程序计数器(PC) C.地址寄存器(AR) D.指令译码器(ID) 参考答案:B ● 某计算机系统由下图所示的部件构成,假定每个部件的千小时可靠度都为R,则该系统的千小时可靠度为(2)。 (2) A. R+2R/4 B. R+R2/4 C. R(1-(1-R)2) D. R(1-(1-R)2)2 参考答案:D ● 以下关于计算机系统中断概念的叙述中,正确的是(3)。 (3)A.由I/O设备提出的中断请求和电源掉电都是可屏蔽中断 B.由I/O设备提出的中断请求和电源掉电都是不可屏蔽中断 C.由I/O设备提出的中断请求是可屏蔽中断,电源掉电是不可屏蔽中断 D.由I/O设备提出的中断请求是不可屏蔽中断,电源掉电是可屏蔽中断 参考答案:C 参考答案:B/D ● 计算机指令一般包括操作码和地址码两部分,为处折执行一条指令,其(5)。(5) A.操作码应存入指令寄存器(IR),地址码应存入程序计数器(PC) B.操作码应存入程序计数器(PC),地址码应存入指令寄存器(IR) C.操作码和地址码都应存入指令寄存器(IR) D.操作码和地址码都应存入程序计数器(PC) 参考答案:C ● 关于64位和32位微处理器,不能以2倍关系描述的是(6)。 (6) A.通用寄存器的位数 B.数据总线的宽度 C.运算速度 D.能同时进行运算的位数

参考答案:C ● Outlook Express作为邮件代理软件有诸多优点,以下说法中,错误的是(7)。 (7) A.可以脱机处理邮件 B.可以管理多个邮件账号 C.可以使用通讯簿存储和检索电子邮件地址 D.不能发送和接收安全邮件 参考答案:D ●杀毒软件报告发现病毒Macro.Melissa,由该病毒名称可以推断病毒类型是(8),这类病毒主要感染目标是(9)。 (8)A.文件型 B引导型 C.目录型 D.宏病毒 (9)A. EXE或COM可执行文件 B.Word或Excel文件 C. DLL系统文件 D磁盘引导区 参考答案:(8)D (9)B ●两个以上的申请人分别就相同内容的计算机程序的发明创造,先后向国务院专利行政部门提出申请,(10)可以获得专利申请权。 (10)A.所有申请人均 B先申请人 C.先使用人 D.先发明人 参考答案:B ●王某是一名程序员,每当软件开发完成后均按公司规定完成软件文档,并上交公司存档,自己没有留存。因撰写论文的需要,王某向公司要求将软件文档原本借出复印,但遭到公司拒绝,理由是该软件文档属于职务作品,著作权归公司。以下叙述中,正确的是(11)。 (11)A.该软件文档属于职务作品,著作权归公司 B.该软件文档不属于职务作品,程序员享有著作权 C.该软件文档属于职务作品,但程序员享有复制权 D.该软件文档不属于职务作品,著作权由公司和程序员共同享有 参考答案:A ●在ISO制定并发布的MPEG系列标准中,(12)的音、视频压缩编码技术被应用到VCD中,(13)标准中的音、视频压缩编码技术被应用到DVD中,(14)标准中不包含音、视频压缩编码技术。 (12)A. MPEG-1 B.MPEG-2 C.MPEG-7 D.MPEG-21 (13)A. MPEG-1 B.MPEG-2 C.MPEG-4 D.MPEG-21 (14)A. MPEG-1 B.MPEG-2 C.MPEG-4 D.MPEG-7

1实验一 Matlab程序设计与M文件(1)

实验一 Matlab 程序设计与M 文件 一、实验目的 1. 掌握Matlab 程序设计常用命令,如,循环、选择、暂停、显示输出、输入变量值等。 2. 掌握Matlab 的M 文件的创建于使用,包括脚本文件和函数文件。 3. 掌握常用的编程技巧。 二、实验内容 1. 输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。其中90分~100分为A ,80分~89分为B ,79分~79分为C ,60分~69分为D ,60分以下为E 。 要求: (1) 分别用if 语句和switch 语句实现。 (2) 输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。 2. 硅谷公司员工的工资计算方法如下: (1) 工作时数超过120小时者,超过部分加发15%。 (2) 工作时数低于60小时者,扣发700元。 (3) 其余按每小时84元计发。 试编程按输入的工号和该号员工的工时数,计算应发工资。 3. 根据2 222211116123n π=++++,求π的近似值。当n 分别取100、1000、10000时,结果是多少? 要求:分别用循环结构和向量运算(使用sum 函数)来实现。 4. 考虑以下迭代公式: 1n n a x b x +=+ 其中a 、b 为正的学数。 (1) 编写程序求迭代的结果,迭代的终止条件为|x n+1-x n |≤10-5,迭代初值x 0=1.0,迭代次数不超过500次。 (2) 如果迭代过程收敛于r ,那么r 的准确值是,当(a,b)的值 取(1,1)、(8,3)、(10,0.1)时,分别对迭代结果和准确值进行比较。

5. 已知 12312311021 323 n n n n f n f n f n f f f f n ---==??==??==??=-+>? 求f 1~f 100中: (1) 最大值、最小值、各数之和。 (2) 正数、零、负数的个数。 6. 若两个连续自然数的乘积减1是素数,则称这两个边疆自然数是亲密数对,该素数是亲密素数。例如,2×3-1=5,由于5是素数,所以2和3是亲密数,5是亲密素数。求[2,50]区间内: (1) 亲密数对的对数。 (2) 与上述亲密数对对应的所有亲密素数之和。 7. 设2411()(2)0.1(3)0.01 f x x x =+-+-+,编写一个MATLAB 函数文件fx.m ,使得调用f(x)时,x 可用矩阵代入,得出的f(x)为同阶矩阵。 8. 一物理系统可用下列方程组来表示: 111211 12 220cos sin 0sin 0cos 000sin 000cos 1a m m a m g m N m N m g θθθθθθ--??????????????????=??????-??????-?????? 从键盘输入m 1、m 2和θ的值,求a 1、a 2、N 1和N 2的值。其中g 取9.8,输入θ时以角度为单位。 要求:定义一个求解线性方程组AX=B 的函数文件,然后在命令文件中调用该函数文件。

MATLAB程序设计实验报告

MATLAB 程序设计实验报告 一、实验目的 1. 通过实验熟悉MATLAB 仿真软件的使用方法; 2. 掌握用MATLAB 对连续信号时域分析、频域分析和s 域分析的方法,利用绘图命令绘制出典型信号的波形,了解这些信号的基本特征; 3. 掌握用MATLAB 对离散信号时域分析、频域分析和z 域分析的方法,利用绘图命令绘制出典型信号的波形,了解这些信号的基本特征; 4. 通过绘制信号运算结果的波形,了解这些信号运算对信号所起的作用。 二、实验设备 1. 计算机 : 2. MATLAB R2007a 仿真软件 三、实验原理 对系统的时域分析 信号的时域运算包括信号的相加、相乘,信号的时域变换包括信号的平移、反折、倒相及信号的尺度变换。 (1)信号的相加和相乘:已知信号)(1t f 和)(2t f ,信号相加和相乘记为 )()(1t f t f =)(2t f +;)()(1 t f t f =)(2t f *。 (2)信号的微分和积分:对于连续时间信号,其微分运算是用diff 函数来完成的,其语句格式为:diff(function,’variable’,n),其中function 表示需要进行求导运算的信号,或者被赋值的符号表达式;variable 为求导运算的独立变量;n 为求导的阶数,默认值为求一阶导数。连续信号的积分运算用int 函数来完成,语句格式为:diff(function,’variable’,a,b),其中function 表示需要进行被积信号,或者被赋值的符号表达式;variable 为求导运算的独立变量;a,b 为积分上、下限,a 和b 省略时为求不定积分。 (3)信号的平移、翻转和尺度变换 信号的平移包含信号的左移与右移,信号的翻转包含信号的倒相与折叠,平移和翻转信号不会改变信号)(t f 的面积和能量。信号的尺度变换是对信号)(t f 在时间轴上的变化,可使信号压缩或扩展。)(at f 将原波形压缩a 倍,)/(a t f 将原波形扩大a 倍。 ¥ 对系统频率特性的分析

04737 2010年10月c++程序设计试题及答案

全国2010年10月自学考试C++程序设计试题 课程代码:04737 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。 错选、多选或未选均无分。 1.C++中注释“∥”的有效范围是() A.从“∥”开始到行尾 B.从“∥”开始到下一个“∥” C.“∥”及其后一个字符 D.从“∥”开始到程序尾 2.假定MyClass为一个类,则该类的复制构造函数的声明语句为() A.MyClass&(MyClass x); B.MyClass(MyClass x); C.MyClass(MyClass&x); D.MyClass(MyClass *x); 3.下列选项不是C++关键字的是() A.typedef B.void C.bool D.inc 4.用于标识十进制常量的前缀或后缀是() A.无前后缀 B.后缀L或l C.前缀0 D.前缀0x 5.设intx=56;int r=x;若cout<<&x;显示0012FF7A,则cout<<&r;输出值为() A.56 B.00l2FF7A C.0012FF7B D.未知 6.使用下列哪个流格式控制符可设置转换基数为八进制() A.dec B.oct C.hex D.endl 7.C++中是否允许在类结构中定义函数() A.不允许 B.允许 C.仅允许定义构造函数 D.只不允许定义构造函数 8.设函数void subone(int&)将形参减1,如有整型变量int k=10,则执行subone(k);后, k的值为() A.9 B.10 C.11 D.未知 9.对函数int max(int a,int b=0,intc=0,int d=0,int e=0);下列调用方式正确的是() A.int m=max(10,11,12,13,14); B.int m=max(10,,12,13,14); C.int m=max(10,1l,,13,14); D.int m=max(10,11,12,,14); 10.类MyClass的定义如下: class MyClass { public: MyClass(){} MyClass(inti){value=new int(i);}

matlab程序设计作业

Matlab程序设计作业 姓名: 学号: 专业:

? MATLAB 程序设计》作业 1、考虑如下x-y 一组实验数据: x=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] y 二[1.2, 3, 4, 4, 5, 4.7, 5, 5.2, 6, 7.2] 分别绘出plot 的原始数据、一次拟合曲线和三次拟合曲线,给出 原始曲线 MATLAB 代码和运行结果。 7 6 5 4 3 2 2 3 4 5 6 7 8 9 10

7 6.5 6 5.5 5 4.5 4 3.5 3 2.5 10 一次拟合 三次拟合

x=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; y=[1.2, 3, 4, 4, 5, 4.7, 5, 5.2, 6, 7.2]; figure; plot(x,y) p1=polyfit(x,y,1); y1=polyval(p1,x); figure; plot(x,y1) p2=polyfit(x,y,3); y2=polyval(p2,x); figure; plot(x,y2) 2、在[0, 3n区间,绘制y二Sin(x)曲线(要求消去负半波,即(n 2n)区间内的函数值置零),求出曲线y 的平均值,以及y 的最大值及其最大值的位置。给出执行代码和运行结果。 x=0:pi/1000:3*pi; y=Sin(x); y1=(y>=0).*y; %消去负半波figure(1); plot(x,y1, 'b' ); a=mean(y1) %求出y1 的平均值 b=max(y1) %求出y1 的最大值b, 以及最大值在矩阵中的位置; d=x(find(y1==b)) >> ex1 a = 0.4243 b = 1 d = 1.5708 7.8540 >>

Matlab程序设计教程(第二版)刘卫国课后参考答案解析

第二章 1 求下列表达式的值。 (1) w=sqrt(2)*(1+0.34245*10^(-6)) (2) a=3.5; b=5; c=-9.8; x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2))/tan(b+c)+a (3) a=3.32; b=-7.9; y=2*pi*a^(2)*[(1-pi/4)*b-(0.8333-pi/4)*a] (4) t=[2,1-3*i;5,-0.65]; z=1/2*exp(2*t)*log(t+sqrt(1+t^(2))) 2 求下列表达式 A=[-1,5,-4;0,7,8;3,61,7]; B=[8,3,-1;2,5,3;-3,2,0]; (1) A+6*B A^2-B+eye (2) A*B A.*B B.*A (3) A/B B\A (4) [A,B] [A([1,3],:);B^2] 3 根据已知,完成下列操作 (1) A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]; K=find(A>10&A<25); A(K) (2) A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]; B=A(1:3,:) C=A(:,1:2) D=A(2:4,3:4) E=B*C (3) E

f=input('输入一个数:','s'); f(end :-1:1) 2 用if语句 score=input('请输入成绩:'); if score>=90&&score<=100 disp('A'); elseif score>=80&&score<=89 disp('B'); elseif score>=70&&score<=79 disp('C'); elseif score>=60&&score<=69; disp('D'); elseif score<60&&score>=0; disp('E'); else disp('出错'); end 用switch语句 score=input('请输入成绩:'); switch fix(score/10) case {9,10} disp('A'); case {8} disp('B'); case {7} disp('C'); case {6} disp('D'); case {0,1,2,3,4,5} disp('E'); otherwise disp('出错'); end 第四章1题 1) X=0:10; Y=x-x.^3/6; P lot(x,y)

Matlab程序设计实验报告

实验七Matlab 程序设计 实验目的: 1、掌握建立和执行M 文件的方法; 2、掌握实现选择结构的方法; 3、掌握实现循环结构的方法。 实验内容: 1. 编写用 5 次多项式拟合函数y=sin(x), x [0, 2 ]的脚本M 文件,要求绘图观察拟合的效果。 function shiyan1 x=0:0.5:2*pi y=sin(x) p=polyfit(x,y,5) x1=0:0.2:2*pi y1=polyval(p,x1) plot(x,y, 'b' ,x1,y1, '*r' x =

Columns 1 through 9 0 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000 3.5000 4.0000 Columns 10 through 13 4.5000 5.0000 5.5000 6.0000 y = Columns 1 through 9 0 0.4794 0.8415 0.9975 0.9093 0.5985 0.1411 -0.3508 -0.7568 Columns 10 through 13 -0.9775 -0.9589 -0.7055 -0.2794 p = -0.0056 0.0881 -0.3967 0.2671 0.8902 0.0029 x1 = Columns 1 through 10 0 0.2000 0.4000 0.6000 0.8000 1.0000 1.2000 1.4000 1.6000 1.8000 Columns 11 through 20

2. 2.2000 2.4000 2.6000 2.8000 3.0000 3.2000 3.4000 3.6000 1.8001 Columns 21 through 30 4.0 4.2000 4.4000 4.6000 4.8000 5.0000 5.2000 5.4000 5.6000 5.8000 Columns 31 through 32 6.0 6.2000 y1 = Columns 1 through 10 0.29 0.1886 0.3786 0.5585 0.7172 0.8461 0.9391 0.9926 1.0048 0.9761 Columns 11 through 20 0.9083 0.8048 0.6701 0.5098 0.3301 0.1381 -0.0590 -0.2538 -0.4389 -0.6073 Columns 21 through 30 -0.7524 -0.8685 -0.9505 -0.9949 -0.9991 -0.9626 -0.8863 -0.7732 -0.6288 -0.4606 Columns 31 through 32

C++上机实验题目(2010版)

实验前言(建议认真阅读) 一、上机实验的目的 上机实验的目的是提高学生的分析问题、解决问题的能力和动手能力,通过实践环节理解C++语言的基本结构和程序设计方法。通过亲手编程掌握C++语言编程的方法。 二、实验基本内容 为了使学生在上机实验时目标明确,本实验指导书针对课程内容编写了五个实验。学生在课内机时先完成指导书中标有“*”号的程序,理解所学的知识,在此基础上再编写其他应用程序。 指导书中的五个个实验如下: 1. 函数与编译处理 2. 指针与引用 3. 类和对象 4. 继承和派生类 5. 多态性 三、实验提交 1. 实验题目以附件形式提交,每个附件限一个源程序,附件以自己学号命名; 2. 提交时间定为该次实验课的一周内,过期不再接收。 四、评分和作弊处理 1. 要求提交实验题总数为10题(带“*”号),占期末总评成绩的20%; 2. 存在抄袭和被抄袭的作业,无论抄袭与被抄袭者,本门课程平时成绩以零分记。存在两次及两次以上抄袭和被抄袭者,本门课程以不及格记。 五、实验课要求(重点强调) 1. 严禁QQ、MSN等即时软件工具聊天; 2. 严紧接听手机、发送短信; 3. 严紧玩游戏。

实验1 函数与编译处理 一、实验目的 1. 掌握函数声明、定义和使用的方法; 2. 掌握形参与实参之间的对应关系; 3. 掌握函数调用时,形参、实参之间的“值传递”和“引用传递”的区别; 4. 掌握函数递归调用的方法; 5. 掌握全局变量、局部变量、静态变量的使用方法; 6. 掌握文件包含的使用方法。 二、实验内容 1. 定义两个函数swap1和swap2,目的是实现两个整数的次序交换,其中swap1的参数是传递值参数,swap2的参数是引用参数,在程序中分别调用这两个函数,其输出结果如下所示: 初始值:x=1,y=2 调用swap1后的结果:x=1 y=2 调用swap2后的结果:x=2 y=1 2. 编写一个函数,用来计算从键盘上输入的整数的阶乘。 3. 编写函数判断一个数是否是素数,在主程序中实现输入、输出。 4. 编写一个程序,设计一个函数可以计算并返回输入的4个数的平均值。 *5. 给定某个年、月、日的值,例如,2005年7月11日,计算出这一天属于该年的第几天,要求写出计算闰年的函数和计算日期的函数。 三、实验要求 1. 结合上课内容,写出程序、调试程序,使用典型数据测试程序,并就实验结果加以分析。 2. 整理上机步骤,总结经验和体会。 3. 完成实验,并上交程序。

相关主题
文本预览
相关文档 最新文档