29/01/17 9:14
Dott v3nom
Salve a tutti.
sono nuovo di questa pagina e mi sto approcciando da poco alla programmazione da autodidatta.
detto questo, vorrei implementare un algoritmo che ordini delle stringhe in modo alfabeticamente crescente usando un bubble sort come algoritmo di ordinamento, diciamo che ci ho provato, ma il risultato è questo:
#include <stdio.h>
#include <STRING.H>
#include <conio.h>
main()
{
int i,n,c,d,e;
char temp[50];
char vettstring[n][50];
e=0;
// inserimento stringhe da parte dell'utente
printf("quante stringhe vuoi inserire?"
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("inserisci un numero"
scanf("%s",vettstring[i]);
}
for(i=0;i<4;i++)
{
printf("%s\n",vettstring[i]);
}
// bubble sort
for (c = 0 ; c < ( n - 1 ); c++)
{
for (d = 0 ; d < n - c - 1; d++)
{
if (strcmp(vettstring[d],vettstring[d+1])>0
{
strcpy (temp[e],vettstring[d]);
strcpy (vettstring[d],vettstring[d+1]);
strcpy (vettstring[d+1],temp[e]);
e++;
}
}
}
// stampa stringhe ordinate
for(i=0;i<n;i++)
{
printf("\n %s", vettstring[i]);
}
getch();
}
non so perchè il programma non compila, ma logicamente quadra??
sono nuovo di questa pagina e mi sto approcciando da poco alla programmazione da autodidatta.
detto questo, vorrei implementare un algoritmo che ordini delle stringhe in modo alfabeticamente crescente usando un bubble sort come algoritmo di ordinamento, diciamo che ci ho provato, ma il risultato è questo:
#include <stdio.h>
#include <STRING.H>
#include <conio.h>
main()
{
int i,n,c,d,e;
char temp[50];
char vettstring[n][50];
e=0;
// inserimento stringhe da parte dell'utente
printf("quante stringhe vuoi inserire?"
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("inserisci un numero"
scanf("%s",vettstring[i]);
}
for(i=0;i<4;i++)
{
printf("%s\n",vettstring[i]);
}
// bubble sort
for (c = 0 ; c < ( n - 1 ); c++)
{
for (d = 0 ; d < n - c - 1; d++)
{
if (strcmp(vettstring[d],vettstring[d+1])>0
{
strcpy (temp[e],vettstring[d]);
strcpy (vettstring[d],vettstring[d+1]);
strcpy (vettstring[d+1],temp[e]);
e++;
}
}
}
// stampa stringhe ordinate
for(i=0;i<n;i++)
{
printf("\n %s", vettstring[i]);
}
getch();
}
non so perchè il programma non compila, ma logicamente quadra??
aaa