¡Buenas SonaArtica!
No he ejecutado tu programa pero creo que tiene un par de fallos...
1) el bucle se ejecuta 59 veces cuando deberia ser 60. El array va desde 0 hasta 59 y tu bucle va desde 1 hasta 59. Asi que el bucle escribelo asi:
for(i=0;i<60;i++){
//codigo
}
2) y los if del bucle no son del todo correcto si te fijas, pones
if (i==1 || tiempo[i-1]<mejortiempo){
//codigo
}
if(i==1 || tiempo[i-1]>autoganador){
//codigo
}
Para el caso i==1 entras en ambos if y lo que hagas en el segundo puede anular lo que hayas hecho en el primero. Y ademas no calculas bien el perdedor.....(usa else para que tu programa sea mas eficiente)
Yo lo haria asi...:
#include <stdio.h>
#include <conio.h>
/* Se deben cargar en un vector los tiempos de clasificacion de 60 autos.
Los autos se identifican con numeros correlativos del 1 al 60.Se pide determinar:
a)Numero de Auto que clasifico primero.
b)Peor tiempo de clasificacion. */
main(){
int tiempo[60];
int autoganador=0;
int i=0;
float peortiempo,mejortiempo;
//el primero es el mejor y el peor al mismo tiempo ya que es el unico
printf("Ingrese Tiempo de auto %d \n",i
); peortiempo=tiempo[0];
//pedimos que ingrese datos y comparamos
for(i=1;i<60;i++){
printf("Ingrese Tiempo de auto %d \n",i
); if (tiempo[i]<mejortiempo){
autoganador=i;
mejortiempo=tiempo[i];
}//Cierre del If que saca al auto ganador
else(tiempo[i]>peortiempo){//ESTA LINEA HA CAMBIADO!
peortiempo=tiempo[i];
}//Cierre del If que saca el peor tiempo
}
printf("El auto ganador es %d con el tiempo de %f \n",autoganador
+1,mejortiempo
); printf("El auto con peor tiempo fue de %f \n",peortiempo
); return 0;
}
En caso de empate con mejor tiempo tanto tu programa como el mio imprimiran el primer coche....
NOTA: el codigo lo he hecho a ojo y no lo he compilado pero creo que es correcto el algoritmo.
Un saludo.