• 数组的一些情况


    数组是什么?

    它是可以在内存中连续存储多个元素的结构,它所存储的所有元素必须属于相同类型,

    声明和使用数组的基本格式是元素类型 数组名[元素个数] 比如int ages[3];

    数组有一维数组,二维数组,多维数组

    在我的理解多维数组就是数组的嵌套使用

    举个简单的例子,

    一维数组就是一排座位有几个人,二维数组就是一个教室有几排座位,一排座位有几个人,三维数组就是一个学校有几个教室,一个教室有几排座位,一排座位有几个人

    一维数组中存储的是基本的元素,二维数组存储的是一维数组,三维数组存储的是一维数组

    数组中的经典排序方式,冒泡排序

    这个琢磨明白了就很容易,两两比较,大的就交换位置,直到最大的交换到最后,然后从头开始继续比较,一直比较到第二位,因为从第二位到最后一位大小确定了,第一位自然是最小的了

    所以冒泡排序归结为一句话,N个数字来排队,两两比较小靠前,外层循环N-1(控制比较轮数)内层循环N-1-i(控制每轮比较次数,i为外层循环变量)

      int nums[]={10,3,8,1,6};

       int i,j,temp;

       //外层控制比较的轮数(5个数字比较4轮)

       for(i=0;i<4;i++){

          //内层循环控制每轮比较的次数

         for(j=0;j<4-i;j++){

           if(nums[j]>nums[j+1]){//交换顺序

         temp = nums[j];

           nums[j]=nums[j+1];

                 nums[j+1]=temp;

           }

         }

       }

      printf("排序后的数字为:");

       //利用循环遍历输出

       for(i=0;i<5;i++){

        printf("%d\t",nums[i]);

       }

    二维数组

    • 二维数组可以看作是由一维数组的嵌套而构成的

    二维数组: 一维数组中的值为一个数组.

          声明: 数据类型 数组名[rowsize][colsize];

          int nums[4][2];

    声明并赋值:  

          int nums[4][2]={{10,11},{20,21),{30,31},{40,41}}; 正确

          int nums[][2]={{10,11},{20,21),{30,31},{40,41}}; 正确

          int nums[4][]={{10,11},{20,21),{30,31},{40,41}}; 错误

    示例:声明一个三行三列的二维数组用于保持用户输入的整型数据,打印用户输入的数据并计算对角线之和

    int nums[3][3];

       int i,j,sum=0;

       //循环获取用户输入的数据,并将其数据保存到二维数组中

       for(i=0;i<3;i++){

      for(j=0;j<3;j++){

      printf("请输入第%d行第%d列数据\n",i+1,j+1);

            scanf("%d",&nums[i][j]);

      }

       }

       //循环遍历二维数组的数据,并打印成矩形

       for(i=0;i<3;i++){

          for(j=0;j<3;j++){

          printf("%d\t",nums[i][j]);

          if(i==j){

         sum+=nums[i][j];

             }

          }

          printf("\n");

       }

       printf("二维数组对角线之和为%d",sum);

  • 相关阅读:
    脱离Table组件的render苦海
    激活码
    Unittest
    IO多路复用-EPOOL 详细
    PIL-Image、ImageDraw图像标记
    Mysql专场
    xshell命令
    并发编程
    Mysql高级用法
    视图函数中进行sql查询,防止sql注入
  • 原文地址:https://www.cnblogs.com/jiawenxu/p/6591932.html
Copyright © 2020-2023  润新知