Vettore casuale ordinato
PROBLEMA
Scrivere un programma che generi casualmente 30 numeri interi di valore minore di 1000, li memorizzi in un vettore, cancelli I doppi presenti sostituendoli con 0 e stampi il vettore iniziale e quello ordinato in senso crescente
CODICE SORGENTE
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 30
int main(int argc, char *argv[]){
int i, j, temp;
int a[N];
int b[N];
srand(time(NULL));
for (i=0; i<N; i++){
a[i]=rand()%1000;
}
printf("Vettore senza modifiche:\n");
for (i=0; i<N; i++){
printf("\t%i\n", a[i]);
}
for(i=0; i<N-1; i++)
{
for (j=i+1; j<N; j++)
{
if (a[j]==a[i])
{
a[j]=0;
}
}
}
for(i=0; i<N-1; i++)
{
for (j=i+1; j<N; j++)
{
if (a[j]<a[i])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
printf("Vettore con modifiche:\n");
for (i=0; i<N; i++){
printf("\t%i\n", a[i]);
}
system("PAUSE");
return 0;
}