用c语言编写程序实现:对于给定的数列,要求把其中的重复元素删去再从小到大输出。 输入格式: 首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据先输入一个整数n(1≤n≤100),再输入n个整数。 输出格式: 对于每组测试,从小到大输出删除重复元素之后的结果,每两个数据之间留一个空格
时间: 2023-06-18 18:07:26 浏览: 213
以下是C语言的代码实现:
```c
#include <stdio.h>
int main() {
int t, n, i, j, k;
int a[100];
scanf("%d", &t);
for (i = 0; i < t; i++) {
scanf("%d", &n);
for (j = 0; j < n; j++) {
scanf("%d", &a[j]);
}
for (j = 0; j < n; j++) {
for (k = j + 1; k < n; k++) {
if (a[j] == a[k]) {
n--;
for (int l = k; l < n; l++) {
a[l] = a[l + 1];
}
k--;
}
}
}
for (j = 0; j < n; j++) {
for (k = j + 1; k < n; k++) {
if (a[j] > a[k]) {
int temp = a[j];
a[j] = a[k];
a[k] = temp;
}
}
}
for (j = 0; j < n; j++) {
printf("%d ", a[j]);
}
printf("\n");
}
return 0;
}
```
首先输入测试数据组数t,然后循环t次输入每组测试数据,包括数列长度n和n个整数。接下来使用两重循环遍历数列,第一重循环变量j表示当前要比较的数的下标,第二重循环变量k表示下一个要比较的数的下标,如果两个数相等,则将数组长度减1,同时将后面的数向前移动,最后将下标k减1,以便重新比较一遍。处理完重复元素后,再使用两重循环进行排序,最后输出结果即可。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231045021.png)
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231045021.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)