利用指针进行一维数组的输入和输出 (例如:请输入数组元素: 1 2 3 4 5 数组:1 2 3 4 5)
时间: 2024-02-17 17:00:11 浏览: 73
指针和一维数组
下面是一个利用指针进行一维数组输入和输出的示例代码:
```c
#include <stdio.h>
#define MAX_SIZE 100
int main()
{
int arr[MAX_SIZE], n, i;
int *ptr = arr; // 定义指针并使其指向数组的首地址
printf("请输入数组元素个数:");
scanf("%d", &n);
printf("请输入数组元素:");
for (i = 0; i < n; i++) {
scanf("%d", ptr + i); // 使用指针进行数组元素的输入
}
printf("数组:");
for (i = 0; i < n; i++) {
printf("%d ", *(ptr + i)); // 使用指针进行数组元素的输出
}
return 0;
}
```
在这个示例代码中,我们定义了一个整型数组 `arr`,并指定其最大长度为 `MAX_SIZE`。然后,我们定义了一个指针 `ptr`,并通过 `ptr = arr` 使其指向数组 `arr` 的首地址。
在程序运行时,我们首先输入了数组元素的个数 `n`,并通过 `scanf` 函数将其存储在变量 `n` 中。接着,我们使用 `scanf` 函数和指针 `ptr` 进行数组元素的输入。具体来说,我们使用 `ptr + i` 来表示数组中第 `i` 个元素的地址,并通过 `scanf` 函数将输入的值存储在这个地址上。
最后,我们使用指针 `ptr` 进行数组元素的输出。具体来说,我们使用 `*(ptr + i)` 来表示数组中第 `i` 个元素的值,并通过 `printf` 函数将其输出。注意,在输出数组元素时,我们使用了 `"%d "` 格式字符串,这个空格字符是为了在输出时增加元素之间的空格,使输出更加美观。
阅读全文