C语言-数组的相关知识

1.什么是数组

数组是一种数据结构,用于存储相同类型的多个元素。它是一系列连续的内存位置,每个位置都有一个唯一的索引来访问其中的元素。数组可以在编程中用于存储和操作大量数据。

数组有固定的大小,一旦创建,其大小通常不能改变。数组的大小由元素的数量决定,每个元素占据相同的内存空间。通过使用索引,我们可以访问数组中的特定元素,索引从0开始,依次递增。

例如,一个整数数组 int[5] 可以存储5个整数,可以通过索引访问这些元素,如 arr[0]、arr[1]、arr[2] 等。

2.1一维数组的定义

每个元素的数据类型     数组名[元素的个数];
列如:定义一个长度为10的整数型数组

int arr[10];

浮点型数组,字符型数组也是类似的       

float arr[10];

char arr[10];

2.2一维数组的初始化

部分初始化

int scores[5]={78,98,67};

//初始化的为它的值,未进行初始化自动默认(int,float)为0,

全部初始化

int scores[5]={78,98,67,88,90};
当全部初始化的时候,可以将元素的个数省略,
int scores[]={78,98,67,88,90};
字符型数组
char str[]={'h','e','l','l','o','w','o','r','l','d','\0'};
char str[]="helloworld";
一维数组的访问
数组名 [ 下标 ] 下标是 0 开始的
列:arr[0],arr[1],arr[2]等

2.2二维数组的定义

每个元素的数据类型       数组名[数组的长度] [每个数组中 元素的个数 ]

int arr[][];

二维数组的相关知识与一维数组的类似

3.一维数组的应用

1.元素的输入

1.1直接输入,创建数组的同时,输入元素

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

float arr[5]={1,2,3,4,5};

char arr[5]={'h','e','l','l','o'};

1.2通过代码的输入

#include <stdio.h>

#define SIZE 5  // 数组的大小

int main() {
    int arr[SIZE];  // 声明一个大小为SIZE的整型数组
    int i;

    printf("请输入%d个整数:\n", SIZE);
    for (i = 0; i < SIZE; i++) {
        scanf("%d", &arr[i]);  // 通过循环逐个输入数组元素的值
    }

    printf("您输入的数组为:\n");
    for (i = 0; i < SIZE; i++) {
        printf("%d ", arr[i]);  // 通过循环逐个输出数组元素的值
    }
    printf("\n");

    return 0;
}

2.代码的输出

#include <stdio.h>

#define SIZE 5  // 数组的大小

int main() {
    int arr[SIZE] = {1, 2, 3, 4, 5};  // 声明并初始化一个大小为SIZE的整型数组
    int i;

    printf("数组的元素为:\n");
    for (i = 0; i < SIZE; i++) {
        printf("%d ", arr[i]);  // 通过循环逐个输出数组元素的值
    }
    printf("\n");

    return 0;
}

4.二维数组的应用

4.1二维数组的输入

1.1直接输入,创建数组的同时,输入元素

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

char arr[5][20]={"beijing","shanghai","wuhan","henan","lasa"};

1.2通过代码输入
#include <stdio.h>

#define  X  3// 行数
#define Y  4 // 列数

int main() {
    int arr[X][Y];  // 声明一个大小为ROWS*COLS的二维整型数组
    int i, j;

    printf("请输入%d行%d列的整数矩阵:\n", X, Y);
    for (i = 0; i < X; i++) {
        for (j = 0; j <Y; j++) {
            scanf("%d", &arr[i][j]);  // 通过嵌套循环逐个输入二维数组元素的值
        }
    }

    printf("您输入的矩阵为:\n");
    for (i = 0; i <X; i++) {
        for (j = 0; j < Y; j++) {
            printf("%d ", arr[i][j]);  // 通过嵌套循环逐个输出二维数组元素的值
        }
        printf("\n");
    }

    return 0;
}

4.2.二维数组的输出

#include <stdio.h>
#define X 3  // 行数
#define Y 3  // 列数

int main() {
    int arr[X][Y] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};  // 声明并初始化一个大小为X*Y的二维整型数组
    int i, j;

    printf("二维数组的元素为:\n");
    for (i = 0; i < X; i++) {
        for (j = 0; j < Y; j++) {
            printf("%d ", arr[i][j]);  // 通过嵌套循环逐个输出二维数组元素的值
        }
        printf("\n");
    }

    return 0;
}

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值