adicional: se naoespecificarmos o tipo de retorno de uma funcao, o compilador C automaticamente supora queeste tipo e inteiro. Porem, nao e uma boa pratica nao se especificar o valor de retorno e, nestecurso, este valor sera sempre especificado.Com relacao a funcao main, o retorno sempre sera inteiro. Normalmente faremos afuncao main retornar um zero quando ela e executada sem qualquer tipo de erro.Mais um exemplo de funcao, que agora recebe dois floats e tambem retorna um float::#include <stdio.h>float prod (float x,float y){return (x*y);}int main (){float saida;saida=prod (45.2,0.0067);printf ("A saida e: %f\n",saida);return(0);}Forma geralApresentamos aqui a forma geral de uma funcao:tipo_de_retorno nome_da_funcao (lista_de_argumentos){codigo_da_funcao}6AUTO AVALIACAOVeja como voce esta. Escreva uma funcao que some dois inteiros e retorne o valor dasoma.Introducao Basica as Entradas e SaidasCaracteresOs caracteres sao um tipo de dado: o char. O C trata os caracteres (a, b, x, etc ...)como sendo variaveis de um byte (8 bits). Um bit e a menor unidade de armazenamento deinformacoes em um computador. Os inteiros (ints) tem um numero maior de bytes.Dependendo da implementacao do compilador, eles podem ter 2 bytes (16 bits) ou 4 bytes (32bits). Na linguagem C, tambem podemos usar um char para armazenar valores numericosinteiros, alem de usa-lo para armazenar caracteres de texto. Para indicar um caractere detexto usamos apostrofes. Veja um exemplo de programa que usa caracteres:#include <stdio.h>int main (){char Ch;Ch=D;printf ("%c",Ch);return(0);}No programa acima, %c indica que printf() deve colocar um caractere na tela. Comovimos anteriormente, um char tambem e usado para armazenar um numero inteiro. Estenumero e conhecido como o codigo ASCII correspondente ao caractere. Veja o programaabaixo:#include <stdio.h>int main (){char Ch;Ch=D;printf ("%d",Ch); /* Imprime o caracter como inteiro */return(0);}Este programa vai imprimir o numero 68 na tela, que e o codigo ASCII correspondente aocaractere D (d maiusculo).Muitas vezes queremos ler um caractere fornecido pelo usuario. Para isto as funcoes maisusadas, quando se esta trabalhando em ambiente DOS ou Windows, sao getch() e getche().Ambas retornam o caractere pressionado. getche() imprime o caractere na tela antes deretorna-lo e getch() apenas retorna o caractere pressionado sem imprimi-lo na tela. Ambas asfuncoes podem ser encontradas no arquivo de cabecalho conio.h. Geralmente estas funcoesnao estao disponiveis em ambiente Unix (compiladores cc e gcc) e podem ser substituidas pelafuncao scanf(), porem sem as mesmas funcionalidades. Eis um exemplo que usa a funcaogetch(), e seu correspondente em ambiente Unix:#include <stdio.h>#include <conio.h>/* Este programa usa conio.h . Se voce nao tiver a conio, ele nao funcionara no Unix */int main (){char Ch;Ch=getch();printf ("Voce pressionou a tecla %c",Ch);7return(0);}Equivalente para o ambiente Unix do programa acima, sem usar getch():#include <stdio.h>int main (){char Ch;scanf("%c", &Ch);printf ("Voce pressionou a tecla %c",Ch);return(0);}A principal diferenca da versao que utiliza getch() para a versao que nao utiliza getch() eque no primeiro caso o usuario simplesmente aperta a tecla e o sistema le diretamente a teclapressionada. No segundo caso, e necessario apertar tambem a tecla <ENTER>.StringsNo C uma string e um vetor de caracteres terminado com um caractere nulo. O caracternulo e um caractere com valor inteiro igual a zero (codigo ASCII igual a 0). O terminador nulotambem pode ser escrito usando a convencao