用c语言编写一个从键盘任意输入n个数,然后找出其中的最大数与最小数,并将其位置对换。
时间: 2024-04-30 07:23:16 浏览: 105
```c
#include <stdio.h>
int main() {
int n, i, max_index = 0, min_index = 0;
printf("请输入数字的个数:");
scanf("%d", &n);
int nums[n];
printf("请输入%d个数字:\n", n);
for (i = 0; i < n; i++) {
scanf("%d", &nums[i]);
if (nums[i] > nums[max_index]) {
max_index = i;
}
if (nums[i] < nums[min_index]) {
min_index = i;
}
}
printf("最大数为%d,最小数为%d\n", nums[max_index], nums[min_index]);
int temp = nums[max_index];
nums[max_index] = nums[min_index];
nums[min_index] = temp;
printf("交换后的数组为:\n");
for (i = 0; i < n; i++) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}
```
相关问题
用c语言实现从键盘任意输入10个整数,用函数编程实现将其中最大数与最小数的位置对换后,再输出调整后的数组。
以下是用C语言实现从键盘任意输入10个整数,用函数编程实现将其中最大数与最小数的位置对换后,再输出调整后的数组的代码:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
void adjust(int arr[], int len) {
int max_index = 0, min_index = 0;
for (int i = 1; i < len; i++) {
if (arr[i] > arr[max_index]) {
max_index = i;
}
if (arr[i] < arr[min_index]) {
min_index = i;
}
}
swap(&arr[max_index], &arr[min_index]);
}
int main() {
int arr[10];
printf("请输入10个整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
adjust(arr, 10);
printf("调整后的数组为:\n");
for (int i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
希望能够帮到你!
从键盘任意输入8个整数,编程实现将其中最大数与最小数的位置对换后,再输出调整后的数组。c语言完整代码
下面是将其中最大数与最小数的位置对换后,再输出调整后的数组的C语言完整代码:
```
#include <stdio.h>
int main() {
int arr[8];
int max_index = 0, min_index = 0;
for (int i = 0; i < 8; i++) {
scanf("%d", &arr[i]);
if (arr[i] > arr[max_index]) {
max_index = i;
}
if (arr[i] < arr[min_index]) {
min_index = i;
}
}
int temp = arr[max_index];
arr[max_index] = arr[min_index];
arr[min_index] = temp;
for (int i = 0; i < 8; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
在上述代码中,我们首先定义一个长度为8的整型数组arr,然后使用for循环和scanf函数从键盘读入8个整数,将它们存储到数组arr中。在读入过程中,我们记录下数组arr中最大数和最小数的索引位置max_index和min_index。
接着,我们定义一个整数变量temp,将数组arr中最大数和最小数对应的元素进行交换。最后,我们使用for循环遍历数组arr,并使用printf函数输出调整后的数组。
运行程序,输入8个整数,程序将输出调整后的数组。
阅读全文