1 数组和矩阵
B=[1 1 2 2 1 1] %创建一个数组
b1=B(1) %访问B中第一个元素
b2=B(2:3) %访问B中第2 3个元素
b3=B(3:end) %访问B中第三到最后一个元素
a=3:6%a表示一个从3到6的数组
b=2.2:2.5:6%b表示初始值为2.2,每次增加2.5,直到6的数组
c=3.2:-2.5:-6%c表示初始值为3.2,每次增加-2.5,直到-6的数组
2常见数组运算
X+Y 数组加法
X-Y 数组减法
X.*Y 数组乘法
X./Y 数组右除
X./Y数组左除
例子:
>> A=[1 5 9 8 7 6];>> B=[7 7 6 2 9 0];>> C=A./B;>> D=A./B;>> E=A./3;>> F=dot(A,B); %数组的点积运算 等同于下例>> G=sum(A.*B)G = 175>> C=A./BC = 0.1429 0.7143 1.5000 4.0000 0.7778 Inf>> D=A./BD = 7.0000 1.4000 0.6667 0.2500 1.2857 0>> E=A./3E = 0.3333 1.6667 3.0000 2.6667 2.3333 2.0000>> F=dot(A,B) F = 175
3 寻访矩阵
A=[2 5 9 20;3 6 7 22;7 8 9 23;5 8 24 25]A1=A(4,3) %使用双下标访问A矩阵的第4行第3列的元素A2=sub2ind(size(A), 4,3) %双下标转换为单下标A3= A(12)
Q1=Q(1,:) %访问第一行所有元素Q2=Q(1:3,:) %访问1~3行所有元素Q3=Q(:,2) %访问第二列所有元素Q4=Q(:) %访问所有元素
4矩阵的拼接
C=cat(dim,A,B) %dim=1垂直拼接 dim=2水平拼接
B=repmat(A,m,n)或者B=repmat(A,[m n ]) %B是由矩阵A备份拼接而成,纵向m个,横向n个
T=blkdiag(A,B,C,D...) % T由ABCD对角拼接而成
5整数类型数据的运算函数
bitand %数据位“”与”运算
bitcmp %数据位求补码
bitor %数据位“”或”运算
bitmax %最大浮点整数数值
bitxor %数据位“异或”运算
bitset %指定数据位设置成1
bitget %获取指定数据位的值
bitshift %数据位位移操作
6字符串操作函数
length(a) %获取字符串长度
d=strcat(a,c) % 连接两个字符串,每个字符串最右边的空格被裁切
% strcmp 比较两个字符串是否完全相等,是,返回真,否则,返回假 % strncmp 比较两个字符串前n个字符是否相等,是,返回真,否则,返回假 % strcmpi 比较两个字符串是否完全相等,忽略字母大小写 % strncmpi 比较两个字符串前n个字符是否相等,忽略字母大小写% isletter 检测字符串中每个字符时否属于英文字母 % isspace 检测字符串中每个字符是否属于格式字符(空格,回车,制表,换行符等) % isstrPRop 检测字符每一个字符是否属于指定的范围 a='d sdsdsd 15#'; b=isletter(a) c=isspace(a)% 字符串替换和查找 % strrep 进行字符串替换,区分大小写 % strrep(str1,str2,str3) % 它把str1中所有的str2字串用str3来替换% strfind(str,patten) 查找str中是否有pattern,返回出现位置,没有出现返回空数组 % findstr(str1,str2) 查找str1和str2中,较短字符串在较长字符串中出现的位置,没有出现返回空数组 % strmatch(patten,str) 检查patten是否和str最左侧部分一致 % strtok(str,char) 返回str中由char指定的字符串前的部分和之后的部分, mm='youqwelcome'; [mm1,mm2]=strtok(mm,'q')% blanks(n) 创建有n个空格组成的字符串 % deblank(str) 裁切字符串的尾部空格 % strtrim(str) 裁切字符串的开头和尾部的空格,制表,回车符% lower(str) 将字符串中的字母转换成小写 % upper(str) 将字符串中的字母转换成大写 % sort(str) 按照字符的ASCII值对字符串排序% num2str 将数字转换为数字字符串 % str2num 将数字字符串转换为数字 % mat2str 将数组转换成字符串 % int2str 把数值数组转换为整数数字组成的字符数组
新闻热点
疑难解答