oregon ha scritto:
Mostraci tutto il codice con le correzioni. Di quali errori parli?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct posizione{
char nome[10];
int tempo;
};
int main(){
int n_part;
printf("Inserisci il numero di partecipanti:\n");
scanf("%d", &n_part);
struct posizione part[n_part];
int i, j, trovato, temp;
char cerca[20];
for(i=0; i<n_part; i++){
printf("Inserisci il nome del %d partecipante:\n", i+1);
scanf("%s", &part[i].nome);
printf("Inserisci il tempo di %s:\n", part[i].nome);
scanf("%d", &part[i].tempo);
}
for(i=0; i<n_part-1; i++){
for(j=i+1; j<n_part; j++){
if(part[i].tempo>part[j].tempo){
temp=part[i].tempo;
part[i].tempo=part[j].tempo;
part[j].tempo=temp;
}
}
}
printf(" \n");
for(i=0; i<n_part; i++){
printf("%s e' arrivato %d con un tempo di %d\n", part[i].nome, i+1, part[i].tempo);
}
printf("\t\tCLASSIFICA\t\t\n\n");
for(i=0; i<3; i++){
printf("\t%d Classificato\n\t%s\t%d'\n", i+1, part[i].nome, part[i].tempo);
}
printf("\nInserisci il nome del partecipante da cercare:\n");
scanf("%s", &cerca);
trovato=0;
for(j=0;j<n_part;j++){
if(strcmp(part[j].nome, cerca)==0) {
printf("\n Partecipante trovato in posizione %d.\n Nome: %s\n Tempo: %d\n",j+1,part[j].nome, part[j].tempo);
trovato=1;
}
}
if (!trovato)
printf("\nPartecipante non trovato.\n");
return 0;
}
Sono arrivato fino a qui, funziona tutto, tranne l'ordinamento dei nomi che non riesco a capire