第三章数组运算基础

合集下载

数据结构(C语言版)_第3章 串与数组

数据结构(C语言版)_第3章 串与数组
typedef struct lnode {
char data; struct lnode *next;
}lstring;
3.3.3 串的存储结构——链式存储结构
当结点大小>1时,可以采用块链结构。
#define CHUNKSIZE 100
/*可由用户定义块的大小*/
typedef struct Chunk
第三章 串与数组
本章要点
➢字符串的基本概念与基本运算 ➢字符串的存储和基本运算的实现 ➢数组的概念和基本运算 ➢数组的存储结构 ➢特殊矩阵的压缩存储及运算 ➢广义表的概念及相关术语 ➢广义表的存储形式
3.1 “文学研究助手”案例导入
“文学研究助手”引例:请从下面的英文文章里,统计其中 good出现的次数和位置,并查找单词the所在的行号,该行中出 现的次数以及在该行中的相应位置。
3.4.1 数组的定义
数组是n个具有相同类型的数据元素构成的有限序列,数组 中的数据是按顺序存储在一块地址连续的存储单元中。
数组中的每一个数据通常称为数组元素,数组元素用下标 区分,其中下标的个数由数组的维数决定。
若线性表中的数据元素为非结构的简单元素,则称为一维 数组,又称为向量;若一维数组中的数据元素又是一维数组结 构,则称为二维数组;依次类推,若二维数组中的元素又是一 个一维数组结构,则称作三维数组。
3.3.4 串的基本操作的实现算法
第二种顺序存储方式下几种基本操作的算法
算法1:串连接操作 算法2:串比较操作 算法3:取子串操作 算法4:串插入操作 算法5:串删除操作 算法6:串置换函数 算法7:子串定位操作
3.3.5 串的应用
【例3-1】设计一个算法求串s中出现的第1个最长重复子串 及其位置。

第三章 数组及其运算

第三章 数组及其运算

Logm(A) A的矩阵对数函数
%例二维数组、矩阵运算 A=[-4,-3,-2;-1,0,1;2,3,4];B=[1,3,2;3,2,5;2,5,7]; C=A+B*i %生成复数数组 C.',C' %非共轭转置和共轭转置
C= -4.0000 + 1.0000i -3.0000 + 3.0000i -2.0000 + 2.0000i -1.0000 + 3.0000i 0 + 2.0000i 1.0000 + 5.0000i 2.0000 + 2.0000i 3.0000 + 5.0000i 4.0000 + 7.0000i ans = -4.0000 + 1.0000i -1.0000 + 3.0000i 2.0000 + 2.0000i -3.0000 + 3.0000i 0 + 2.0000i 3.0000 + 5.0000i -2.0000 + 2.0000i 1.0000 + 5.0000i 4.0000 + 7.0000i ans = -4.0000 - 1.0000i -1.0000 - 3.0000i 2.0000 - 2.0000i -3.0000 - 3.0000i 0 - 2.0000i 3.0000 - 5.0000i -2.0000 - 2.0000i 1.0000 - 5.0000i 4.0000 - 7.0000i
>> a=3*ones(4,5) a= 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 >> b=diag(a) b= 3 3 3 3
>> zeros(5,6) %生成 行6列的全 阵 生成5行 列的全 列的全0阵 生成 ans = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

第3章 数组与算法——竞赛评分系统.

第3章 数组与算法——竞赛评分系统.

