数组小结

这篇博客详细介绍了C++中数组的概念,包括一维数组的定义、初始化、数组长度的注意事项,以及二维数组的定义和初始化方法。同时,文章还讨论了字符数组、数组作为函数参数的使用,以及字符数组的输入输出操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先要知道什么是数组,简单讲就是有序数据的集合,数组就是用一个统一的名字代表这批数据,然后用序号或者下标来区分各个数据

  • 定义一维数组
    一般形式:类型名 数组名[常量表达式],例如:int a[10]; 表明数组名为a,此数组为整型,有10个元素

1. 用方括号括起来的 常量表达式表示下标值,以下写法合法

int a[10];
int a[2*5];
in a[n*3];//假设前面已经定义了n为常变量

2. 常量表达式的值表示元素的个数,即数组长度
注:a[10]表示数组有10个元素,但是数组下标从0开始,也就是说最后一个元素是a[9]
3. 常量表达式中可以包括常量、常变量和符号常量但不能包括变量,也就是说不允许对数组的大小作动态定义,即数组的大小不依赖于程序运行过程中变量的值

int n;
cin>>n;
int a[n];

此时试图根据n的值决定数组的长度,不合法。

数组必须先定义再使用且只能逐个引用数组元素的值而不能一次引用整个数组中的全部元素的值。

  • 一维数组的初始化
    初始化方法:

1. 在定义数组时对全部数组元素赋初值

int a[4]={0,1,2,3};

2. 可以只给一部分元素赋值

int a[10]={0,1,2,3,4};//给前面五个元素赋初值,后5个元素默认为0

3. 在对全部元素赋初值时可以不指定其数组长度

int a[]={1,2,3,4,5,6};

定义二维数组:
一般形式:
类型名 数组名[常量表达式][常量表达式]

float a[0][4],b[5][10]

数值元素是左值,可以出现在表达式中,也可以被赋值

b[1][2]=a[2][3]/2;

二维数组的初始化
初始化方法:

  • 按行给二维数组全部赋初值
int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
  • 可以将所有数据写在一个花括号内,按数组排列的顺序对全部元素赋初值
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
  • 可以对部分元素赋值
int a[3][4]={{1}{5}{9}}

数组名可以作实参和形参,传递的是数组的起始地址

  • 用数组元素作函数实参,数组元素可以作为函数的实参,与用变量作实参一样,将数组元素的值传送给形参变量
  • 用数组名作函数参数
    1.如果函数实参是数组名,形参也应为数组名
    2.数组名代表的是数组首元素的地址,并不能代表数组中的全部元素
    注:实参的值不因形参的值改变而改变
    3. c++实际上只是把形参数组名作为一个
    指针变量
    来处理,用来
    接收从实参传过来的地址

字符数组
定义字符数组方式与定义普通数组方式类似
注:字符数组中遇到’\0’则表示字符串到此结束,由它前面的字符串组成有效字符串,在程序中往往根据’\0’的位置来判断字符串是否结束而不是根据数组的长度来决定字符长度

  • 可以用字符串常量来初始化数组
char str[]={"I am DaoZhang"};

char str[]="I am DaoZhang";//可以这样写

字符数组的输入输出

char str[20];
cin>>str;//输入
cout<<str;//输出

注:

  • 输出的字符不包括结束符’\0’
  • 输出字符串时,cout流中用字符数组名,而不是数组元素名
  • 如果数组长度大于字符串实际长度,输出遇’\0’结束
  • 若一个字符串有一个以上’\0’,遇第一个’\0’时输出结束
  • 用cin从键盘向计算机输入一个字符串时,输入的字符串应该短于已经定义的字符数组的长度,否则会出问题
好的,我可以为您总结一下Numpy数组与矩阵运算实验的内容。 Numpy是Python中用于科学计算的一个重要的库,它提供了高性能的多维数组对象以及各种计算和操作这些数组的函数。Numpy数组与矩阵运算实验主要包括以下内容: 1. Numpy数组的创建与索引:可以使用Numpy提供的array()函数创建一维或多维数组,并且可以使用索引和切片来访问数组中的元素。 2. Numpy数组的基本运算:Numpy提供了基本的数组运算,包括加、减、乘、除等,可以对数组进行逐元素的运算。 3. Numpy数组的聚合运算:Numpy提供了一些常用的聚合函数,比如sum()、min()、max()、mean()等,可以对数组中的元素进行聚合运算。 4. Numpy数组的逻辑运算:Numpy提供了逻辑运算符,可用于数组元素的逻辑判断,如and、or等。 5. 矩阵的创建与运算:Numpy提供了矩阵对象,可使用matrix()函数创建矩阵,矩阵之间的运算包括加、减、乘、转置等。 6. 广播:Numpy提供了广播功能,可以使得不同形状的数组在运算时具有相同的形状。 通过实验练习,可以掌握Numpy数组与矩阵运算的基本操作,如数组创建、索引、运算、聚合、逻辑运算以及矩阵创建、运算、转置等。同时,实验也会涉及到一些高级的Numpy应用,比如随机数生成、线性代数运算、数组的拼接、切分和重塑等,这些内容需要结合实际应用场景进行练习。 总的来说,Numpy数组与矩阵运算实验是Python科学计算中非常重要的部分,需要反复练习和实践,才能掌握这些知识点并灵活运用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值