Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - BigMuff

#1
Hola, gracias por entrar.
Tengo un problema, quiero utilizar una estructura en la funcion de ingresar atletas pero me dice que el tipo del argumento es invalido.


#include<stdio.h>
#define MAX_ATLETAS 10

typedef struct
{
char nombre[20];
int ti;
int tf;
int tt;
}atleta;

int validarNumero(int n);
void ingresarAtletas(atleta competencia, int n);
void ordenarAtletas(atleta competencia, int n);

int main(){
    atleta competencia[MAX_ATLETAS];
    int n;
    printf("Competencia atletica\n");
    printf("Ingrese el numero de atletas: ");
    scanf("%d", &n);
    if(validarNumero(n) == 'n'){
        printf("Numero invalido!");
        return -1;
    }
    ingresarAtletas(competencia, n);
    ordenarAtletas(competencia, n);
    //printf("Podio\n");
    //imprimirAtletas(competencia, NUMERO_PODIO);
}
int validarNumero(int n){
if(n>10){
return 'n';
}else{
return 1;
}
}
void ingresarAtletas(atleta competencia, int n){
int i;
for(i=0;i<n;i++){
printf("Nombre[%d]:",i);
scanf("%[^\n]%*c",&competencia.nombre[i]);
printf("Tiempo inicial[%d]",i);
scanf("%d",&competencia.ti[i]);
printf("Tiempo final[%d]",i);
scanf("%d",&competencia.tf[i]);
}

}
void ordenarAtletas(atleta competencia, int n){
int t[],i,j,temp;
for(i=0;i<n;i++){
competencia.tt[i]=((competencia.tf[i])-(competencia.ti[i]);
}

for(i=0;i<n;i++){
t[i]=competencia.tt[i];
}

for(i=0;i<(n-1);i++){
for(j=(i+1),j<n,j++){
if(t[i]>t[j]){
temp=t[j];
t[j]=t[i];
t[i]=temp;
}
}
}

printf("Podio\n");
printf("Nombre\t T.inicial\t T.final\t T.final\n");


}