输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换,交换时用指针完成
时间: 2023-12-04 09:07:06 浏览: 76
实现代码如下:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int nums[10];
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &nums[i]);
}
int *min = &nums[0];
int *max = &nums[0];
for (int i = 1; i < 10; i++) {
if (nums[i] < *min) {
min = &nums[i];
}
if (nums[i] > *max) {
max = &nums[i];
}
}
swap(min, &nums[0]);
swap(max, &nums[9]);
printf("交换后的数组为:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
```
输入样例:
```
请输入10个整数:
10 2 5 8 1 3 9 4 6 7
```
输出样例:
```
交换后的数组为:
1 2 5 8 6 3 9 4 7 10
```
阅读全文