《MATLAB语言》上机实验报告 班级: 终极一班 学号:9527 姓名:小丢 4.输入x,y的值,并将它们的值互换后输出。 function change(x,y) a=x; x=y; y=a; x y
>> x=2; >> y=1;
>> change(x,y) x = 1 y = 2
5.利用rand产生10个随机数,利用for循环对其进行排序(从大到小)。
A=rand(1,10); temp=1;
while(temp==1) temp=0; for n=1:9;
if(A(1,n)
A(1,n)=A(1,n+1); A(1,n+1)=t; temp=1; end end end A A =
Columns 1 through 4
0.7847 0.7702 0.7218 0.4714 Columns 5 through 8
0.4624 0.4609 0.4243 0.3225 Columns 9 through 10 0.1759 0.0358
要求:只需给出程序,不要列出运行结果。
《MATLAB语言》上机实验报告 班级: 终极一班 学号:9527 姓名:小丢 实验9 MATLAB序设计(2)
1. 编写一个M函数文件计算下列级数的和:
x和n的值由input指令给出。
function f=test
x=input('Input the x:\\n'); n=input('Input the n:\\n'); j=1; f2=0; for i=1:n; j=1; for k=1:i; j=j*k; f1=x^i/j; end
f2=f2+f1; end f=f2+1;
>> test Input the x: 12
Input the n: 12 ans =
9.3741e+04
2.编制m文件,等待键盘输入,输入密码123,密码正确,显示输入密码正确,程序结束;否则提示,重新输入。
function test n=0; k=0;
n=input('请输入密码(整数)\\n'); while(k==0) if n==123
disp('密码正确') k=1; else
k=0;
n=input('密码错误,请重新输入密码(整数) \\n'); end end
>> test
请输入密码(整数) 124
密码错误,请重新输入密码(整数) 124
密码错误,请重新输入密码(整数) 123 输入正确
要求:只需给出程序,不要列出运行结果。
《MATLAB语言》上机实验报告 班级: 终极一班 学号:9527 姓名:小丢 3.编制m文件,输入n(正整数),显示所有小于n的质数。
function leap=panduan(n) leap=1;
for i=2:sqrt(n+1) if mod(n,i)==0 leap=0; break; end end
function leap=panduan(n) leap=1;
for i=2:sqrt(n+1) if mod(n,i)==0 leap=0; break; end end
function zhishu(n) for m=2:n
if panduan(m)==1 disp(m); end end
>> zhishu(15) 2 3 5 7 11 13
4.数组[1:99]中素数(即质数)元素的和
function sum1 k=0;
for m=1:99
if panduan(m)==1 k=k+m; end end k
>> sum1 k =
1061
5.从键盘输入若干个数,当输入0时结束输入,求这些数的平均值以及平方和。
function cal s=0; n=0; s2=0;
temp=input(''); while(temp~=0) s=s+temp;
s2=s2+temp.^2; n=n+1;
temp=input(''); end s./n s2
cal 1 2 3 4 5 6 7 8 9 0
ans = 5 s2 = 285
要求:只需给出程序,不要列出运行结果。
《MATLAB语言》上机实验报告 班级: 终极一班 学号:9527 姓名:小丢 实验10 MATLAB数据文件I/O (1)
1. 教材《MATLAB基础与实例进阶》P.111页,思考与练习2 操作题(1)-(2) (1)将工作目录下的后缀为‘.dat’的文件更改为‘.bin'作为后缀。
filename1='mydata.dat';
fid1=fopen(filename1,'r'); a=fread(fid1)
filename2='mydata.bin'; fid2=fopen(filename2,'r'); fwrite(fid2,a); b=fread(fid2)
(2)使用MATLAB导入一个WAVE格式的音频文件,并比较与waveread函数读取音频文件的差异。
用waveread函数读取音频文件时:[y,fs,nbits] = wavread(file),file指定音频文件名,y是音频数据。另外该语句还能够返回该音频文件的采样率fs,和采样位数nbits,而使用MATLAB导入WAVE格式的音频文件,是不能控制音频文件的采样率,不能够精确调整。
要求:只需给出程序,不要列出运行结果。
《MATLAB语言》上机实验报告 班级: 终极一班 学号:9527 姓名:小丢 实验11 MATLAB数据文件I/O (2)
1. 教材《MATLAB基础与实例进阶》P.111页,思考与练习2 操作题(3)-(4)
(3)读取例4-8中最后两列数据。
fid=fopen('my.bin','w');
alldata=reshape([1:20],4,5); fwrite(fid,alldata); fid=fopen('my.bin'); fseek(fid,12,'bof');
last_two=fread(fid,[4,2]) fclose(fid);
(4)使用textread函数读出例4-12中的所有浮点数,要求小数点后只有一位数。
clc;clear all;close all;
[names,rest]=textread('mytextfile.txt','%s%[^\\n]','delimiter',','); a1=str2num(rest{1}); a2=str2num(rest{2}); a3=str2num(rest{3}); a4=str2num(rest{4});
b=[a1(3),a2(3),a3(3),a4(3)]; fprintf('%4.1f\\n',b);
要求:只需给出程序,不要列出运行结果。