Eu compilei o meu código, porém o meu compilador mostra uns erros. Eu queria saber como resolver esses erros para que o meu programa rode normal?
/* 4) Construa uma função que receba cinco valores e determine
(retorne por passagem por referência) o 2º e o 4º maior valores dentre eles.
Construa também um módulo principal para ler tais valores,e imprimir o
resultado obtido com a chamada da função. */
#include<stdio.h>
int seg_maior(int n,int vet[]);
int quart_maior(int n,int vet[]);
void ordem(int n,int vet[] ,int *segundo_maior, int *quarto_maior);
int main(){
int vet[5],i=0,j=0,seg_maior,quart_maior,aux;
//Recebendo 5 numeros
while(i<5){
printf("Numero[%d]",i+1);
scanf("%d",vet[i]);
i++;
}
// Colocando em ordem crescente os numeros(do menor para o maior)
for(i=0;i<5;i++){
for(j=i+1;j<5;j++)
if (vet[i]>vet[j]){
aux=vet[i];
vet[j]=vet[i];
vet[j]=aux;
}
i=5;
//retornando o segundo maior valor e o quarto maior valor
ordem(n,vet, &seg_maior, &quart_maior);
printf("O segundo maior valor:%d ",seg_maior);
printf("O quarto maior valor:%d ",quart_maior);
}
int seg_maior(int n,int vet[]){
//Descobrindo o segundo maior valor
if (n)
seg_maior(n-1,vet);
else
if (n=4){
return vet[3];
}
}
int quart_maior(int n,int vet[]){
// Descobrindo o quarto maior valor
if (n)
quart_maior(n-1,vet);
else
if (n=5){
return vet[4];
}
}
//Retornar por passagem por referêcnia
void ordem(int n,int vet[] ,int *segundo_maior, int *quarto_maior) {
(*segundo_maior) = seg_maior(n,vet);
(*quarto_maior) = quart_maior(n,vet);
}
Pergunta
Bruno Pacheco
Eu compilei o meu código, porém o meu compilador mostra uns erros. Eu queria saber como resolver esses erros para que o meu programa rode normal?
/* 4) Construa uma função que receba cinco valores e determine (retorne por passagem por referência) o 2º e o 4º maior valores dentre eles. Construa também um módulo principal para ler tais valores,e imprimir o resultado obtido com a chamada da função. */ #include<stdio.h> int seg_maior(int n,int vet[]); int quart_maior(int n,int vet[]); void ordem(int n,int vet[] ,int *segundo_maior, int *quarto_maior); int main(){ int vet[5],i=0,j=0,seg_maior,quart_maior,aux; //Recebendo 5 numeros while(i<5){ printf("Numero[%d]",i+1); scanf("%d",vet[i]); i++; } // Colocando em ordem crescente os numeros(do menor para o maior) for(i=0;i<5;i++){ for(j=i+1;j<5;j++) if (vet[i]>vet[j]){ aux=vet[i]; vet[j]=vet[i]; vet[j]=aux; } i=5; //retornando o segundo maior valor e o quarto maior valor ordem(n,vet, &seg_maior, &quart_maior); printf("O segundo maior valor:%d ",seg_maior); printf("O quarto maior valor:%d ",quart_maior); } int seg_maior(int n,int vet[]){ //Descobrindo o segundo maior valor if (n) seg_maior(n-1,vet); else if (n=4){ return vet[3]; } } int quart_maior(int n,int vet[]){ // Descobrindo o quarto maior valor if (n) quart_maior(n-1,vet); else if (n=5){ return vet[4]; } } //Retornar por passagem por referêcnia void ordem(int n,int vet[] ,int *segundo_maior, int *quarto_maior) { (*segundo_maior) = seg_maior(n,vet); (*quarto_maior) = quart_maior(n,vet); }Link para o comentário
Compartilhar em outros sites
13 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.