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.
Tengo un problema, quiero utilizar una estructura en la funcion de ingresar atletas pero me dice que el tipo del argumento es invalido.
Código (c) [Seleccionar]
#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");
}