Baixe o app para aproveitar ainda mais
Prévia do material em texto
TÉCNICAS DE PROGRAMAÇÃO 1 INTRODUÇÃO À LINGUAGEM C- CONVERSÕES DE TIPO E COMANDOS DE ENTRADA E SAÍDA. Prof Geiza Maria Hamazaki da Silva 2013.1 Resumo Um programa recebe um conjunto de dados e entrada, processa esses dados gerando a saída, que reflete a solução do problema. Neste conjunto de slides serão apresentados a conversão de tipos básicos e os comandos de Entrada e Saída na Linguagem C. Conversão de Tipos A conversão de tipo é automática na avaliação de uma expressão, mas também pode ser requisitada explicitamente. float f; /* valor 3 é convertido automaticamente para “float” */ float f = 3; /* ou seja, passa a valer 3.0F, antes de ser atribuído a f */ int g, h; /* 3.5 é convertido (e arredondado) para “int” */ g = (int) 3.5; /* antes de ser atribuído à variável g */ /* 3.5 é convertido (e arredondado) para “int” */ h = (int) 3.5 % 2 /* antes de aplicar o operador módulo “%” */ Conversão de tipos em expressões Expressão c – s / i c + 3 c + 5.0 7 * s * L d + s Para ilustrar, considere a declaração a seguir char c; double d; float f; int i;long L; short s; Tipo retornado após a avaliação da expressão int int double long double Funções de Entrada e Saída Função “printf”: Possibilita a saída de valores, na tela, segundo um determinado formato( inteiro- %d, real -%f, ...) printf ("%d %g", 33, 5.3); tem como resultado a impressão da linha: 33 5.3 printf (formato, lista de constantes/variáveis/expressões...); Funções de Entrada e Saída Função “printf”: Possibilita a saída de valores, na tela, segundo um determinado formato( inteiro- %d, real -%f, ...) printf (formato, lista de constantes/variáveis/expressões...); printf ("Inteiro = %d Real = %g", 33, 5.3); com saída: Inteiro = 33 Real = 5.3 Funções de Entrada e Saída Especificação de formato: %c especifica um char %d especifica um int %u especifica um unsigned int %f especifica um double (ou float) %e especifica um double (ou float) no formato científico %g especifica um double (ou float) no formato mais apropriado (%f ou %e) %s especifica uma cadeia de caracteres Função printf Exemplo: printf ( “A loja vende %d %s por R$%f” , 5, “compact-disks” , 60.00); Formato: “A loja vende %d %s por R$%f ” Lista de constantes/variáveis...: 5, “compact-disks” , 60.00 Saída na tela: A loja vende 5 compact-disks por R$60.000000 printf (formato, lista de constantes/variáveis/expressões...); Função printf Existem alguns caracteres especiais que são frequentemente utilizados nos formatos de saída para formatar. \n caractere de nova linha \t caractere de tabulação \r caractere de retrocesso (volta ao início da linha) \’’ o caractere ‘’ \\ o caractere \ \% o caractere % Funções de Entrada e Saída Impressão de texto: printf("Curso de Tecnicas de Programacao 1\n"); exibe na tela a mensagem: Curso de Tecnicas de Programacao 1 Programa: Soma dois números inteiros #include <stdio.h> int main() { int a,b,c; printf ("\n Soma de 2 números inteiros:\n"); printf (" Primeiro numero: "); scanf ("%d",&a); printf (" Segundo numero: "); scanf ("%d",&b); c=a+b; printf ("\n A soma de %d e %d da %d ",a,b,c); return 0; } Programa: Soma dois números inteiros #include <stdio.h> int main() { int a,b,c; printf ("\n Soma de 2 números inteiros:\n"); printf (" Primeiro numero: "); scanf ("%d",&a); printf (" Segundo numero: "); scanf ("%d",&b); c=a+b; printf ("\n A soma de %d e %d da %d ",a,b,c); return 0; } Coloque este programa no Visual C++ Express 2010. Compile , Execute e Divirta-se! Formatação de Saída Especificação de tamanho de campo: %4d %7.2f 33 03.5 4 2 7 Funções de Entrada e Saída Função “scanf”: captura valores fornecidos via teclado int n; scanf (“ %d", &n); O valor inteiro digitado pelo usuário é armazenado na variável n. scanf (formato, lista de endereços das variáveis...); Funções de Entrada e Saída Especificação de formato: %c especifica um char %d especifica um int %u especifica um unsigned int %f,%e,%g especificam um float %lf, %le, %lg especificam um double %s especifica uma cadeia de caracteres Funções de Entrada e Saída Função “scanf” (cont.): Os caracteres diferentes dos especificadores no formato servem para cercar a entrada. Espaço em branco dentro do formato faz com que sejam "pulados" eventuais brancos da entrada. %d, %f, %e e %g automaticamente pulam os brancos que precederem os valores numéricos a serem capturados. scanf ("%d:%d", &h, &m); valores (inteiros) fornecidos devem ser separados pelo caractere dois pontos (:) Exemplo /* Programa para converter altura em metros para ft e pol */ #include <stdio.h> int main(void){ int f; /* numero de pes */ float p; /* numero de polegadas */ float h; /*altura em metros */ /* captura altura em metros */ printf("Digite altura em metros: "); scanf("%f", &h); /* Calcula altura em pes e polegadas */ h = 100*h; /* converte para centimetros */ f = (int) (h/30.48); /* calcula numero de pes */ p = (h-f*30.48)/2.54; /* calcula numero de polegas do restante */ /* Exibe altura convertida */ printf("Altura: %dft %.1fpol\n", f, p); return 0; } 18 Referências W. Celes, R. Cerqueira e J.L. Rangel, Introdução a Estruturas de Dados - com técnicas de programação em C, Ed. Campus, 2004 A. Kelley, A Book on C, Benjamin Cummings, 1995 Notas de aulas do curso presencial de Técnicas de Programação1- UNIRIO - Desenvolvidos pelas professoras: Geiza Maria Hamazaki da Silva e Adriana C. F Alvim – primeiro semestre de 2011.
Compartilhar