1.一维数组的定义:
当数组中每个元素只带有一个下标时,我们称这样的数组为一维数组
类型说明 数组名 [常量表达式];
其中,类型说明符是任一种基本数据类型或构造数据类型。数组名是用 户定义的数组标识别。方括号中的常量表达式表示数据元素的个数,也 称为数组的长度。
在程序中可以使用下标变量,即说明这些变量的整体为数组,数组中的 每个变量的数据类型是相同的。
当数组中每个元素都只带有一个下标时,称这样的数组为一维数组。
2.二维数组的定义:
二维数组本质上是以数组作为数组元素的数组,即"数组的数组" ,如果称一维数组为一条线,那二维数组就称为矩阵,行列数相等的矩阵称为方阵。
数组的主要用来存数,一维数组数组的格式如下:
c++
int ans[100010];
其中int ans[100010]定义数组,[100010]是数组可以存的值,这个值可以更大,用来存更大的值,但值越大所需要的内存也越大。
二维数组的格式如下:
c++
int ans[100010][100010];
有关数组的代码:
#include<iostream>
#include<algorithm>
using namespace std;
int a[100010],b[100010];
int main(){
int n,m;
int min;
cin >> n >> m;
for(int i=0;i<n;i++){
cin >> a[i];
}
sort (a,a+n);
for(int i=0;i<n;i++){
if(a[i]==a[i-1]){
}else{
b[min]=a[i];
min++;
}
}
if(min<m){
cout<<"NO"<<endl;
}else{
cout << b[m-1];
}
return 0;
}
其中,int a[100010],b[100010];便是定义了两个数组,cin >> a[i];便是输入数组,多用于如下样列输入:
样例输入
10 3
1 3 3 7 2 5 1 2 4 6
10是输入的数量,也就是输入10个数。