10个未知地区的面积,选择排序从大到小写程序
时间: 2023-06-13 16:04:00 浏览: 47
以下是使用Python编写的选择排序从大到小排序未知地区面积的程序:
```python
areas = [50, 120, 80, 200, 150, 100, 90, 300, 70, 180] # 假设这是10个未知地区的面积列表
for i in range(len(areas)):
max_index = i
for j in range(i + 1, len(areas)):
if areas[j] > areas[max_index]:
max_index = j
areas[i], areas[max_index] = areas[max_index], areas[i]
print("从大到小排序后的未知地区面积为:", areas)
```
输出结果:
```
从大到小排序后的未知地区面积为: [300, 200, 180, 150, 120, 100, 90, 80, 70, 50]
```
相关问题
10个地区的面积,选择排序从大到小写程序
以下是一个示例程序,用于对10个地区的面积进行选择排序,从大到小排列:
```python
areas = [120, 80, 300, 50, 230, 180, 420, 90, 150, 270]
for i in range(len(areas)):
max_idx = i
for j in range(i+1, len(areas)):
if areas[j] > areas[max_idx]:
max_idx = j
areas[i], areas[max_idx] = areas[max_idx], areas[i]
print("排序后的面积从大到小依次为:")
print(areas)
```
输出结果为:
```
排序后的面积从大到小依次为:
[420, 300, 270, 230, 180, 150, 120, 90, 80, 50]
```
解释:程序首先定义了一个包含10个元素的列表`areas`,表示10个地区的面积。接着使用两个嵌套的for循环进行选择排序,外层循环从0到9遍历每个元素,内层循环从外层循环的下一个元素开始到列表末尾遍历每个元素,找到最大的元素,并将其与当前外层循环指向的元素进行交换。最后输出排序后的列表。
用c语言编写程序,从键盘随机输入十个整数存入数组a中,按由大到小顺序排序后输出。小写字母和数字的个数。
在C语言中,你可以使用`scanf`函数从键盘获取用户输入的十个整数,然后通过`qsort`函数对数组进行降序排序,最后统计字符串中小写字母和数字的数量。以下是详细的步骤:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 比较函数,用于qsort排序
int compare(const void* a, const void* b) {
return (*(int*)b - *(int*)a);
}
int main() {
int arr[10], i;
char ch;
// 输入十个整数并存储
printf("请输入10个整数:\n");
for (i = 0; i < 10; ++i) {
scanf("%d", &arr[i]);
}
// 对数组进行降序排序
qsort(arr, 10, sizeof(int), compare);
// 输出排序后的数组
printf("排序后的数组(由大到小):\n");
for (i = 0; i < 10; ++i) {
printf("%d ", arr[i]);
}
printf("\n");
// 初始化计数器
int lower_count = 0, digit_count = 0;
// 遍历输入的字符串,统计小写字母和数字
while ((ch = getchar()) != EOF && ch != '\n') { // getchar 清理上一次输入的回车符
if (isalpha(ch)) { // 判断是否为字母
if (tolower(ch) >= 'a' && tolower(ch) <= 'z') {
lower_count++;
}
} else if (isdigit(ch)) { // 判断是否为数字
digit_count++;
}
}
printf("小写字母数量: %d\n", lower_count);
printf("数字数量: %d\n", digit_count);
return 0;
}
```