C语言运用指针操作编程在主函数中输入8个整数,调用函数将其升序排序,并输出
时间: 2024-02-15 07:04:10 浏览: 94
好的,以下是实现该功能的代码:
```c
#include <stdio.h>
void sort(int *ptr, int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = i + 1; j < n; j++) {
if (*(ptr + i) > *(ptr + j)) {
temp = *(ptr + i);
*(ptr + i) = *(ptr + j);
*(ptr + j) = temp;
}
}
}
}
int main() {
int arr[8];
int *ptr = arr; // 定义指向数组的指针
int i;
printf("请输入8个整数:\n");
for (i = 0; i < 8; i++) {
scanf("%d", ptr + i); // 使用指针更新数组元素
}
sort(ptr, 8);
printf("排序后的结果为:\n");
for (i = 0; i < 8; i++) {
printf("%d ", *(ptr + i)); // 使用指针访问数组元素
}
printf("\n");
return 0;
}
```
在上面的代码中,我们定义了一个 `sort` 函数,它接受一个指向整数数组的指针和数组的大小作为参数。该函数使用指针操作对数组进行升序排序。
在 `main` 函数中,我们首先定义了一个整数数组 `arr`,并使用 `int *ptr = arr` 定义了一个指向该数组的指针。接着我们使用 `scanf` 函数从标准输入中读入8个整数,并通过指针 `ptr` 更新了数组元素。
最后,我们调用 `sort` 函数对数组进行排序,并通过指针访问数组元素,输出排序后的结果。
阅读全文