求解一个C++程序编写,要求如说明。。。关于数组的,大侠帮帮忙

来源:百度知道 编辑:UC知道 时间:2024/06/19 23:07:07
写一个程序,将一个整数列表读入基数型为int的一个数组,要求从键盘读入这个数组,假定数组中的数据少于50个。程序要求要判断实际有多少个数据项,最终输出的一个双栏列表。第一栏是数组元素列表,其中包含不重复的数据元素值;第二栏是每个元素值的出现次数统计,且列表在第一栏应该按从大到小的顺序排列。
输出应该是:
N Counts
4 2
3 3
2 2
1 4
-1 1
-12 4

#include<iostream>
#include<algorithm>
using namespace std;
int main(){
int arr[50],i,count;
i=0;
while(cin>>arr[i++]);
sort(arr,arr+i);
count=0;
while(--i){
if(i>0&&arr[i]==arr[i+1]){
count++;
}
else{
cout<<arr[i+1]<<" "<<count<<endl;
count=0;
}
}
}