前言:copy代码到自己的电脑上去运行,一个模块一行一行的运行。
%% I.清空环境变量
clear all %清除Workspace中的所有变量
% 清除Command Window中所有命令
%% II.变量命名规则
%%
% 1.变量名区分大小写
A = 6
a = 8
%%
% 2.变量名长度不超过63位
ABCDEFGHIJKLMN12345678910121314151617181920212223242627282930313233334 = 3
%%
% 3.变量名以字母开头,可以由字母、数字和下划线组成,但不能使用标点
% 错误示例 :
%3A = 19
%.a = 20
%/b = 21
% 正确示例:
T_2 = 33
T.2 = 34
%%
% 4.变量名应简洁明了,通过变量名可以直观看出变量所表示的物理意义
A = rand(3,5)
rows = size(A,1)
cols = size(A,2)
%% III. MATLAB数据类型
%%
% 1.数字(加减乘除)
4+4
18-9
6*6
8/4
8==8%(注:等号要双等表示)
%%
% 2.字符与字符串
S = 'abcd'
abs(S)%(求S中对应字符的ASCII码的值,即:将字符型转化为整型)
char(97,98,99)%(将整型的SCII码值转化为字符型)
str='I Love English && Hello World'
length(str)%(求str的长度,空格也算!!!)
%%
% 3.矩阵
%3.1矩阵运算
A = [1 2 3;4 5 6;7 8 9]
a = [1,2,3;4,5,6;7,8,9]%(A与a雷同)
B = A'%将矩阵A转置
C = A(:)%将矩阵A第一列所有行开始组合直到最后一列
b =[1 2 3;4 5 2;3 2 7]
D = inv(b)%求矩阵b的逆
b * D%生成单位矩阵
%3.2多维矩阵
E = zeros(10,5,3)%创建一个三维的10行5列矩阵
E(:,:,1)=rand(10,5)%在三维E中编号为1的一面生成随机数(0-1之间),具体请参考rand函数的使用说明。
E(:,:,2)=randi(5,10,5)%参考randi函数的使用说明,第一个5表示生成随机数的最大值
E(:,:,3)=randn(10,5)%参考randn函数的使用说明
%%
% 4.元胞数组
A = cell(1,6)
A{2}=eye(3)%注:这与其他语言不一样,这是从1开始的不是从0开始的
A{6}=magic(6)%生产6x6的幻方(具体请参考幻方的意思)
B =A{6}%查看幻方矩阵的值
%%
% 5.结构体
books = struct('name',{{'Hello word','English Master'}},'price',[30 40])
books.name
books.name(1)
books.name{1}
补充:
%%
clear all; %清除所有工作区
clc; %清楚所有命令行
%命令行直接运行不显示,因为分号表示还可以输入下一行语句
%%
M=5;
N=4;
x=-2*pi:0.1:2*pi;%x的范围
%%
%全零阵
Y=zeros(M); %生成M*M大小的全零矩阵
Y=zeros(M,N); %生成M*N大小的全零矩阵
%%
%全1矩阵
Y=ones(M); %生成M*N的全1矩阵
Y=ones(M,N); %生成M*N大小的全1矩阵
%%
%正弦函数的绘图
y=sin(x); %计算x的正弦函数
figure('name','正弦函数'); %图像标题命名
plot(x,y); %绘制正弦函数的图像
%%
%余弦函数的绘图
y=cos(x); %计算x的余弦函数
figure('name','余弦函数'); %图像标题命名
plot(x,y); %绘制余弦函数的图像
%%
%指数函数的绘图
y=exp(x); %计算自然数e的x次方函数
figure('name','正弦函数'); %图像标题命名
plot(x,y); %绘制自然数e的x次方函数的图像
%%
%复数的求解
x=1+2i;
y=real(x); %求x的实数部分函数
y=imag(x); %求x的虚数部分函数
%%
%长度的求解
Y=length(x); %求x序列长度的函数
%%
%离散信号的绘制
%方案一
x=-2*pi:0.2:2*pi; %此处中间的0.2代表步长
y=sin(x);
figure('name','离散正弦函数'); %图像标题命名
stem(x,y); %绘制关于x、y的离散信号图形函数
%方案二
x=linspace(-2*pi,2*pi,50); %初始值为-2Π,终止值为2Π,取50个点
y=sin(x);
figure('name','离散正弦函数'); %图像标题命名
stem(x,y); %绘制关于x、y的离散信号图形函数
%%
%分割绘图
% subplot(X,Y,Z); %在整幅图像的第Z块区域绘图,整幅图像被分割成X行Y列
x=linspace(-2*pi,2*pi,50); %初始值为-2Π,终止值为2Π,取50个点
y=sin(x);
figure('name','分割图像'); %图像标题命名
subplot(2,2,1); %在整幅图像的第1块区域绘图,整幅图像被分割成2行2列
plot(x,y);
x=linspace(-2*pi,2*pi,50); %初始值为-2Π,终止值为2Π,取50个点
y=cos(x);
subplot(2,2,2); %在整幅图像的第2块区域绘图,整幅图像被分割成2行2列
plot(x,y);
x=linspace(-2*pi,2*pi,50);
y=tan(x);
subplot(2,2,3); %在整幅图像的第3块区域绘图,整幅图像被分割成2行2列
plot(x,y);
x=linspace(-2*pi,2*pi,50);
y=exp(x);
subplot(2,2,4); %在整幅图像的第4块区域绘图,整幅图像被分割成2行2列
plot(x,y);
%%
%限制所绘制图形的大小
%axis([xmin,xmax,ymin,ymax]); %横坐标范围为xmin-xmax,纵坐标范围为ymin-ymax.
x=-2*pi:0.1:2*pi;
y=sin(x); %计算x的正弦函数
figure('name','正弦函数'); %图像标题命名
plot(x,y); %绘制正弦函数的图像
axis([-6,6,-2,2]);
%%
%网格函数
grid on %在图像中添加网格函数
grid off %在图像中关闭网格函数
%%
%图像的标注
xlabel('x'); %横坐标轴标注
ylabel('y=sin(x)'); %纵坐标轴标注
title('正弦函数'); %图像标题