C语言一维数组

下面是关于 C 语言一维数组的完整使用攻略。

一维数组定义

在C语言中定义一维数组需要指定数组的类型和数组的长度,例如:

int arr1[10];   //声明一个长度为10的整型数组
char arr2[5];   //声明一个长度为5的字符型数组
double arr3[8]; //声明一个长度为8的双浮点型数组

在上述代码中分别定义了三个不同类型的数组,并指定了它们的长度为10、5、8。

一维数组的初始化

一旦定义了一个一维数组,可以通过初始化对数组进行赋值,例如:

int arr1[5] = {1, 2, 3, 4, 5};     //初始化一个长度为5的整型数组
char arr2[3] = {'a', 'b', 'c'};    //初始化一个长度为3的字符型数组
double arr3[4] = {2.1, 3.4, 5.6};  //初始化一个长度为4的双浮点型数组

在上述代码中,分别对三个不同类型的数组进行了初始化,这样每个数组就有了初始值。

一维数组的访问

一维数组中的每个元素可以通过下标(从0开始)进行访问,例如:

int arr1[5] = {1, 2, 3, 4, 5};     //定义并初始化一个长度为5的整型数组
int x = arr1[0];                   //访问数组的第一个元素,也就是 1
int y = arr1[2];                   //访问数组的第三个元素,也就是 3

在上述代码中,通过下标访问了数组中的第一个元素和第三个元素。

一维数组的遍历

数组可以通过循环进行遍历访问它的每一个元素,例如:

int arr1[5] = {1, 2, 3, 4, 5};     //定义并初始化一个长度为5的整型数组
int i;
for (i = 0; i < 5; i++) {          //循环遍历数组中的每一个元素,输出每个元素的值
    printf("%d ", arr1[i]);
}

在上述代码中,通过循环遍历了数组中的每个元素,并输出了每个元素的值,输出结果为 1 2 3 4 5。

一维数组作为函数参数

一维数组可以作为函数的参数进行传递,例如:

void print_arr(int arr[], int len) {    //定义一个函数,参数是一个整型数组和数组的长度
    int i;
    for (i = 0; i < len; i++) {         //循环遍历数组中的每一个元素,输出每个元素的值
        printf("%d ", arr[i]);
    }
}
int main() {
    int arr1[5] = {1, 2, 3, 4, 5};
    print_arr(arr1, 5);                 //调用函数并将数组以及数组的长度传递给函数
    return 0;
}

在上述代码中,定义了一个函数 print_arr,接收一个整型数组和数组的长度作为参数,循环遍历数组并输出每一个元素。然后在主函数中,定义了一个数组 arr1,并将它以及数组的长度传递给函数 print_arr。最终输出结果为 1 2 3 4 5。

示例一

下面是一个求一维数组平均值的代码示例:

#include <stdio.h>
double average(double arr[], int len) {   //定义一个函数,参数是一个双浮点型数组和数组的长度
    int i;
    double sum = 0.0;
    for (i = 0; i < len; i++) {            //循环遍历数组中的每一个元素,累加每个元素的值
        sum += arr[i];
    }
    return sum / len;                      //数组的平均值等于数组元素的和除以数组的长度
}
int main() {
    double arr1[5] = {1.0, 2.0, 3.0, 4.0, 5.0};   //定义并初始化一个长度为5的双浮点型数组
    printf("The average of the array is: %lf\n", average(arr1, 5));   //调用函数并将数组以及数组的长度传递给函数
    return 0;
}

在上述代码中,定义了一个函数 average,接收一个双浮点型数组和数组的长度作为参数,循环遍历数组并求出数组元素之和,然后返回数组的平均值。然后在主函数中,定义了一个数组 arr1,并将它以及数组的长度传递给函数 average。最终输出结果为 The average of the array is: 3.000000。

示例二

下面是一个反转一维数组的代码示例:

#include <stdio.h>
void reverse(int arr[], int len) {    //定义一个函数,参数是一个整型数组和数组的长度
    int i, j;
    for (i = 0, j = len - 1; i < j; i++, j--) { //使用两个指针从数组的两端遍历数组并交换元素
        int temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;
    }
}
int main() {
    int arr1[5] = {1, 2, 3, 4, 5};    //定义并初始化一个长度为5的整型数组
    reverse(arr1, 5);                //调用函数并将数组以及数组的长度传递给函数
    int i;
    for (i = 0; i < 5; i++) {         //循环遍历数组中的每一个元素,输出每个元素的值
        printf("%d ", arr1[i]);
    }
    return 0;
}

