解题思路:
注意事项:
参考代码:
#include<iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int a[105];
for (int i = 1; i <= n; i++)
{
cin >> a[i];
}
for (int i = 1; i < n; i++)//冒泡排序,还有其他排序,大家可以自己试试其他排序
{
for (int j = i; j <= n; j++)
{
if (a[i] > a[j]&&a[j]!=0&&a[i]!=0)
{
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
//上面已经从小到大排完序了
//比较下一个元素是否与当前元素相等,如果相等,把当前元素记为0
//同时设计一个变量用于记录减去后剩余的元素
int m = n;
for (int i = 1; i < n; i++)
{
if (a[i + 1] - a[i] == 0)
{
a[i] = 0;
m--;
}
}
cout << m << endl;
//如果不为0,就输出,完成此题
for (int i = 1; i <= n; i++)
{
if(a[i]!=0)
cout << a[i] << " ";
}
return 0;
}
0.0分
0 人评分