C 数组

当我们需要存储一组相同类型的数据时,C语言中的数组就是一个非常好的选择。数组可以存储基本类型、结构体、指针等数据类型。本文将详细介绍 C 数组的定义、初始化、访问和常用操作。

定义和初始化数组

C语言中定义一个数组有三个关键字:类型、数组名和数组大小。通常,数组定义的格式如下:

type arrayName [ arraySize ];

其中,type表示数组元素的类型,arrayName代表数组的名称,arraySize是可选项,表示数组的大小。

定义数组后,我们需要为其分配内存空间,即初始化数组。我们可以在定义数组时,初始化数组的值。分为显式数组初始化和隐式数组初始化。

显式数组初始化

显式初始化是指在定义数组时,直接为其成员赋值,例如:

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

以上代码定义了一个大小为5的整型数组,并初始化为1,2,3,4, 5。

隐式数组初始化

隐式初始化是指在定义数组时,不对其进行显式赋值,例如:

int nums[5];

此时数组成员的值并没有确定,可以通过循环等方式为其赋值,例如:

for (int i = 0; i < 5; i++) {
    nums[i] = i + 1;
}

访问和操作数组

访问数组元素

我们可以使用下标操作符 [] 来访问数组的元素。数组下标是从0开始的,例如:

int nums[3] = {1, 2, 3};
int firstNum = nums[0];  // 访问第一个元素,值为1

数组元素遍历

遍历整个数组,可以使用for循环,例如:

int nums[3] = {1, 2, 3};
for (int i = 0; i < sizeof(nums) / sizeof(int); i++) {
    printf("%d", nums[i]);
}

输出结果为:123

获取数组长度

为了方便操作,我们需要知道数组的长度。在C语言中,可以使用以下方法获得数组的长度:

int nums[3] = {1, 2, 3};
int len = sizeof(nums) / sizeof(int);
printf("%d", len);

输出结果为:3

多维数组

除了一位数组,C语言还支持多维数组(二维、三维、n维等)。多维数组在内存中存储是连续的,例如:

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

我们可以使用两个for循环来遍历整个多维数组,例如:

for (int i = 0; i < 2; i++) {
    for (int j = 0; j < 3; j++) {
        printf("%d", nums[i][j]);
    }
}

输出结果为:123456

实例

下面是两个实例演示了 C 数组的使用。

实例1:计算数组中的元素之和

#include <stdio.h>

int main() {
    int nums[5] = {1, 2, 3, 4, 5};
    int sum = 0;
    for (int i = 0; i < sizeof(nums) / sizeof(int); i++) {
        sum += nums[i];
    }
    printf("数组元素之和为:%d", sum);
    return 0;
}

输出结果为:数组元素之和为:15

实例2:矩阵转置

#include <stdio.h>
#define MATRIX_SIZE 3

void transpose(int matrix[MATRIX_SIZE][MATRIX_SIZE]) {
    for (int i = 0; i < MATRIX_SIZE; i++) {
        for (int j = i + 1; j < MATRIX_SIZE; j++) {
            int temp = matrix[i][j];
            matrix[i][j] = matrix[j][i];
            matrix[j][i] = temp;
        }
    }
}

void printMatrix(int matrix[MATRIX_SIZE][MATRIX_SIZE]) {
    for (int i = 0; i < MATRIX_SIZE; i++) {
        for (int j = 0; j < MATRIX_SIZE; j++) {
            printf("%d ", matrix[i][j]);
        }
        printf("\n");
    }
}

int main() {
    int matrix[MATRIX_SIZE][MATRIX_SIZE] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9},
    };
    printf("原矩阵:\n");
    printMatrix(matrix);
    transpose(matrix);
    printf("转置后的矩阵:\n");
    printMatrix(matrix);
    return 0;
}

输出结果为:

原矩阵:

1 2 3 
4 5 6 
7 8 9 

转置后的矩阵:

1 4 7 
2 5 8 
3 6 9 

以上就是 C 数组的使用攻略,希望对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C 数组 - Python技术站

(0)
上一篇 2023年5月10日
下一篇 2023年5月10日

