• C语言(十三)数组


    一、一维数组

     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 int main()
     4 {
     5     int a[] = {1,2,3,4,5};
     6     int i;
     7     
     8     for(i=0; i<5; i++)
     9            printf("%d
    a",a[i]);
    10     
    11     system("pause");
    12     return 0;
    13 }
    数组的简单使用_1 
     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 int main()
     4 {
     5     int a[5];
     6     
     7     scanf("%d",&a[0]);
     8     printf("a[0] = %d
    ",a[0]);
     9     
    10     scanf("%d",&a[3]);
    11     printf("a[3] = %d
    ",a[3]);
    12     
    13     int i;
    14     for(i=0; i<5; ++i)
    15         printf("%d
    ",a[i]);
    16     system("pause");
    17     return 0;
    18 }
    19 /*
    20     有关一维数组的操作
    21         初始化
    22             完全初始化
    23                 int a[5] = {1,2,3,4,5};
    24             不完全初始化,未被初始化的元素自动为零
    25                 int a[5] = {1,2,3};
    26             不初始化,所有元素是垃圾值
    27                 int a[5];
    28             清零
    29                 int a[5] = a{0};
    30             错误写法;
    31                 int a[5];
    32                 a[5] = {1,2,3,4,5}; //错误
    33                 只有在定义数组的同时才可以整体赋值,
    34                 其他情况下整体赋值都是错误的
    35                 
    36                 int a[5] = {1,2,3,4,5};
    37                 a[5] = 100; //error 因为没有a[5]这个元素
    38                 
    39                 int a[5] = {1,2,3,4,5};
    40                 int b[5];
    41                 如果要把a数组中的之全部复制给b数组
    42                     错误的写法;
    43                         b = a;//error
    44                     正确的写法;
    45                         for(int i=0; i<5; ++i)
    46                             a[i] = b[i];
    47 */
    数组的简单使用_2 
     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 int main()
     4 {
     5     int a[8] = {1,2,3,4,5,6,7,8};
     6     int i,j;
     7     int t;
     8     
     9     i = 0;
    10     j = 7;
    11     while(i < j)
    12     {
    13         t = a[i];
    14         a[i] = a[j];
    15         a[j] = t;
    16         
    17         i++;
    18         --j;
    19     }
    20     
    21     for (i=0; i<8; ++i)
    22         printf("%d
    ",a[i]);
    23     system("pause");
    24     return 0;
    25 }
    把一个数组中的元素给全部倒过来

    二、二维数组

     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 int main()
     4 {
     5     int a[3][4] = {
     6                     {1, 2, 3, 4},
     7                     {5, 6, 7, 8},
     8                     {9,10,11,12}
     9                   };
    10     int i,j;
    11     
    12     for(i=0; i<3; ++i)
    13     {
    14         for(j=0; j<4; ++j)
    15             printf("%-5d ",a[i][j]);
    16         printf("
    ");
    17     }
    18     system("pause");
    19     return 0;
    20 }
    21 /*
    22     二维数组
    23         int a[3][4];
    24         总共是12个元素,可以当做3行4列看待,这12个元素的名字依次是
    25             a[0][0] a[0][1] a[0][2] a[0][3]
    26             a[1][0] a[1][1] a[1][2] a[1][3]
    27             a[2][0] a[2][1] a[2][2] a[2][3]
    28             a[i][j] 表示第i+1行第j+1列元素
    29             int a[m][n];该二维数组的右下角位置的元素只能是a[m-1][n-1]
    30                 
    31     
    32 */
    输入二维数组的内容 
     1 /*是否存在多维数组
     2     不存在
     3     因为内存是线性一维的
     4     n维数组可以的当做每个元素n-1维数组的一维数组
     5         比如:
     6             int a[3][4];
     7                 该数组是含有三个元素的一维数组
     8                 只不过每个元素都可以再分成4个小元素
     9             int a[3][4][5];
    10                 该数组是含有3个元素的一维数组
    11                 只不过每个元素都是4行5列的二维数组
    12 */
    是否存在多维数组
  • 相关阅读:
    VML 和 SVG 的区别
    ie神器htc
    js函数实现递归自调用的方法
    http状态码
    高级算法——贪心算法(背包问题)
    高级算法——贪心算法(找零问题)
    关于arguments.callee
    检索算法——二分查找
    检索算法——顺序查找(最大值、最小值、自组织数据)
    高级排序算法——快速排序(一种分而治之的算法)
  • 原文地址:https://www.cnblogs.com/Maxwell599/p/3173875.html
Copyright © 2020-2023  润新知