c给定一个整数数组,请按从大到小的顺序输出该数组中元素,相同的元素只输出一次
时间: 2023-05-30 13:02:27 浏览: 69
以下是Python实现:
```python
nums = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
# 去重
nums = list(set(nums))
# 从大到小排序
nums.sort(reverse=True)
# 输出结果
for num in nums:
print(num)
```
输出结果为:
```
9
6
5
4
3
2
1
```
相关问题
c语言给定一个整数数组,请按从大到小的顺序输出该数组中元素,相同的元素只输出一次
示例代码:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 3, 2, 4, 3, 2, 5, 4, 6, 7, 5, 8};
int len = sizeof(arr) / sizeof(arr[0]);
// 排序
for (int i = 0; i < len - 1; i++) {
for (int j = 0; j < len - 1 - i; j++) {
if (arr[j] < arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 去重
int prev = arr[0];
printf("%d ", prev);
for (int i = 1; i < len; i++) {
if (arr[i] != prev) {
printf("%d ", arr[i]);
prev = arr[i];
}
}
return 0;
}
```
输出:
```
8 7 6 5 4 3 2 1
```
c语言:将给定n个整数存入数组,将这n个数逆序存放然后按顺序输出数组中的元素
下面是使用C语言实现该功能的代码:
```c
#include <stdio.h>
#define MAX 100 // 数组最大长度
int main() {
int n, i;
int arr[MAX];
// 输入数组长度n和n个整数
printf("请输入数组长度n(不超过%d):", MAX);
scanf("%d", &n);
printf("请输入%d个整数:", n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// 将数组逆序存放
int tmp;
for (i = 0; i < n / 2; i++) {
tmp = arr[i];
arr[i] = arr[n - i - 1];
arr[n - i - 1] = tmp;
}
// 按顺序输出数组元素
printf("逆序存放后的数组元素为:");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
代码的思路是先输入数组长度和数组元素,然后使用一个循环将数组逆序存放,最后再使用另一个循环按顺序输出数组元素。