一、项目描述
图 3- 7
选手得分程序界面
二、项目分析
选手得分即各评委总分的平均数, 选手得分即各评委总分的平均数, 应先求出各评委的总分。 应先求出各评委的总分。要求出各评委 的总分,可以利用FOR-NEXT循环结构 的总分,可以利用 循环结构 把各评委评分重复相加, 把各评委评分重复相加,这就是程序设 计中累加求和的问题。 计中累加求和的问题。
三、程序题 1.求S=1+3+5+7+……+99的值。 的值。 . 的值 2.求N!的值,其中 由键盘输入。 由键盘输入。 . !的值,其中N由键盘输入 3.从键盘上输入这些数:10,11,6, , , 7,然后按相反的顺序:7,21,33,15,6,11, ,然后按相反的顺序: , , , , , , 10在窗体上显示。 在窗体上显示。 在窗体上显示 4.设计一个窗体,从键盘上输入 个数,显示其中 个数, .设计一个窗体,从键盘上输入10个数 最大的数,界面如图3-10所示。 所示。 最大的数,界面如图 所示
图 3- 9
选手排行榜程序界面
二、项目分析
本案例主要考虑如何对校园十大歌 手最后得分数据按从大到小( 手最后得分数据按从大到小(或从小到 的顺序进行排列, 大)的顺序进行排列,这就是程序设计 中排序问题。排序思想方法很多, 中排序问题。排序思想方法很多,下面 以选择排序为主进行分析。 以选择排序为主进行分析。
二、选择题 1.下列属于 合法的数组元素是____。 合法的数组元素是____。 .下列属于VB合法的数组元素是 A.a8 B.a[8] C.a(0) D.a{6} 2. 使用语句 声明数组A后 . 使用语句Dim Q(10) As Integer声明数组 后, 声明数组 以下说法正确的是____。 以下说法正确的是____。 A.Q数组中的所有元素值均为 数组中的所有元素值均为0 . 数组中的所有元素值均为 B. Q数组中的所有元素值不确定 数组中的所有元素值不确定 C.Q数组中的所有元素值均为空 . 数组中的所有元素值均为空 D. Q数组中的所有元素值均为 数组中的所有元素值均为10 数组中的所有元素值均为 3.用语句 声明的数组, .用语句Dim B(-3 To 5) As Integer声明的数组,其 声明的数组 元素个数是____。 元素个数是____。 A.6 B.7 C.8 D.9

第三章字符串、元胞、构架数组

第三章字符串、元胞、构架数组

可以看到这个构架数组不同域中存储的数据类型及维数是不同的,student.number和 中存放的是字符串,student.course中存放的是一个2×4的元胞数组, student.score存放的是一个2×4的数值数组。 如果想在构架数组student中增加一个 新的构架,那么只需要在构架数组名后添加下标,并向该构架的域中赋值即可。例 如,增加一个新构架来保存另一个学生的信息:
例题1直接用花括号创建
2.由各元胞创建-外标识元胞元素赋值法
例题3由各元胞内容创建元胞数组
例如4: 如何创建一个元胞数组,设girl为待建元胞数组的名称,则下面两组命令都可以完成任务。
3.2.2 元胞数组的内容显示
在MATALB命令窗口中输入元胞数组的名称,并不直接显示出元 胞数组的各元胞元素的内容值,而是显示各元胞元素的数据类 型和结构 ,单元素的元胞除外。 (1).使用celldisp命令显示元胞数组的内容
元胞数组的扩充、收缩和重组的方法和数值数组基本相同,下面以简单的指令形式表述。
3.3 构架数组 特点:
① 构架数组的基本组成是构架(Structure),以下标区分 各个构架; ② 构架必须划分成“域”后才能使用,每一个构架都包 含多个域(Fields) ; ③ 构架不能直接存放数据,数据必须存放在构架下面的 “域”中; ④ 构架的域可以存放任意类型、任意大小的数组(数值 数组、字符串数组、符号对象、元胞等); ⑤ 不同构架的同名域中可以存放不同类型的内容; ⑥ 构架数组可以是任意维的,可以利用单下标或全下标 寻址。
②获取构架数组中的域
获取构架数组中的域可以利用函数fieldnames来完成,其格式为 NAMES = fieldnames(struct_name)

《C程数组教案》课件

《C程数组教案》课件

《C程数组教案》PPT课件第一章:数组概念1.1 数组的引入引入背景:为什么需要数组?数组的概念:数组是什么?如何理解数组?1.2 数组的基本操作数组的声明:如何声明一个数组?数组的初始化:如何初始化一个数组?数组的访问:如何访问数组中的元素?1.3 数组的内存表示数组的内存模型:数组在内存中是如何存储的?数组的大小:如何确定数组的大小?第二章:一维数组2.1 一维数组的应用应用场景:一维数组在实际编程中的应用场景有哪些?示例代码:如何使用一维数组实现排序、查找等功能?2.2 数组的边界判断越界问题:什么是数组越界?如何避免数组越界?边界判断的实现:如何判断数组是否越界?2.3 一维数组的排序与查找排序算法:如何对一维数组进行排序?查找算法:如何在一维数组中查找特定元素?第三章:多维数组3.1 多维数组的概念二维数组:什么是二维数组?如何理解二维数组?更高维数组:什么是三维数组?如何理解三维数组?3.2 多维数组的声明与访问声明方式:如何声明一个多维数组?访问方式:如何访问多维数组中的元素?3.3 多维数组的应用应用场景:多维数组在实际编程中的应用场景有哪些?示例代码:如何使用多维数组实现矩阵运算等功能?第四章:字符数组与字符串4.1 字符数组的概念字符数组的定义:什么是字符数组?如何理解字符数组?字符数组与字符串的关系:字符数组和字符串有什么联系和区别?4.2 字符数组的声明与初始化声明方式:如何声明一个字符数组?初始化方式:如何初始化一个字符数组?4.3 字符串的操作字符串的长度:如何获取字符串的长度?字符串的拷贝:如何复制一个字符串?字符串的连接:如何连接两个字符串?第五章:数组的排序与查找算法5.1 排序算法选择排序:什么是选择排序?如何实现选择排序?冒泡排序:什么是冒泡排序?如何实现冒泡排序?插入排序:什么是插入排序?如何实现插入排序?5.2 查找算法线性查找:什么是线性查找?如何实现线性查找?二分查找:什么是二分查找?如何实现二分查找?5.3 算法性能分析时间复杂度:如何分析排序和查找算法的时间复杂度?空间复杂度:如何分析排序和查找算法的空间复杂度?《C程数组教案》PPT课件第六章:数组的函数应用6.1 数组作为函数参数值传递:如何将数组作为值传递给函数?指针传递:如何将数组作为指针传递给函数?6.2 数组在函数中的操作函数对数组的修改:如何在函数中修改数组?函数返回数组:如何让函数返回一个数组?6.3 示例代码示例1:如何使用函数对数组进行排序?示例2:如何使用函数计算数组中元素的平方和?第七章:数组与指针7.1 数组与指针的关系数组名与指针的关系:数组名和指针有什么联系?指针数组:什么是指针数组?如何理解指针数组?7.2 指针操作数组指针访问数组元素:如何使用指针访问数组中的元素?指针遍历数组:如何使用指针遍历数组?7.3 指针与数组参数指针作为函数参数:如何将指针作为函数参数?指针数组作为函数参数:如何将指针数组作为函数参数?第八章:数组与动态内存分配8.1 动态内存分配的概念动态内存分配的意义:为什么需要动态内存分配?动态内存分配的方法:如何进行动态内存分配?8.2 动态数组的声明与使用动态数组的声明:如何声明一个动态数组?动态数组的释放:如何释放动态数组占用的内存?8.3 示例代码示例1:如何使用动态内存分配实现排序算法?示例2:如何使用动态内存分配实现链表结构?第九章:数组与多线程9.1 数组在多线程编程中的应用线程数组:如何在多线程程序中使用数组?线程安全:如何保证多线程访问数组时的线程安全?9.2 示例代码示例1:如何使用多线程计算数组中元素的平方和?示例2:如何使用多线程对数组进行排序?第十章:数组与文件操作10.1 数组与文件读写文件读取:如何使用数组读取文件内容?文件写入:如何使用数组向文件中写入数据?10.2 示例代码示例1:如何使用数组存储文件内容?示例2:如何使用数组实现文件的复制功能?重点和难点解析重点环节1:数组的概念和基本操作重点:理解数组的概念,掌握数组的声明、初始化以及访问方法。

数据结构练习题 第三章 栈、队列和数组 习题及答案

数据结构练习题 第三章 栈、队列和数组 习题及答案

第三章栈、队列和数组一、名词解释:1.栈、栈顶、栈底、栈顶元素、空栈2.顺序栈3.链栈4.递归5.队列、队尾、队头6.顺序队7.循环队8.队满9.链队10.随机存储结构11.特殊矩阵12.稀疏矩阵13.对称方阵14.上(下)三角矩阵二、填空题:1.栈修改的原则是_________或称________,因此,栈又称为________线性表。

在栈顶进行插入运算,被称为________或________,在栈顶进行删除运算,被称为________或________。

2.栈的基本运算至少应包括________、________、________、________、________五种。

3.对于顺序栈,若栈顶下标值top=0,此时,如果作退栈运算,则产生“________”。

4.对于顺序栈而言,在栈满状态下,如果此时在作进栈运算,则会发生“________”。

5.一般地,栈和线性表类似有两种实现方法,即________实现和________实现。

6.top=0表示________,此时作退栈运算,则产生“________”;top=sqstack_maxsize-1表示________,此时作进栈运算,则产生“________”。

7.以下运算实现在顺序栈上的初始化,请在________处用适当的句子予以填充。

int InitStack(SqStackTp *sq){ ________;return(1);}8.以下运算实现在顺序栈上的进栈,请在________处用适当的语句予以填充。

Int Push(SqStackTp *sq,DataType x){ if(sp->top==sqstack_maxsize-1}{error(“栈满”);return(0);}else{________________:________________=x;return(1);}}9.以下运算实现在顺序栈上的退栈,请在________________用适当句子予以填充。

数据类型及运算

数据类型及运算
注意事项: 注意事项: (1) (1) 变量必须先定义后使用,标准C规定定义语句必须 变量必须先定义后使用,标准C规定定义语句必须 放在所有可执行语句之前; 放在所有可执行语句之前; (2) (2) 每个变量必须且只能被指定为一种类型; 每个变量必须且只能被指定为一种类型; (3) (3) 一般习惯上用小写字母表示变量名, 一般习惯上用小写字母表示变量名, 用大写字母 用大写字母 表示符号常量名,以示区别。(仅是习惯不是规定) 表示符号常量名,以示区别。(仅是习惯不是规定) 6 多个变量间 逗号分隔
内存中存储形式
负数的补码 =反码+1 =原码取反+1
内存中存储形式 10
A B
整型数据在内存中的存储形式
----以有符号 2 字节整型为例 32767(215-1)的 16位编码 原码:01111111 11111111 反码:01111111 11111111 补码:01111111 11111111 内存中存储形式 -32767(1-215)的 16位编码 原码:11111111 11111111 反码:10000000 00000000 补码:10000000 00000001 内存中存储形式
A B
空类型void 3
3.2~3.3(1) 常量与简单变量–以数值型为例
• 常量: 在程序运行中,其值不变的量,如: 23.7, - 67 等。 • 变量: 在程序运行过程中,其值可以改变的量, 在内存中占据一定的存储单元。
变量a 150 50
A B
4
一、两类常量
常数常量和符号常量 常数常量 如-10, 3.14 符号常量: 用标识符表示的常量。符号常量用 预处理(宏定义)命令定义在函数之外。 定义形式: A B

第三章 算法3

第三章 算法3

【例2】开灯问题:有从1到n依次编号的n个同学和n 盏灯。 1号同学将所有的灯都关掉;2号同学将编号为2的倍数的 灯都打开;3号同学则将编号为3的倍数的灯作相反处理 (该号灯如打开的,则关掉;如关闭的,则打开);以 后的同学都将自己编号的倍数的灯,作相反处理。问经n 个同学操作后,哪些灯是打开的? 问题分析: 1)用数组表示某种状态,这里定义有n个元素的a数组,它 的每个下标变量a[i]视为一灯,i表示其编号。a[i]=1 表示灯处于打开状态,a[i]=0表示灯处于关闭状态。 2)实现将第i 灯作相反处理的操作,可以用条件语句if表 示:当a[i]为1时,a[i]被重新赋为0;当a[i]为0时, a[i]被重新赋为1。 但通过以下算术运算: a[i]=1-a[i] 可以很好地模拟“开关”灯的操作。
【例4】编写算法,求任意三个数的最小公倍数。
算法设计:
1)用短除法求三个已知数的最小公倍数的过程就是求它们的因 数之积,这个因数可能是三个数共有的、两个数共有或一个数 独有的三种情况。
2)用算法实现就只能利用尝试法判断三个数含有哪些因数, 及属于哪种情况。尝试的范围:? 2——最大数
无论因数属于以下三种情况之一,都只算作一个因数,累乘一次 •是三个数的共有的因数,如:2是2,14,6的因数;
算法说明:算法中 通过二重循环,交 叉比较所有数据, 用标志变量t=0标 识可能的ห้องสมุดไป่ตู้复。若 循环结束,t仍为1, 说明数据没有重复, 互不相同。
【例3】输入三个数值,判断以它们的边长是否能构成的 三角形,属于哪种特殊三角形:等边、等腰、直角。
问题分析:可能的输出情况:
1)不构成三角形、
2)构成等边三角形、 3)构成等腰三角形、
4)用变量Max记录当前最大的乘积,m、n 为对应的两个乘数;变量min记录当前最 小的乘积,s、t为对应的两个乘数。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

