c语言编程:输入10个整数存入数组,将值最大的元素与第一个元素进行值交换,值最小的元素与最后一个元素进行值交换,然后输出数组(编写代码时使用指针)
时间: 2023-11-02 09:05:58 浏览: 84
c代码-运用指针计算10个元素数组中最大值最小值并返回在数组中的位置
```c
#include <stdio.h>
void swap(int *a, int *b) { // 定义交换函数
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int arr[10];
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
int max = arr[0], min = arr[0];
int *max_ptr = &arr[0], *min_ptr = &arr[0];
for (int i = 1; i < 10; i++) { // 找最大值和最小值
if (arr[i] > max) {
max = arr[i];
max_ptr = &arr[i];
}
if (arr[i] < min) {
min = arr[i];
min_ptr = &arr[i];
}
}
swap(max_ptr, &arr[0]); // 交换最大值和第一个元素
swap(min_ptr, &arr[9]); // 交换最小值和最后一个元素
printf("交换后的数组为:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
阅读全文