5-【快乐学习c++】数组

基础知识

一维数组定义方式:
1、数组类型 数组名[数组长度];
2、数组类型 数组名[数组长度] = {值1,值2.....};
3、数组类型 数组名[] = {值1,值2.....};
一维数组名作用:
1、统计长度
2、首地址位置
#include<iostream>
using namespace std;

int main(){

    cout << "----------------------------------[part-1 赋值 取值]" <<endl;
    int arr1[5];
    arr1[0]=10; //赋值
    arr1[1]=20;
    arr1[2]=30;
    arr1[3]=40;
    arr1[4]=50;


    cout << arr1[0] <<endl;
    cout << arr1[4] <<endl;




    int arr2[5] = {10,20,30};//初始化没有全部填写,用0占位
    cout << arr2[0] <<endl;
    cout << arr2[4] <<endl;

    int arr3[]={10,20,30,40};
    cout << arr3[0] <<endl;
    cout << arr3[3] <<endl;

    cout << "\n\n----------------------------------[part-2 一维数组其他骚操作]" <<endl;

    //一维数组名作用
    int arr4[10] = {1,2,3,4,5};
    cout << "数组占用空间:" << sizeof(arr4) << endl;
    cout << "数组大小:" << sizeof(arr4)/sizeof(arr4[0])<<endl;

    cout << "数组首地址: " << arr4<< int(arr4) <<endl;
    cout << "第一个元素地址: " <<&arr4[0]<< int(&arr4[0])<<endl;

    cout << "\n\n----------------------------------[part-2 冒泡排序]" <<endl;

    //冒泡排序
    int arr[]={4,2,8,0,5,7,1,3,9};
    for(int i = 0;i<9-1;i++){
        //总共排序轮数 元素个数-1
        for (int j = 0;j<9-i-1;j++){
            //内层循环对比
            if (arr[j] > arr[j+1])
            {
                int temp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = temp;

             }
        }
    }
    for(int i=0;i<9;i++){
        cout <<arr[i];
    }

    system("pause");
    return 0;

}

输出:
在这里插入图片描述

二维数组

【定义方式】
数据类型 数组名 [ 行数 ] [ 列数 ];
数据类型 数组名 [ 行数 ] [ 列数 ] = {{值1,值2},{值3,值4}}
数据类型 数组名 [ 行数 ] [ 列数 ] = {值1,值2,值3,值4}
数据类型 数组名 [ ] [ 列数 ] = {值1,值2,值3,值4}

#include<iostream>
using namespace std;
int main(){
    // 方式1
    int arr[2][3];
    arr[0][0]=1;
    arr[0][1]=2;
    arr[0][2]=3;
    arr[1][0]=4;
    arr[1][1]=5;
    arr[1][2]=6;
    for (int i = 0;i<2;i++){
        for (int j = 0;j<3;j++){
            cout << arr[i][j] << endl;
        }
    }

    // 方式2
    int arr2[2][3] =
    {
        {1,2,3},
        {4,5,6}
    };
    for (int i = 0;i<2;i++){
        for (int j = 0;j<3;j++){
            cout << arr2[i][j] << " ";
        }
        cout << endl;
    }

    // 方式3
    int arr3[2][3] = {1,2,3,4,5,6};
    for (int i = 0;i<2;i++){
        for (int j = 0;j<3;j++){
            cout << arr3[i][j] << " ";
        }
        cout << endl;
    }

    // 方式3
    int arr4[][3] = {1,2,3,4,5,6};
    for (int i = 0;i<2;i++){
        for (int j = 0;j<3;j++){
            cout << arr4[i][j] << " ";
        }
        cout << endl;
    }
}

在这里插入图片描述

二维数组名用途
#include<iostream>
using namespace std;
/*二维数组名用途*/
int main(){
    int arr[2][3]=
    {
        {1,2,3},
        {4,5,6}
    };
    // 可以查看占用空间大小
    cout << "二维数组占用空间大小"<<sizeof(arr) << endl;
    cout << "二维数组第一行占用空间大小"<<sizeof(arr[0]) << endl;
    cout << "二维数组第一个元素占用空间大小"<<sizeof(arr[0][0]) << endl;

    // 可以看二维数组首地址
    cout << "二维数组首地址为:"<<arr << endl;
    cout << "二维数第一行组首地址为:"<<arr[0] << endl;
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/magic_shuang/article/details/107547510
今日推荐