【C++】数组操作
代码:
#include <iostream>
using namespace std;
//主函数
int main(){
// 声明一个数组,这个数组只有长度没有值
int li[10];
// 得到数组的长度
int length = 0;
length = sizeof(li) / sizeof(li[0]);
// 给数组赋值
for(int i=0; i<length; i++){
li[i] = i+1;
}
// 修改数组的元素
li[5] = 100;
// 遍历输出数组的值
for(int i=0; i<length; i++){
cout << li[i] << endl;
}
}
运行结果:
说明:
1.声明数组时,需要指定元素的类型和元素的数量,这时候可以声明一个空数组,也可以在声明时就给数组赋值
如:int a[3] = {2,5,8}; // 声明了数据类型为int的数组,它的长度为3,值为2,5,82.获取数组长度,sizeof(li)函数可以返回数组所占的内存,而sizeof(li[0])返回的是数组第一个元素所占的内存,因为每个元素占的内存一样大,sizeof(li) / sizeof(li[0])就是总内存/单个元素的内存,得到元素的个数
3.给数组赋值或者修改数组内容时,选择数组下标并赋值就可以了,数组下标从0开始。
如:li[5] = 100,则将数组的第6个元素的值改为1004.其他操作
sort(a.begin(),a.end()); //对数组a中的从a.gegin()到a.end()的元素大小进行排序reverse(a.begin(),a.end(); //对数组a中的元素倒置。但是不排列。如a元素为1,2,3,4倒置后为4,3,2,1
copy(a.begin(),a.end(),b.begin()+1); //把数组a中的从a.begin()到a.end()的元素复制到数组b中,从b.begin()+1的位置开始复制,覆盖掉原有的元素。
find(a.begin(),a.end(),10); //在数组a中的从a.begin()到a.end()的元素中查找10,若存在返回其在向量中的位置。