c语言二维数组的使用方法:首先打开c语言脚本文件并定义一个二维数组;然后调用一个自定义函数求二维数组每列元素中的最小值的和值;最后通过返回值传回主函数输出即可。

C语言的学习中,二维数组可以算是基础中比较重要的内容了,本篇文章主要讲的是二维数组在C语言中的使用方法,希望能够帮助到你。

二维数组定义的一般形式

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

例如:

int arr[3][4]

表示定义了一个 3×4,即 3 行 4 列总共有 12 个元素的数组 a。这 12 个元素的名字依次是:a[0][0]、a[0][1]、a[0][2]、a[0][3];a[1][0]、a[1][1]、a[1][2]、a[1][3];a[2][0]、a[2][1]、a[2][2]、a[2][3]。

与一维数组一样,行序号和列序号的下标都是从 0 开始的。元素 a[i][j] 表示第 i+1 行、第 j+1 列的元素。数组 int a[m][n] 最大范围处的元素是 a[m–1][n–1]。所以在引用数组元素时应该注意,下标值应在定义的数组大小的范围内。

此外,与一维数组一样,定义数组时用到的“数组名[常量表达式][常量表达式]”和引用数组元素时用到的“数组名[下标][下标]”是有区别的。前者是定义一个数组,以及该数组的维数和各维的大小。而后者仅仅是元素的下标,像坐标一样,对应一个具体的元素。

二维数组始化
1) 分行给二维数组赋初值,如:

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

这种赋初值的方法比较直观,把每行看作一个元素,按行赋初值。
2) 也可以将所有数据写在一个花括号内,按数组排列的顺序对各元素赋初值。比如:

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

3) 也可以只对部分元素赋初值。比如:

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

4) 如果在定义数组时就对全部元素赋初值,即完全初始化,则第一维的长度可以不指定,但第二维的长度不能省。比如:

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

等价于:

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

系统会根据数据总数和第二维的长度算出第一维的长度。但这种省略的写法几乎不用,因为可读性差。
5) 二维数组“清零”,里面每一个元素都是零,如下:

int a[3][4]={0};

二维数组如何输入输出

在一维数组中是用一个 for 循环进行输入输出,而二维数组元素的输入输出要使用两个 for 循环嵌套。

下面有一个小例题,大家可以用来练练手:

//输入一个3行4列的二维数组的元素值
//调用一个自定义函数求二维数组每列元素中的最小值的和值
//和值通过返回值传回主函数输出
#include "stdio.h"
int sum(int arr[3][4])//定义一个二维数组
{
    int sum = 0;
    for (int i = 0; i < 4; i++)
    {
        int min = arr[0][i];
        for (int j = 1; j < 3; j++)//找出每列最小元素
            if (min > arr[j][i]) 
                min = arr[j][i];
        sum += min;//每列最小元素相加
    }
    return sum;
}
int main()
{
    int arr[3][4];
    for (int i = 0; i < 3; i++)  //行
        for (int j = 0; j < 4; j++)//列
            scanf("%d", &arr[i][j]); //输入数组元素
    int r = sum(arr);
    printf("%d\n", r);//输出每列最小元素之和
    return 0;
}

实现结果:

1 2 3 4
0 2 5 9
0 1 3 -1
3

相关教程:C视频教程

以上就是c语言中二维数组怎么用?的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

  • 相关标签:C语言 二维数组
  • 程序员必备接口测试调试工具:点击使用

    Apipost = Postman + Swagger + Mock + Jmeter

    Api设计、调试、文档、自动化测试工具

    网页生成APP,用做网站的技术去做APP:立即创建

    手机网站开发APP、自助封装APP、200+原生模块、2000+映射JS接口按需打包

    • 上一篇:.net中的错误处理机制是什么?
    • 下一篇:c语言初学者用什么软件?

    相关文章

    相关视频


    • 【C语言】5种妙招教你轻松搞定变量值交换
    • c语言中怎么定义数组
    • c语言和java有什么区别
    • c语言属于什么类型的编程语言
    • c语言中二维数组怎么用?
    • [Linux C语言] 输入流输出流以及错误流的重定向
    • [Linux C语言] 管道原理及应用
    • [Linux C语言] 打造实用C语言小程序

    视频教程分类

    • php视频教程
    • html视频教程
    • css视频教程
    • JS视频教程
    • jQuery视频教程
    • mysql视频教程
    • Linux视频教程
    • Python视频教程
    • Laravel视频教程
    • Vue视频教程

    专题

    c语言中二维数组怎么用?