C语言中数组的使用详解

yizhihongxing

C语言中数组的使用详解

什么是数组

数组(Array)是一种线性数据结构,它由一组相同类型的数据元素组成。C语言中的数组是一段固定长度、相同数据类型的连续内存空间。

定义数组

C语言中,声明数组需要指定其元素类型和元素个数。以下是两种典型的数组声明方式。

一维数组:

int arr[10]; // 声明一个长度为10的整型数组

二维数组:

int arr[3][4]; // 声明一个3行4列的整型数组

读写数组元素

可以使用下标运算符([])来访问数组中的元素。

#include <stdio.h>

int main() {
    int arr[3] = {1, 2, 3}; // 声明一个长度为3的整型数组(初始化为1,2,3)
    printf("%d\n", arr[1]); // 输出:2
    arr[1] = 20; // 修改元素的值
    printf("%d\n", arr[1]); // 输出:20
    return 0;
}

遍历数组

可以使用循环语句(如forwhiledo-while)来遍历数组中的每一个元素。

#include <stdio.h>

int main() {
    int arr[5] = {1, 2, 3, 4, 5};
    int i;
    for (i = 0; i < 5; i++) {
        printf("%d\n", arr[i]);
    }
    return 0;
}

数组作为函数参数

在函数中,可以使用数组作为参数进行传递。需要注意,数组作为函数参数时,实际传递的是数组的地址。

#include <stdio.h>

void print_array(int arr[], int len) { // 数组作为参数
    int i;
    for (i = 0; i < len; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

int main() {
    int arr[5] = {1, 2, 3, 4, 5};
    print_array(arr, 5); // 调用函数
    return 0;
}

示例1:数组求和

下面的示例代码,使用循环语句遍历数组中的每一个元素,并计算它们的和。

#include <stdio.h>

int main() {
    int arr[5] = {1, 2, 3, 4, 5};
    int sum = 0;
    int i;
    for (i = 0; i < 5; i++) {
        sum += arr[i];
    }
    printf("sum = %d\n", sum);
    return 0;
}

示例2:数组排序

下面的示例代码,使用冒泡排序算法对数组进行升序排列。

#include <stdio.h>

void bubble_sort(int arr[], int len) {
    int i, j, temp;
    for (i = 0; i < len - 1; i++) {
        for (j = 0; j < len - 1 - i; j++) {
            if (arr[j] > arr[j + 1]) {
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
}

int main() {
    int arr[5] = {4, 2, 5, 1, 3};
    bubble_sort(arr, 5); // 排序
    int i;
    for (i = 0; i < 5; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
    return 0;
}

以上是C语言中数组的使用详解。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言中数组的使用详解 - Python技术站

(0)
上一篇 2023年6月25日
下一篇 2023年6月25日

相关文章

  • ASP.NET在IE10中无法判断用户已登入及Session丢失问题解决方法

    ASP.NET在IE10中无法判断用户已登录及Session丢失问题解决方法攻略 问题描述 在使用ASP.NET开发Web应用程序时,有时会遇到在IE10浏览器中无法判断用户是否已登录以及Session丢失的问题。这可能导致用户无法正常使用应用程序的功能。 解决方法 以下是解决ASP.NET在IE10中无法判断用户已登录及Session丢失问题的攻略: 1.…

    other 2023年8月5日
    00
  • Java集合TreeSet用法详解

    Java集合TreeSet用法详解 1. 什么是TreeSet TreeSet是Java集合框架中的一种实现,它是一个有序的、支持基本操作(添加、删除、查找)的集合。使用TreeSet可以方便地实现对元素的排序,并且支持非重复元素的存储。 在TreeSet中,元素按照自然顺序或者指定的比较器顺序进行排序,其中自然顺序指元素实现Comparable接口,并且根…

    other 2023年6月26日
    00
  • matlab中函数fscanf

    以下是详细讲解“matlab中函数fscanf的完整攻略”的标准Markdown格式文本,包含两个示例说明: matlab中函数fscanf的完整攻略 在Matlab中,函数fscanf可以用于读取文件中的数据。本攻略将介绍如何使用fscanf函数读取文件中的数据。 步骤一:打开文件 使用fscanf函数读取文件中的数据,需要先打开文件。可以使用fopen函…

    other 2023年5月10日
    00
  • crontab环境变量设置

    在使用crontab定时任务时,有时需要设置环境变量以确保任务能够正常运行。以下是详细的攻略: 设置crontab环境变量 要设置crontab环境变量,可以按照以下步骤操作: 打开终端并输入以下命令: bash crontab -e 在打开的文件中添加需要设置的环境变量。例如,要设置JAVA_HOME环境变量,可以添加以下行: bash JAVA_HOME…

    other 2023年5月7日
    00
  • 详解Android文件存储

    详解Android文件存储 在Android开发中,经常需要使用文件存储数据。本篇教程将详细介绍Android的文件存储方式,包括内部存储和外部存储。 内部存储 内部存储是指应用程序直接在设备内存中进行数据存储的方式。内部存储的优点是它所存储的数据不会直接暴露给用户,同时也不能被其他应用程序访问和读取。一般情况下,应用程序在内部存储中存储的数据是与应用程序相…

    other 2023年6月26日
    00
  • Java数组优点和缺点_动力节点Java学院整理

    Java数组优点和缺点 Java数组是一种非常常见的数据结构,它被广泛地应用于各种Java程序中。今天我们就来讲解一下Java数组的优点和缺点。 优点 1. 数据存储结构简单 Java数组的数据存储结构是非常简单的,它可以将同一类型的数据存储在一起,扩展性也非常强。因此在Java程序中,数组是一种非常常见的数据结构。比如,我们可以使用数组来存储学生的成绩。 …

    other 2023年6月25日
    00
  • 三星手机怎么启动开发者选项启动USB调置

    如何启动三星手机的开发者选项和USB调试 开发者选项是一组Android系统设置,它们通常用于调试和优化Android应用程序。其中包括很多高级设置,比如USB调试和OEM解锁。三星手机的开发者选项和USB调试可以如下启动: 打开“设置”应用程序。在最顶部的“设置”页面中,向下滚动,并选择“开发者选项”。 如果没有找到开发者选项,需要将其打开。在“设置”页面…

    other 2023年6月26日
    00
  • Android 网络图片查看显示的实现方法

    Android 网络图片查看显示的实现方法攻略 在Android应用中,我们经常需要从网络上加载并显示图片。下面是一种实现方法的详细攻略,包含两个示例说明。 步骤一:添加依赖库 首先,我们需要在项目的build.gradle文件中添加以下依赖库: implementation ‘com.squareup.picasso:picasso:2.71828’ 这将…

    other 2023年8月21日
    00
合作推广
合作推广
分享本页
返回顶部