在上述代码中,定义了一个函数 reverse,接收一个整型数组和数组的长度作为参数,使用两个指针从数组的两端遍历数组并交换元素,从而实现将数组反转。然后在主函数中,定义了一个数组 arr1,并将它以及数组的长度传递给函数 reverse。最后循环遍历数组并输出每一个元素的值,输出结果为 5 4 3 2 1。

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

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

相关文章

  • C++代码实现学生信息管理系统

    C++代码实现学生信息管理系统 本文将详细讲解如何使用C++代码实现学生信息管理系统。该系统可以进行学生信息的增删查改等简单操作,并使用文件进行数据持久化。 1. 确定系统需求 首先需要明确需要实现哪些功能,包括但不限于:- 添加学生信息- 修改学生信息- 删除学生信息- 查询学生信息- 显示学生信息列表 2. 确定数据结构 根据需求,我们可以选择使用结构体…

    C 2023年5月23日
    00
  • 上古卷轴5传奇难度炼金师怎么开局好 传奇难度炼金师开局攻略

    上古卷轴5传奇难度炼金师开局攻略 炼金师角色建议 种族:阿尔高(Altaic)或暗精灵(Dark Elf),他们有更好的炼金术技能和魔法属性。 技能:炼金术、修补和瞄准。 石头:史前之石(The Steed),加快行走速度和背包容量。 装备:轻甲,弓箭和炮台制造材料。 开局攻略 步骤一:获得合适的装备 到河岸城镇(Riverwood)和白兰地(Whiteru…

    C 2023年5月22日
    00
  • C++实现查找中位数的O(N)算法和Kmin算法

    C++实现查找中位数的O(N)算法和Kmin算法 中位数 中位数指的是一组数据中间位置的数。 对于一组无序数据而言,可以使用快速排序、堆排序等算法求出其中位数。 但是这些算法的时间复杂度较高。 在此讨论的是时间复杂度为O(N)的算法。 O(N)算法 O(N)算法的基本思想:将一组数据分成若干组,然后对于每一组进行处理。 首先随机选择一个数作为参考数,然后将数…

    C 2023年5月22日
    00
  • c++如何实现Base64算法

    C++如何实现Base64算法 Base64简介 Base64是一种将二进制数据编码成ASCII字符的方法,常用于在HTTP协议等网络协议中将二进制数据进行传输。 Base64将三个8位的字节转换为四个6位的字节,产生出来的输出结果最后可能会出现1~2个”=”号,这是为了补齐长度用的。 例如,“Man”这个单词被编码后为“TWFu”,解码后为”Man”。 C…

    C 2023年5月22日
    00
  • Clion配置C语言环境的步骤详解

    Clion配置C语言环境的步骤详解 在使用Clion编写C语言程序时,需要先进行环境配置,具体步骤如下: 步骤一:安装CMake Clion使用CMake来管理项目,因此需要先安装CMake。 具体步骤如下: 访问CMake官网:https://cmake.org/ 下载相应操作系统的安装程序,例如Windows系统下载 .msi文件。 安装CMake。 步…

    C 2023年5月23日
    00
  • C语言递归实现扫雷游戏

    C语言递归实现扫雷游戏攻略 什么是递归? 递归是指函数调用自身的过程。递归函数是这样一种函数,它的重点在于在某个条件下调用自己,通常缩短问题的规模。比如说,在解决扫雷游戏的过程中,可能需要递归函数来处理周围方块是否可以揭开、是否需要继续递归等问题。 扫雷游戏的实现 游戏规则 扫雷游戏以一个矩形方格作为游戏场地,其中有一些格子中埋藏着地雷。游戏开始时,每个格子…

    C 2023年5月23日
    00
  • C语言实验报告范例

    实验报告四 一, 实验类型:设计型 二, 实验室: 三, 指导老师: 四, 日期: 五, 实验名称:if分支语句的嵌套 六, 实验目的: 1, 学习if嵌套结构,能够用C语言编程解决日常生活的实例 2, 明确if语句在实现分支结构控制语句方面的特点和优势 3, 熟练掌握关系运算符、关系表达式、逻辑运算符和逻辑表达式、条件运算符和条件表达式,会使用if分支语句…

    C 2023年4月25日
    00
  • x86汇编DOS编程环境搭建过程

    搭建x86汇编DOS编程环境 1.安装DOSBox DOSBox是一个模拟DOS环境的开源软件,可以在现代操作系统上运行DOS程序。我们可以利用其模拟DOS环境来进行汇编语言程序的编写和调试。 在DOSBox官网上下载适用于你所使用操作系统的DOSBox并安装。 2.下载并安装x86汇编编译器 这里将介绍NASM。 下载NASM:http://www.nas…

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