Estoy realizando un programa que calcula el máximo de tres números usando una función que nos de el máximo de dos números
Además de en los argumentos de la función, tienes varios errores menores que te comento en el código:#include <stdio.h>
#include <stdlib.h>
int mayor(int n1,int n2);/*aqui tenias"{" en lugar de ;*/
int main(){
int num1, num2, num3;
int max; /*<==aqui esta de mas "mayor"*/
printf("Introduce un numero: ");
scanf("%d",&num1);
printf("Introduce un numero: ");
scanf("%d",&num2);
printf("Introduce un numero: ");
scanf("%d",&num3);
max = mayor(num1, num2);
printf("El mayor es: %d \n", mayor(max, num3));/*y aqui tenias dos %d */
system("PAUSE");
return 0;
}
// FUNCION
int mayor(int n1,int n2){
if (n1 > n2)
return n1;
else
return n2;
}
Aunque sería más guay calcular el máximo con una función que calcule el máximo de tres:
#include <stdio.h>
#include <stdlib.h>
int mayor(int n1,int n2,int n3);
int main(){
int num1, num2, num3;
int max;
printf("Introduce un numero: ");
scanf("%d",&num1);
printf("Introduce un numero: ");
scanf("%d",&num2);
printf("Introduce un numero: ");
scanf("%d",&num3);
max = mayor(num1, num2,num3);
printf("El mayor es: %d \n", max);
system("pause");
return 0;
}
// FUNCION
int mayor(int n1,int n2,int n3){
if ((n1= n1>n2 ? n1:n2)>(n3))
return n1;
else
return n3;
}
Saluditos!.