用C语言用冒泡法排序,对12个浮点数,这12个浮点数放在数组。从小到大
时间: 2024-01-22 13:17:50 浏览: 26
下面是用C语言实现的冒泡排序算法,对12个浮点数从小到大排序:
```c
#include <stdio.h>
int main() {
float nums[12] = {5.6, 4.3, 2.1, 9.5, 8.0, 1.2, 3.7, 6.4, 7.9, 0.5, 11.2, 10.0};
int i, j;
float temp;
// 冒泡排序
for (i = 0; i < 11; i++) {
for (j = 0; j < 11 - i; j++) {
if (nums[j] > nums[j + 1]) {
temp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = temp;
}
}
}
// 输出排序后的结果
printf("排序后的结果为:");
for (i = 0; i < 12; i++) {
printf("%.1f ", nums[i]);
}
return 0;
}
```
输出结果如下:
```
排序后的结果为:0.5 1.2 2.1 3.7 4.3 5.6 6.4 7.9 8.0 9.5 10.0 11.2
```
相关问题
用c语言用冒泡法排序,对12个浮点数,这12个浮点数放在数组。从小到大
好的,这是一个常见的冒泡排序问题,我可以为您提供一个示例代码:
```c
#include <stdio.h>
int main()
{
float arr[12] = {2.3, 4.5, 1.2, 3.4, 5.6, 6.7, 8.9, 9.0, 7.8, 0.1, 10.2, 11.3};
int i, j;
float temp;
// 冒泡排序
for (i = 0; i < 11; i++) {
for (j = 0; j < 11 - 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 < 12; i++) {
printf("%.2f ", arr[i]);
}
printf("\n");
return 0;
}
```
在这个代码中,我们首先定义了一个包含12个浮点数的数组`arr`,然后使用两个嵌套的`for`循环来实现冒泡排序。在内层循环中,我们比较相邻的两个数的大小,如果前一个数比后一个数大,就交换它们的位置。这样,每一轮循环都会将当前数组中最大的数移到最后面。
最后,我们输出排好序的结果。注意,这里使用了`printf`函数的格式化输出来保证输出结果只保留小数点后两位。
用冒泡法排序,对12个浮点数,这12个浮点数放在数组。从小到大的c语言代码
好的,以下是用C语言实现用冒泡法排序对12个浮点数从小到大排列的代码示例:
```c
#include <stdio.h>
void bubble_sort(float arr[], int size) {
int i, j;
for (i = 0; i < size - 1; i++) {
for (j = 0; j < size - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
float temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
float arr[12] = {3.2, 1.5, 9.7, 4.6, 6.8, 2.3, 5.1, 0.9, 7.4, 8.6, 11.0, 10.2};
int size = sizeof(arr) / sizeof(float);
printf("Before sorting:\n");
for (int i = 0; i < size; i++) {
printf("%f ", arr[i]);
}
bubble_sort(arr, size);
printf("\nAfter sorting:\n");
for (int i = 0; i < size; i++) {
printf("%f ", arr[i]);
}
return 0;
}
```
输出结果为:
```
Before sorting:
3.200000 1.500000 9.700000 4.600000 6.800000 2.300000 5.100000 0.900000 7.400000 8.600000 11.000000 10.200000
After sorting:
0.900000 1.500000 2.300000 3.200000 4.600000 5.100000 6.800000 7.400000 8.600000 9.700000 10.200000 11.000000
```