C语言题目 1.数组排序与查找: 编写一个C程序,要求用户输入10个整数存入数组,然后使用冒泡排序算法对数组进行排序,并查找并输出数组中的最大值和最小值。
时间: 2024-09-30 09:04:50 浏览: 36
在C语言中,你可以按照以下步骤编写这个程序:
```c
#include <stdio.h>
// 冒泡排序函数
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
// 交换元素
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
// 查找最大值和最小值函数
void findMinMax(int arr[], int n, int *min, int *max) {
*min = arr[0]; // 假设第一个元素为最小
*max = arr[0]; // 假设第一个元素为最大
for (int i = 1; i < n; i++) {
if (arr[i] < *min)
*min = arr[i];
else if (arr[i] > *max)
*max = arr[i];
}
}
int main() {
int arr[10], min, max, i;
printf("请输入10个整数:\n");
// 输入10个整数
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 对数组进行排序
bubbleSort(arr, 10);
// 找到最大值和最小值
findMinMax(arr, 10, &min, &max);
printf("排序后的数组:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n最大值:%d\n最小值:%d\n", max, min);
return 0;
}
```
在这个程序中,首先通过`bubbleSort`函数对数组进行升序排序,然后使用`findMinMax`函数找出数组中的最大值和最小值。在`main`函数里,用户输入10个整数,然后打印出排序后的数组以及最大值和最小值。
阅读全文