Ir ao conteúdo
  • Cadastre-se

Duvida em função simples


Petar tryui

Posts recomendados

Boa tarde, estou tentando fazer um código em C que soma dois números e mostra o maior deles usando função, porém está apresentando um erro e não sei o que é, alguém pode me ajudar?

#include <stdio.h> #include <stdlib.h>int mostra_maior(int a,c){if(a>c){return a;}else{return c;}}int main(){int n1,n2,soma,ma;printf("informe um numero: ");scanf("%d",n1);printf("informe mais um numero: ");scanf("%d",n2);soma=n1+n2;ma=mostra_maior(n1,n2);printf("O maior dos numeros é:%d ",ma);printf("A soma dos numeros é:%d ",soma);system("pause");}
Link para o comentário
Compartilhar em outros sites

Não apenas isso, também há problema no scanf.

Quando você quer mudar o conteúdo da variável em outra função você precisa passar o endereço dela.

Se não você estará passando apenas uma cópia do conteúdo, que pertencerá a outro endereço de memoria usado apenas pela função que foi chamada.

A função scanf altera o counteudo da variável com o valor lido pelo input, portanto ela necessita que seja passado o endereço da variável.

 

tente assim:

scanf("%d", endereço_da_variavel);

 

Para obter o endereço de uma variável utilize o  operador &, assim: &variável=endereço.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...