Ir ao conteúdo
  • Cadastre-se

C Programaçao basica em C difilculdade nas funções


Hugo_barbosa

Posts recomendados

Bom dia

Eu estou a começar a aprender a programação em C e neste momento estou a aprender as funções.

O problema e o seguinte  o compilador da erro e diz que o valor 1 foi returnado e eu não sei onde cometi o erro.

Alguem me pode ajudar o programa esta aqui por baixo:

 

#include <stdio.h>


int square (int num); 

int main() {
  int x, result;
  
  x = 5;
  result = square(x);
  printf("%d squared is %d\n", x, result);
    
  return 0;

 

Agradeço a quem poder ajudar 

 

Continuação de um bom dia

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

34 minutos atrás, Hugo_barbosa disse:

Bom dia

Eu estou a começar a aprender a programação em C e neste momento estou a aprender as funções.

O problema e o seguinte  o compilador da erro e diz que o valor 1 foi returnado e eu não sei onde cometi o erro.

Alguem me pode ajudar o programa esta aqui por baixo:

 

#include <stdio.h>


int square (int num); 

int main() {
  int x, result;
  
  x = 5;
  result = square(x);
  printf("%d squared is %d\n", x, result);
    
  return 0;

 

Agradeço a quem poder ajudar 

 

Continuação de um bom dia

 

Quando você diz : int square(int num);

Você está declarando apenas o protótipo da função (apenas dizendo para o compilador que existe uma função abaixo) sendo assim, é necessário criá-la.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Hugo_barbosa Olá. Seu código poderia ficar assim:

#include <stdio.h>

// Protótipo da função
int square (int num);

int main() {

  int x, result;

  x = 5;
  result = square(x); // chamada a função square
  printf("%d squared is %d\n", x, result);

  return 0;
}

// Função propriamente dita com sua implementação
int square(int num) {

    int answer;
    answer = num * num;
    return answer;
}

Perceba que quando é feito essa operação:

result = square(x);

o q está acontecendo é que o valor que a função square retorna é atribuído a variável result

Essa mesma função (square) poderia ser resumida dessa forma:

int square(int num) {
    return num * num;
}

Vê se deu p entender bem

Obs: Aproveitei p ir treinando meu inglês hehe

Link para o comentário
Compartilhar em outros sites

13 horas atrás, giu_d disse:

@Hugo_barbosa Olá. Seu código poderia ficar assim:


#include <stdio.h>

// Protótipo da função
int square (int num);

int main() {

  int x, result;

  x = 5;
  result = square(x); // chamada a função square
  printf("%d squared is %d\n", x, result);

  return 0;
}

// Função propriamente dita com sua implementação
int square(int num) {

    int answer;
    answer = num * num;
    return answer;
}

Perceba que quando é feito essa operação:


result = square(x);

o q está acontecendo é que o valor que a função square retorna, no caso, o número elevado ao quadrado, é atribuído a variável result

Essa mesma função (square) poderia ser resumida dessa forma:


int square(int num) {
    return num * num;
}

Vê se deu p entender bem

Obs: Aproveitei p ir treinando meu inglês hehe

sim deu para entender bem obrigado pela ajuda :)

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...