Como criar funções que retornam valores em c programação

A grande maioria das funções da linguagem C retornar um valor-isto é, geram alguma coisa. Seu código não podem utilizar os valores, mas eles são devolvidos de qualquer maneira.

Uma função que retorna um valor ilustra uma função que é enviado um valor e, em seguida, retorna outro valor. Essa é a maneira a maioria das funções trabalho, embora algumas funções retornam valores sem receber necessariamente. Por exemplo, getchar () retorna de entrada, mas não requer quaisquer argumentos. Em uma versão mais apertado, a função de conversão () aceita um valor Fahrenheit e retorna seu Celsius equivalente.

Uma função que retorna um valor

Video: Programar em C - Funções que Recebem Vetores como Argumento - Aula 36

#include flutuador converso (float f) -int main () {float temp_f, temp_c-printf ("Temperatura em Fahrenheit: ") -scanf ("% f",&temp_f) -temp_c = converso (temp_f) -printf ("% .1fF é% .1fCn", Temp_f, temp_c) -Retornar (0) -} convertido flutuador (flutuador f) {float t-t = (f - 32) / 1,8-retorno (t) -}

Linha 3 em uma função que retorna um valor declara protótipo a função de conversão (). A função requer um valor de ponto flutuante e retorna um valor de ponto flutuante.

A função de conversão () é chamado na linha 11. Seu valor de retorno é armazenado na variável temp_c na mesma linha. Na linha 12, printf () exibe o valor original e a conversão. O espaço reservado .1f é usado. Limita a saída de ponto flutuante para todos os números à esquerda do decimal, mas apenas um número à direita.

A função de conversão () começa na linha 16. Ele usa duas variáveis: f contém o valor transferido para a função, uma temperatura em graus Fahrenheit. Uma variável local, t, é usada para calcular o valor da temperatura Celsius, declarado na Linha 18 e atribuído pela fórmula na linha 20.

Video: 16 - Programação em Linguagem C - Funções - Introdução

Linha 20 converte o valor Fahrenheit f no valor t Celsius. Os parênteses em volta f - 32 direta o compilador para executar essa parte do cálculo em primeiro lugar e, em seguida, divida o resultado por 1,8. Se você omitir os parênteses, 32 é dividido por 1.8 em primeiro lugar, o que leva a um resultado incorreto.

O resultado da função é enviado de volta na linha 21, utilizando a palavra-chave return.

Exercício 1: Digite o código-fonte de uma função que retorna um valor em seu editor. Construir e executar.



Funções que retornam valores podem ter esse valor armazenado em uma variável, como mostrado na linha 11 de uma função que retorna um valor, ou você também pode usar o valor imediatamente. Por exemplo:

printf ("% .1fF é% .1fCn", Temp_f, converter (temp_f)) -

Video: Uso de Funções, Parâmetros e Retorno de Valores na Linguagem C

exercício 2: Editar o código-fonte de uma função que retorna um valor para que a função de conversão () é usado imediatamente na função printf (). dica: Isso não é a única linha que você precisa corrigir-se para fazer a mudança completa.

Você também pode perceber que a função de conversão () em si tem um artigo redundante. Você realmente precisa do t variável nessa função?

Video: C++ - Aula 22 - Funções - Parte 1

Exercício 3: Editar o seu código-fonte do Exercício 2, desta vez apara o t variável da função de conversão ().

Honestamente, você pode simplesmente eliminar a função de conversão () completamente, porque isso é apenas uma linha. Ainda assim, o benefício de uma função como essa é que você pode chamá-lo de qualquer lugar em seu código.

Então ao invés de repetir a mesma coisa uma e outra, e terá que editar esse pedaço repetida de texto repetidamente quando algo muda, você simplesmente criar uma função. Tal coisa é perfeitamente legítimo, e é feito o tempo todo em C.

A versão mais apertado mostra o resultado final para o Exercício 3.

A VERSÃO mais apertado

#include flutuador converso (float f) -int main () {flutuar temp_f-printf ("Temperatura em Fahrenheit: ") -scanf ("% f",&temp_f) -printf ("% .1fF é% .1fCn", Temp_f, converter (temp_f)) - retorno (0) -} flutuador converso (float f) {return (f - 32) / 1.8-}

A função matemática de converso () é comprimida a uma linha, de modo que uma variável de armazenamento temporário (t da Linha 18 em uma função que retorna um valor) não é necessária.


Publicações relacionadas