上边的代码生成了一个4行,3列,2页的三维全1数组。从结 果可见,该数组是按页显示的,首先显示第1页,然后显示第 2页。除zeros外,ones、eye、rand和randn等函数构成的标准 数组也可以按照相同的方法生成三维数组。再次,可以利用 函数生成三维数组。示例如下: >>b=reshape(a, 4,6) b= 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 reshape函数是一个数组重塑函数,原来的a数组是一个两页, 每页4行3列的三维数组,经reshape重塑后得到一个4行6列的 二维数组b。
>>c= a*b
c= 8 8 19 10 8 7 15 10 14 >>e= c*d ??? Error using = =>-1 Matrix dimensions must agree. >>e= d*c e= 33 26 40 下面,我们再来看一下a.*b的结果 >>aa= a.*b aa= 3 4 3 3 0 3 4 4 4
>>reshape(b,2,4,3)
ans(:,:,1) = 1 1 ans(:,:,2) = 1 1 1 1 1 1
1
1 ans(:,:,3) = 1 1 数组。
1
1
1
1
1
1
1 1
1 1
1 1
b再经reshape重塑后,又得到了一个3页,每页2行4列的三维
提示:reshape函数可以将任何维数的数组转 变成其它维数的数组,在数组的处理方
>>a(:,3)=[5 ;5 ; 5]
a=
2 3 4 1 2 3 5 5 5 0 0 1
但若写成下列形式,则产生错误提示信息。
>>a(:,3)=[5 5 5]
??? In an assignment A(:,matrix)=B, the number of elements in the subscript of A and the number of columns must be the same. 事实上,上面的语句是想将a的第三行的元素全部设置为
-1.0000 4.0000 -1.0000 -0.5000
>> b.\a ans = -1.0000 >> a.\b ans = -1.0000 0.2500 -1.0000 -2.0000 4.0000 -1.0000 -0.5000
提示:数组相乘,不能使用“*”,而是“.*”, 数组相除分左除和右除之分,左除用符号 “.\”,右除用符号“./”。从上面 a./b和b.\a的结果可见,数组a右除b等 于b左除a。
可见,a.*b是对应元素相乘,做的是数组的乘法,而a*b 是遵循矩阵相乘的规则,做的是矩阵的乘法。 3. 矩阵的除法运算 与数组的除法运算一样,矩阵相除也分为左除“\”和右除 “/”,若∣a∣≠0,则a\b和b/a的运算均可以实现。a\b等价于 inv(a)*b,而b/a等价于b*inv(a)。事实上,inv(a)*b是方程 a*x=b的解,b*inv(a)是x*a=b的解。一般情况下,a\b≠b/a。 下面通过实例看一下矩阵的除法运算。 >>a=[1 2 3;3 0 1;4 2 1]; >>b=[5 ;5 ; 5]; >>c= a\b c= 1.1111 -0.5556 1.6667
图标),则进入M文件编辑器环境在编辑器内录入
a=[1 2 1 1 2 1 2;3 4 5 5 5 5 0;54 3 3 3 3 3;
3 0 4 6 5 5 4 ],然后将其保存为名为myfirstmatrix
的文件,在命令窗口提示符后输入myfirstmatrix, 就可得到上面的数组,即, >> myfirstmatrix
提示:若在变量或表示式后面加“;”,则不 显示变量或表达式的内容。所以在 Matlab 中, 若要看到表达式的运算结
果,则不应在其后加“;”。
2. a=first :last
>>a=-2 :2
a=
-2 -1 0 1 2
>>a=-2.5 :2.55 a= -2.5000 -1.5000 -0.5000 0.5000 1.5000 2.5000
Column 5 100.0000
二、二维数组的创建
>>a=[1 2 3 ;3 0 1;4 2 1] a=
1
3 4
2
0 2
3
1 1
>>b=[1 sin(pi/2);0 3*sqrt(40)]
b= 1.0000 1.0000
0
18.9737
另外,也可通过M文件创建二维数组: 打开文件编辑器(即点击Matlab桌面左上角的快捷
4. a=linspace(first ,last,n)
创建均匀间隔的行向量a,first是首元素, last是末元素,n为元素总数。示例如下:
>>a=linspace(-2,2,5) ansrst,last,n) 创建对数间隔的行向量a,first是首元素,last 是末元素,若有n个元素。示例如下: >>a=logspace(-2,2,5) ans = Columns 1 through 4 0.0100 0.1000 1.0000 10.0000
上面是以一维数组为例,进行的数组一数组运算, 若是二维数组应遵循同样的运算规则。示例如下: >> a=[1 2 1;2 1 4]; >> b=[2 2 2;1 1 1]; >> c=a+b c= 3 4 3 3 2 5 >> d=a-b d= -1 0 -1 1 0 3 >> e=a.*b e= 2 4 2 2 1 4 >> f=a./b
>>b=[5 5 5;5 5 5;5 5 5]; c=a\b c= 1.1111 1.1111 1.1111 -0.5556 -0.5556 -0.5556 1.6667 1.6667 1.6667 >>c=b/a c= 1.3889 -0.2778 1.1111 1.3889 -0.2778 1.1111 1.3889 -0.2778 1.1111
三、数组的处理方法
数组是Matlab的基础,其处理方法多种多样,了解
这些处理特性有助于用户更有效地使用Matlab,下面
通过示例看一下Matlab的数组处理特性: >>a=[2 1 1;3 2 2;4 3 3];
>>a(3,3)=0
a= 2 3 4 1 2 3 1 2 0
% 将第3行、第3列元素设置为0
5,重新调用a数组,其实现代码为:
>> a=[2 1 1;3 2 2;4 3 3] a= 2 1 1 3 2 2 4 3 3 >>a(3,:)=[5 5 5] a= 2 1 1 3 2 2 5 5 5 重新调用a数组,再看看其它一些数组处理方法。
>>a=[2 1 1;3 2 2;4 3 3]; >>b=a(3 : -1:1, 1: 3) b= 4 3 2 3 2 1 3 2 1
1. 矩阵的加、减运算
矩阵的加、减运算和数组的加、减运算没有区别, 其运算法则与普通的加、减运算相同,需要注意的是 相加、减的两个矩阵必须有相同的阶数,若其中一个 为标量除外。见下例:
>>a=[1 2 3 ;3 0 1;4 2 1]; >>b=[3 2 1;1 0 3;1 2 4]; >>e=4; >>f=a+e
>>a(3,4)=1
% 将第3行、第4列元素设置为1
a= 2 1 1 0 3 2 2 0 4 3 3 1 由于原数组中没有第4列,数组a的维数就根据需要增 加,且在其它没有赋值的位置填上0元素,以便使数组保 持为一个3行4列的维数。 >>a(:,3)=5 a= 2 1 5 0 3 2 5 0 4 3 5 1 该语句将数组a的第3列元素全都设置为5,与下面的语句 等效。
>> a = 1 3 5 3 2 4 4 0 1 5 3 4 1 5 3 6 2 5 3 5 1 5 3 5 2 0 3 4
三、多维数组的创建
创建一个含3页,每页3行,2列的三维数组,如下例所示: >>a=zeros(3,2); >>a(:,:,2)=[1 1;3 3;2 0] a(:,:,1) = 0 0 0 a(:,:,2) = 1 3 2 1 3 0 0 0 0
第二章 数组的运算基础
数组的创建
标量—数组运算
数组-数组的运算 标准数组 数组的大小 矩阵和数组的关系运算和逻辑运算
第一节 数组的创建
一、一维数组的创建
二、二维数组的创建
三、多维数组的创建
一、一维数组的创建
1.创建一个既含有实数,又含有虚数的一个一维数组:
a=[2 1+i 0 2*pi sqrt(2)]; >> a=[2 1+i 0 2*pi sqrt(2)] a= 2.000 1.000+1.000i 0 6.2832 1.4142
0.6667 2.0000 1.3333 2.6667
第三节
数组-数组的运算
一、数组的四则运算和幂运算 >>a=[1 4 2 -1]; >>b=[-1 1 -2 2]; >>a+b ans = 0 5 0 1 >>a-b ans = 2 3 4 -3
>>a.*b ans = -1 >>a./b ans = 4 -4 -2
相关文档
最新文档