相关文章

  • Python 中的json常见用法实例详解

    Python 中的 JSON 常见用法实例详解 什么是 JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它基于 JavaScript 的语法规则,但具有更加简单易读的特点。JSON 格式的数据可以被快速解析和生成,是一种纯文本格式,可以通过网络进行通信,也可以存储在本地。因此它在 Web 应用中得到了…

    C 2023年5月23日
    00
  • 一小时快速入门Python教程

    一小时快速入门Python教程可以分为以下几个步骤实现: 1. 安装Python 首先需要安装Python,可以到Python官网下载所需版本的安装包,然后按照提示完成安装。 2. 安装集成开发环境(IDE) IDE可以帮助我们更方便的编写和运行Python代码。常用的IDE有PyCharm、Sublime Text、Visual Studio Code等。…

    C 2023年5月23日
    00
  • C++实现银行排队系统

    C++实现银行排队系统 介绍 银行排队系统是一种经典的模拟系统。该系统可以模拟银行中客户的流动、排队、服务等过程。通过模拟,可以帮助银行评估服务能力,从而提高工作效率。本文将介绍如何使用C++实现银行排队系统。 系统设计 队列的实现 队列是银行排队系统的核心数据结构。在C++中,可以使用STL中的队列容器来实现队列。以下是如何定义一个整型队列: “`c++…

    C 2023年5月23日
    00
  • Javascript中的数学函数集合

    下面是Javascript中的数学函数集合的完整攻略: 数学函数集合 Javascript中有许多内置的数学函数,这些函数可以用来进行常见的数学计算。下面介绍一些常用的数学函数: Math.abs() Math.abs()函数用于返回一个数的绝对值。如果参数是正数,则返回其值;如果参数是负数,则返回其相反数。 console.log(Math.abs(-5)…

    C 2023年5月22日
    00
  • C++中关于互斥量的全面认知

    C++中的互斥量是多线程编程中实现同步的重要手段。以下是关于互斥量的全面认知攻略: 互斥量的基本概念 互斥量(Mutex)是一种同步工具,用于保护被多线程共享的资源(如共享内存)不被并发访问和修改,实现了资源的互斥访问。互斥量可以用于解决多线程环境中的竞争条件问题。 互斥量的使用 在C++中,互斥量是通过<mutex>头文件来使用。简单使用互斥量…

    C 2023年5月22日
    00
  • C语言设计前中后队列实例代码

    C语言设计前中后队列实例代码攻略 在本篇文章中,我们将学习如何在C语言中设计前、中、后队列,并提供相应的示例代码。下面将分别对前、中、后队列进行介绍和说明。 前队列 前队列,也称为顺序队列。它是一种数据结构,它具有先进先出(First in First Out,简称FIFO)的特点,是一种简单但基本的数据结构,常用在队列缓存、消息队列、web服务器等领域。下…

    C 2023年5月24日
    00
  • Win7系统运行游戏应用程序报错0xc000007d无法正常启动

    问题描述: 在运行Win7系统中的某些游戏或应用程序时,出现了错误代码0xc000007d,导致无法正常启动。 解决方案: 确认系统与程序兼容性 首先,需要确认系统与待运行的游戏或应用程序之间的兼容性。Win7系统比较老旧,一些新的软件或应用需要更高版本的系统支持。可以查看软件或应用程序的官方网站,查看其支持的最低操作系统版本。如果程序不兼容,将无法运行。如…

    C 2023年5月24日
    00
  • 怎样竖着选择Word中的文字 Word中Alt与Ctrl的冷门技巧

    怎样竖着选择Word中的文字 在Word中,我们可以使用鼠标和键盘操作来竖着选择文字。以下是具体步骤: 首先,在Word中打开需要编辑的文档。 将光标移动到要选择的起始位置。 按住Alt键,在键盘上按下鼠标右键,此时会出现光标箭头的横向和纵向选择线。 同时按住Shift键,按下方向键进行选择。可以选择向上、向下、向左和向右。 当选择到想要的位置后,松开Shi…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部