温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C语言中数组的示例分析

发布时间:2022-03-14 09:26:15 来源:亿速云 阅读:232 作者:小新 栏目:开发技术

这篇文章给大家分享的是有关C语言中数组的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

    1. 数组

    数组是一组相同类型变量的有序集合,用于存放一组相同类型的数据。这一组变量用数组名和从0开始的下标标识,使用内存中一块连续的存储空间。依据数组中元素下标的个数分为一维数组、二维数组和多维数组。

    1.1 一维数组

    1.1.1 一维数组的定义

    一维数组定义的一般形式为:

    类型说明符      数组名[常量或常量表达式];

    数组一经定义,其长度就不可改变,或者说,数组中元素的个数是固定的。程序编译或运行时,将为数组分配一块固定大小的连续的存储空间。例如:

    int   array[10];

    定义一维数组array,数据元素的类型为int,数组中有10个元素。这十个元素下标从0~9。

    1.1.2 一维数组的初始化

    (1)为数组的全部元素赋初值。如:

     int  a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

    (2)对数组全部元素初始化。数组长度缺省,初值个数就是数组长度。如:

    int  a[ ] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

    (3)为数组部分元素赋初值。如:

    int  a[10] = {1, 2, 3, 4, 5};

    只对数组前5个元素赋初值,a[0]的初值为1,……,a[4]的初值为5,其余元素的初值为0。

    如果没有对数组初始化,则数组元素的初值是一个不确定的值。

    1.1.3 一维数组的引用

    【例】将数组中的元素逆序存放后输出(不得另外开辟数组存储空间)。

    #include<stdio.h>
    #define N 10
    void main()
    {
        int i, t, a[N];
        for(i = 0; i < N; i++)
        {
            scanf("%d", &a[i]);        //为数组元素赋值
        }
        printf("交换前的数组元素\n");
        for(i = 0; i < N; i++)        //输出交换前数组元素
        {        
            printf("%6d", a[i]);
        }
        for(i = 0; i < N/2; i++)      //交换
        {
            t = a[i];
            a[i] = a[N - i - 1];
            a[N - i - 1] = t;
        }
        printf("\n交换后代的数组元素\n");
        for(i = 0; i < N; i++)        //输出交换后数组元素
        {        
            printf("%6d", a[i]);
        }
        printf("\n");
    }

    运行及结果如下图所示:

    C语言中数组的示例分析

    1.2 二维数组及多维数组

    1.2.1 二维数组的定义

    二维数组定义的一般形式为:

    类型说明符    数组名 [常量表达式1]  [常量表达式2];

    两个方括号中的常量表达式1和2分别规定了数组第一维的长度和第二维的长度,也称为行数和列数。两个常量表达式的乘积是数组元素的个数。

    事实上,二维数组是由一维数组扩展而来的。若一维数组的元素本身还是一个一维数组,则构成二维数组。以此类推,可构成三维数组,乃至多维数组。

    1.2.2 二维数组的初始化

    (1)按行为二维数组元素赋初值。如:

    int  a [3] [5] = {{0, 1, 2, 3, 4}, {1, 2, 3, 4, 5}, {2, 3, 4, 5, 6}};

    (2)使用一维数据对二维数组元素赋初值。如:

    int  a [4] [5] = {0, 1, 2, 3, 4, 1, 2, 3, 4, 5, 2, 3, 4, 5, 6};

    (3)按行为二维数组部分元素赋初值。如:

    int  a [4] [5] = {{1, 3}, {2}, {0}, {0, 2, 4}};

    (4)当对全部元素初始化或按行初始化时,第一维的长度可以缺省,但第二维的长度必须注明。如:

    int  a [] [4] = {1, 2, 3, 4, 5, 6, 7, 8}

    int  b [] [4] = {{1, 2, 3}, {1, 2, 3}}

    1.2.3 二维数组的引用

    【例】对5*5的矩阵编程。

    (1)求出主对角线元素的和;

    (2)求出矩阵下三角元素的和;

    (3)找出主对角线上最大值元素和它的位置。

    C语言中数组的示例分析

    感谢各位的阅读!关于“C语言中数组的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI