C语言数组的输入
在C语言中,数组是一种非常重要的数据结构,它可以存储多个相同类型的数据,数组的输入是编程中常见的操作,它涉及到如何从用户那里获取数据并将其存储到数组中,本文将详细介绍如何在C语言中实现数组的输入。
我们需要了解什么是数组,数组是一种线性表,它包含固定数量的元素,这些元素具有相同的类型和名称,数组中的每个元素都有一个唯一的索引,我们可以通过这个索引来访问或修改元素,一个包含5个整数的数组可以表示为int arr[5]。
在C语言中,我们可以使用scanf函数来从标准输入(通常是键盘)读取数据并存储到数组中,scanf函数的第一个参数是一个格式字符串,它描述了要读取的数据的类型和格式,第二个参数是要读取数据的变量的地址。
以下是一些常见的数组输入的例子:
1、输入一个整数数组:
#include <stdio.h> int main() { int n, i; printf("Enter the number of elements: "); scanf("%d", &n); int arr[n]; printf("Enter the elements: "); for(i = 0; i < n; i++) { scanf("%d", &arr[i]); } return 0; }
在这个例子中,我们首先从用户那里获取数组的大小n,然后创建一个大小为n的整数数组,我们使用一个for循环来读取n个整数并将它们存储到数组中。
2、输入一个字符串数组:
#include <stdio.h> #include <string.h> int main() { int n, i; printf("Enter the number of elements: "); scanf("%d", &n); char arr[n][100]; // 假设字符串的最大长度为100 printf("Enter the elements: "); for(i = 0; i < n; i++) { scanf("%s", arr[i]); // 注意,这里不需要取地址,因为数组名本身就是一个指针 } return 0; }
在这个例子中,我们首先从用户那里获取数组的大小n,然后创建一个大小为n的字符串数组,我们使用一个for循环来读取n个字符串并将它们存储到数组中,注意,当我们使用scanf读取字符串时,我们不需要取地址,因为数组名本身就是一个指针。
3、输入一个二维数组:
#include <stdio.h> #include <math.h> int main() { int n, m, i, j; printf("Enter the number of rows: "); scanf("%d", &n); printf("Enter the number of columns: "); scanf("%d", &m); int arr[n][m]; // 创建一个n行m列的整数数组 printf("Enter the elements: "); for(i = 0; i < n; i++) { for(j = 0; j < m; j++) { scanf("%d", &arr[i][j]); // 使用两个嵌套的for循环来读取二维数组的元素 } } return 0; }
在这个例子中,我们首先从用户那里获取二维数组的行数n和列数m,然后创建一个n行m列的整数数组,我们使用两个嵌套的for循环来读取二维数组的元素并将它们存储到数组中。
发表评论