概述

所谓数组,就是一个集合,里面存放了相同类型的数据元素

**特点1:**数组中的每个==数据元素都是相同的数据类型==

**特点2:**数组是由==连续的内存==位置组成的

一维数组

一维数组定义方式

一维数组定义的三种方式:

  1. 数据类型 数组名[ 数组长度 ];
  2. 数据类型 数组名[ 数组长度 ] = { 值1,值2 ...};
  3. 数据类型 数组名[ ] = { 值1,值2 ...};

示例

int main() {

 //定义方式1
 //数据类型 数组名[元素个数];
 int score[10];

 //利用下标赋值
 score[0] = 100;
 score[1] = 99;
 score[2] = 85;

 //利用下标输出
 cout << score[0] << endl;
 cout << score[1] << endl;
 cout << score[2] << endl;


 //第二种定义方式
 //数据类型 数组名[元素个数] =  {值1,值2 ,值3 ...};
 //如果{}内不足10个数据,剩余数据用0补全
 int score2[10] = { 100, 90,80,70,60,50,40,30,20,10 };
 
 //逐个输出
 //cout << score2[0] << endl;
 //cout << score2[1] << endl;

 //一个一个输出太麻烦,因此可以利用循环进行输出
 for (int i = 0; i < 10; i++)
 {
  cout << score2[i] << endl;
 }

 //定义方式3
 //数据类型 数组名[] =  {值1,值2 ,值3 ...};
 int score3[] = { 100,90,80,70,60,50,40,30,20,10 };

 for (int i = 0; i < 10; i++)
 {
  cout << score3[i] << endl;
 }

 system("pause");

 return 0;
}

总结1:数组名的命名规范与变量名命名规范一致,不要和变量重名

总结2:数组中下标是从0开始索引

5.2.2 一维数组数组名

一维数组名称的用途

  1. 可以统计整个数组在内存中的长度
  2. 可以获取数组在内存中的首地址

示例:

int main() {

 //数组名用途
 //1、可以获取整个数组占用内存空间大小
 int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };

 cout << "整个数组所占内存空间为: " << sizeof(arr) << endl;
 cout << "每个元素所占内存空间为: " << sizeof(arr[0]) << endl;
 cout << "数组的元素个数为: " << sizeof(arr) / sizeof(arr[0]) << endl;

 //2、可以通过数组名获取到数组首地址
 cout << "数组首地址为: " << (int)arr << endl;
 cout << "数组中第一个元素地址为: " << (int)&arr[0] << endl;
 cout << "数组中第二个元素地址为: " << (int)&arr[1] << endl;

 //arr = 100; 错误,数组名是常量,因此不可以赋值


 system("pause");

 return 0;
}

sort

int main() {

 int varr[] = {121,2122,313,44,25,567,7856,345,3457,34,111,65,5};


 int length = sizeof(varr) / sizeof(varr[0]);


 for (int i = 0; i < length; i++)
 {
   
  for (int j = i; j < length;j++)
  {
   int tempa = 0;
   if (varr[i] > varr[j]) {
    tempa = varr[j];
    varr[j] = varr[i];
    varr[i] = tempa;
   }
    
  }
 }
 for (int i = 0; i < length; i++)
 {
  cout << varr[i] << endl;
 }
 return 0;
}