首页 > 其他分享 >c语言二维数组

c语言二维数组

时间:2024-11-07 22:20:53浏览次数:3  
标签:10 语言 int 二维 数组 printf matrix

一、创建二维数组并初始化

在c语言中二维数组可以在声明时直接初始化。

#include <stdio.h>

int main() {
    // 创建一个3x3的二维数组并初始化
    int matrix[3][3] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };

    return 0;
}

二、访问二维数组中的元素

通过行索引来访问二维数组中的元素

// 访问第1行第2列的元素(索引从0开始,所以是[0][1])
    int element = matrix[0][1];
    printf("Element at (0, 1): %d\n", element);  // 输出: Element at (0, 1): 2

三、修改二维数组中的元素

通过索引来修改二维数组中的元素。

// 修改第2行第1列的元素(索引从0开始,所以是[1][1])
    matrix[1][1] = 99;
    printf("Modified matrix element at (1, 1): %d\n", matrix[1][1]);  // 输出: Modified matrix element at (1, 1): 99

四、遍历二维数组

使用嵌套的for循环来遍历二维数组中的所有元素

// 遍历并打印二维数组中的所有元素
    printf("Original matrix:\n");
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            printf("%d ", matrix[i][j]);
        }
        printf("\n");  // 换行
    }

五、二维数组的应用实例

#include <stdio.h>

int main() {
    // 创建一个3x3的二维数组并初始化
    int matrix[3][3] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };

    // 访问并打印第1行第2列的元素
    int element = matrix[0][1];
    printf("Element at (0, 1): %d\n", element);

    // 修改第2行第1列的元素并打印
    matrix[1][1] = 99;
    printf("Modified matrix element at (1, 1): %d\n", matrix[1][1]);

    // 遍历并打印原始矩阵
    printf("Original matrix:\n");
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            printf("%d ", matrix[i][j]);
        }
        printf("\n");
    }

    // 定义另一个3x3的矩阵
    int matrix2[3][3] = {
        {9, 8, 7},
        {6, 5, 4},
        {3, 2, 1}
    };

    // 创建结果矩阵
    int result[3][3];

    // 进行矩阵加法
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            result[i][j] = matrix[i][j] + matrix2[i][j];
        }
    }

    // 打印结果矩阵
    printf("Result matrix:\n");
    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            printf("%d ", result[i][j]);
        }
        printf("\n");
    }

    return 0;
}

输出

Element at (0, 1): 2
Modified matrix element at (1, 1): 99
Original matrix:
1 2 3
4 99 6
7 8 9
Result matrix:
10 10 10
10 104 10
10 10 10

标签:10,语言,int,二维,数组,printf,matrix
From: https://blog.csdn.net/m0_63824671/article/details/143608894

相关文章

  • c语言一维数组
    一维数组数组的目的主要是为了解决在编程中需要存储和处理多个相同类型数据的问题。#include<stdio.h>intmain(){intarr[5]={1,2,3,4,5};//定义一个一维数组for(inti=0;i<5;i++){//使用for循环遍历数组printf("%d",arr[i]);//打......
  • 一、Introduction to R. 走进R语言(一):R & 心理学
    目录R的适用范围为什么要学习R语言?如何学习R语言?R&Rstudio下载R&RstudioR的适用范围R isa programminglanguage for statisticalcomputing and datavisualization.从维基百科对R的介绍可以得知,R主要是用来做统计的计算和数据可视化的。简言之,一篇文......
  • 数据结构_链表_双向循环链表 & 栈 的初始化、插入、删除、修改、查询打印(基于C语言实
    一、双向循环链表的原理与应用双向循环链表与双向链表的区别:指的是双向循环链表的首结点中的prev指针成员指向链表的尾结点,并且双向循环链表的尾结点里的next指针成员指向链表的首结点,所以双向循环链表也属于环形结构。由于带头结点更加方便用户进行数据访问,所以本次创建一条带......
  • 数据库SQL Server语言 练习题合集
    文章目录一、“小学生”题库二、“硕士”题库三、“博士”题库四、“博士后”题库五、“博导”题库六、“校长”题库七、“院士”题库总结1.**多表联接查询**:2.**嵌套查询(子查询)**:3.**去重与计数**:4.**条件筛选与分组**:5.**比较与计算**:6.**实际应用**:总结:一......
  • 线段树与树状数组
    线段树与树状数组都是十分经典的数据结构,其实能用树状数组解决的问题也都能用线段树解决,但线段树相比于树状数组常数较大。单点修改区间查询线段树做法,树状数组做法,其实单纯实现这个还是用树状数组较好(毕竟常数小还好写)区间修改区间查询只有区间加树状数组做法,线段树做法既......
  • 数据结构_链表_单向循环链表 & 双向链表的初始化、插入、删除、修改、查询打印(基于C语
    一、单向循环链表的原理与应用思考:对于单向链表而言,想要遍历链表,则必须从链表的首结点开始进行遍历,请问有没有更简单的方案实现链表中的数据的增删改查?回答:是有的,可以使用单向循环的链表进行设计,单向循环的链表的使用规则和普通的单向链表没有较大的区别,需要注意:单向循环链表的......
  • 力扣中等难度热题——长度为K的子数组的能量值
    目录题目链接:3255.长度为K的子数组的能量值II-力扣(LeetCode)题目描述示例提示:解法一:通过连续上升的长度判断Java写法:C++写法: 相比与Java写法的差别运行时间时间复杂度和空间复杂度时间复杂度:空间复杂度:解法二:双指针+极限优化优化前Java写法:优化前运行时......
  • 使用c语言,用keil5进行stm32F103c8点灯实验
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言学习stm32首先要学会最基础的电灯实验。进行电灯实验需要进行一些前提工作,需要建立启动文件start和标准外设驱动文件library文件和uesr文件这三个工程文件。具体文件可在网站上进行搜素拷贝......
  • 2024年最受欢迎的编程语言
    No.1JavaScript/TypeScript自从创建第一个网站以使其动态化以来,JavaScript多年来一直受到欢迎。话虽如此,目前JavaScript是整个市场上需求量最大的编程语言。此外,TypeScript(一种具有类型安全性的JavaScript超集)的到来也可能有助于实现这一里程碑。TypeScript的受欢迎程度近......
  • C语言学习8
    最近学的不是很多,只能更几个C语言小游戏给大家看看。一.猜数字游戏(难)1.随机数的生成要想完成猜数字游戏,⾸先得产⽣随机数,那怎么产⽣随机数呢?2.randC语⾔提供了⼀个函数叫rand,这函数是可以⽣成随机数的,函数原型如下所⽰:intrand(void);rand函数会返回⼀个伪随机数......