Baixe o app para aproveitar ainda mais
Prévia do material em texto
Linguagem de Programação Aula 04 Roteiro da Aula •Strings •Funções (Modularização) 2 String •Um caracter é uma lista, um numeral, uma pontuação ou um símbolo •Uma string consiste em um conjunto de caracteres, utilizados para armazenar textos em geral 3 String •Char •Declaração : char c; •Atribuição: char opcao = ‘A’; 4 String •Na linguagem de programação C consiste em um conjunto de caracteres terminado por nulo (‘\0’) •Exemplo: char str[21]; 5 String •Definição char nome[5] •nome� nome da variável •[5] �número de posições de 0 à 5 •Última posição é ocupada pelo ‘\0’ 6 String •Exemplo #include <stdio.h> void main(){ char nome [3]; nome[0] = ‘M’; nome[1] = ‘A’; nome[2] = ‘E’; nome[3] = ‘\0’; printf(“O nome é %s\n”, nome); printf(“A terceira letra da string eh %c\n”, nome[2]); } 7 String •Leitura de strings (teclado): •Função gets() •Lê string até o primeiro enter •Função scanf() •Lê string até o primeiro espaço em branco 8 String •A linguagem de programação C suporta várias funções de manipulação de strings •Necessário a inclusão da biblioteca string.h 9 String -Exemplos: •strcpy (str1, str2) •Copia str2 em str1 •strcat (str1, str2) •Concatena str2 ao final de str1 10 String -Exemplos: • int tam = strlen(str1) •Retorna o tamanho de str1 • int valor = strcmp(str1, str2) •Retorna 0 se str1 e str2 são iguais; < que 0 se str1<str2; > que 0 se str1>str2 11 Funções •Vários problemas de soluções complexas podem ser divididos, em problemas menores, com lógica mais simples e de compreensão mais fácil. 12 Funções •É a técnica de programar desenvolvendo um programa a partir de pequenas partes ou módulos •Dividir para conquistar 13 Funções •É um trecho de código (bloco) contendo um conjunto de comandos com o objetivo de efetuar uma determinada tarefa. •Em C � criar um módulo é definir uma função. 14 Vantagens •Subdivisão de programas complexos •Facilita a estruturação lógica do programa •Economia de código 15 Vantagens •Facilidade de manutenção •Redução no tempo de desenvolvimento •Reutilização 16 Tipos de Funções • C •Um programa é um conjunto de funções, em que o main é a principal função e por onde inicia a execução do programa 17 Tipos de Funções • Pré-definidas (bibliotecas padrões do C): •math.h •string.h •stdio.h 18 Tipos de Funções • Definidas pelo programador (não existem nas bibliotecas): int maior(int x, int y) { if (x>y) return x; return y; } 19 Forma Geral de uma Função •Sintaxe <tipo_retorno> <nomef> ([<lista_parametros>]) { <declarações> <comandos> return [<expressão>]; } 20 Forma Geral de uma Função • tipo_retorno: •Pode ser int, double, char, etc, mais o tipo especial void (não retorna nenhum valor) 21 Forma Geral de uma Função •nomef: •Nome da função • lista_parametros: •Opcional •Nome do argumento sempre vem precedido do seu tipo •Vários argumentos devem ser separados por vírgulas 22 Forma Geral de uma Função • return: •Término da função •Tipo de dado da expressão deve ser do mesmo tipo definido no tipo_retorno da função •Comando return tem capacidade de retornar apenas um valor 23 Forma Geral de uma Função Exemplos de retornos corretos: void func1 () { <comandos>; } int func2 () { <comandos>; return 1; } Exemplos de retornos incorretos: void func1 () { <comandos>; return 0; } int func2 () { <comandos>; return; } 24 Escopo de Variáveis •Representa a área do programa onde a variável pode ser utilizada. •Classificada em: •Locais •Globais 25 Escopo de Variáveis •Locais •Declaradas dentro do corpo da função •Visíveis somente para nesta função •O programa principal e as demais funções não podem utilizar esta variável 26 Escopo de Variáveis •Globais •Declaradas fora das funções •Visíveis por todas as funções do programa 27 Escopo de Variáveis #include <stdio.h> int z; //variável global int soma(int a, int b){ int res; //variável local da função res = a +b; return res; } 28 Escopo de Variáveis main() { int x, y, resultado; // variável locais main z = 10; printf (“Informe dois números inteiros”); scanf (“%d %d”, &x, &y); resultado = soma(x, y); printf (“%d + %d = %d\n”, x , y, resultado); printf (“%d + %d = %d\n”, x , z, soma(x,z)); } 29 Parâmetros •As funções podem se comunicar de duas formas: •Através das variáveis globais: não recomendável, evitar; •Através dos parâmetros existentes nas funções. 30 Parâmetros •Organizados em: •Formais � utilizados na definição da função. Devem ser variáveis e são tratadas como variáveis. •Reais � usados na chamada da função. Podem ser tanto variáveis quanto valores. 31 Parâmetros •Os parâmetros formais e reais de em se correspondem em: •Número •Tipo de dado •Ordem 32 Parâmetro - Exemplo #include <stdio.h> float media (float x, float y, float z) //formais { return 9x+y+z)/3; } main() { float n1, n2, media; printf(“Entre com duas notas:”); scanf(“%f %f”, &n1, &n2); med = media(n1, n2, 8.5); //reais printf(“Media = %.2f\n”, med); } 33 Chamada de uma função •As funções podem ser classificadas de dois tipos: •Procedimento: não retornam nada (void); •Função: retornam um valor através do comando return. 34 Chamada de uma função •Forma de chamada (ativação) de um procedimento: void exibe(int val) { printf(“valor: %d”, val); } 35 Chamada de uma função •Sempre um comando isolado no local da chamada main() { int x; x = 10; exibe(x); } 36 Chamada de uma função •Forma de chamada (ativação) de um função: int soma(int a, int b) { return a + b; } 37 Chamada de uma função • Atribuindo o seu resultado a uma variável res = soma(x, y); • Em uma condição if(soma(x,y) >10) • Em uma saída de dados printf(“soma = %d”, soma(x,y)); 38
Compartilhar