c语言代码输入数组10个元素,从小到大进行排序
时间: 2024-03-09 21:50:10 浏览: 126
好的,以下是一个简单的C语言代码,用于输入一个包含10个元素的数组,并对它们进行从小到大的排序:
```c
#include <stdio.h>
int main() {
int arr[10];
int i, j, temp;
// 输入数组元素
printf("请输入10个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 冒泡排序
for (i = 0; i < 9; i++) {
for (j = 0; j < 9 - i; j++) {
if (arr[j] > arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
// 输出排序后的数组
printf("排序后的数组为:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
这里使用了冒泡排序算法,依次比较相邻的两个元素,将较大的元素后移,直到整个序列都是按从小到大的顺序排列。
相关问题
C语言:输入数组10个元素值,按由小到大排序并输出
以下是 C 语言的代码实现:
```c
#include <stdio.h>
int main() {
int arr[10], i, j, temp;
// 输入数组元素
printf("请输入10个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 冒泡排序
for (i = 0; i < 9; i++) {
for (j = 0; j < 9 - i; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 输出排序后的数组元素
printf("排序后的数组为:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
代码思路:
1. 定义一个长度为 10 的整型数组 `arr`,以及循环计数器 `i` 和 `j` 以及临时变量 `temp`。
2. 通过循环输入数组元素。
3. 使用冒泡排序算法,从小到大排序数组元素。
4. 循环输出排序后的数组元素。
C语言3*3数组里的元素从小到大排序
在C语言中,对3x3矩阵(实质上是一个9个元素的一维数组)进行从小到大的排序,可以采用嵌套循环结合数组下标来实现冒泡排序、选择排序或者快速排序等算法。这里我将给出一种简单的冒泡排序示例:
```c
#include <stdio.h>
void bubble_sort(int arr[9], int n) {
for (int i = 0; i < n - 1; i++) { // 遍历所有元素
for (int j = 0; j < n - 1 - i; j++) { // 每次遍历都减少比较次数
if (arr[j] > arr[j + 1]) { // 如果前一个比后一个大
// 交换两个元素
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int arr[9] = {/* 九个初始元素 */};
int size = sizeof(arr) / sizeof(arr[0]); // 获取数组大小
printf("Before sorting:\n");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
bubble_sort(arr, size); // 排序
printf("\nAfter sorting in ascending order:\n");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
return 0;
}
阅读全文