fork download
  1. #include <stdio.h>
  2.  
  3. void sort(int *p, int n) {
  4. int min, pos, aux;
  5. for(int i = 0; i < n - 1; i++) {
  6. min = p[i];
  7. pos = i;
  8. for(int j = i + 1; j < n; ++j) {
  9. if(p[j] < min) {
  10. min = p[j];
  11. pos = j;
  12. }
  13. }
  14. aux = p[pos];
  15. p[pos] = p[i];
  16. p[i] = aux;
  17. }
  18. }
  19.  
  20. int main(int argc, char const *argv[]) {
  21.  
  22. int vec[100], n,
  23. arr[100], freq[100], k = 0;
  24.  
  25. printf("N = ");
  26. scanf("%d", &n);
  27. for(int i = 0; i < n; ++i) scanf("%d", &vec[i]);
  28. for(int i = 0; i < n; ++i) printf("%d ", vec[i]);
  29. printf("\n");
  30. sort(vec, n);
  31. arr[k] = vec[k];
  32. freq[k] = 1;
  33. for(int i = 0; i < n - 1; i++) {
  34. if(vec[i] == vec[i+1]) {
  35. freq[k]++;
  36. } else {
  37. k++;
  38. arr[k] = vec[i+1];
  39. freq[k] = 1;
  40. }
  41. }
  42.  
  43. for(int i = 0; i <= k; i++) {
  44. if(freq[i] == 1) printf("Elementul %d apare o singura data!\n",arr[i]);
  45. else
  46. printf("Elementul %d apare de %d ori!\n",arr[i], freq[i]);
  47. }
  48.  
  49. return 0;
  50. }
  51.  
Success #stdin #stdout 0s 5632KB
stdin
10
8 2 3 1 5 -1 7 8 9 10
stdout
N = 8 2 3 1 5 -1 7 8 9 10 
Elementul -1 apare o singura data!
Elementul 1 apare o singura data!
Elementul 2 apare o singura data!
Elementul 3 apare o singura data!
Elementul 5 apare o singura data!
Elementul 7 apare o singura data!
Elementul 8 apare de 2 ori!
Elementul 9 apare o singura data!
Elementul 10 apare o singura data!