Prévia do material em texto
AU L A 0 7 F U N Ç Õ E S B Á S I C A S D A B I B L I O T E C A Instituto Federal de Educação, Ciência e Tecnologia do Pará – Campus Óbidos Prof. John Percival / <john.llinhares@ifpa.edu. br> Disciplina: Programação II SUMÁRIO 3. Funções Básicas da Biblioteca C 3.1. Função printf() 3.2. Função scanf() 3.3. Função getchar() 3.4. Função putchar() FUNÇÕES BÁSICAS DA BIBLIOTECA C FUNÇÕES BÁSICAS DA BIBLIOTECA C Sintaxe: printf("expressão de controle",argumentos); • É uma função de I/O, que permite escrever no dispositivo padrão (tela). • A expressão de controle pode conter caracteres que serão exibidos na tela e os códigos de formatação que indicam o formato em que os argumentos devem ser impressos. • Cada argumento deve ser separado por vírgula. FUNÇÕES BÁSICAS DA BIBLIOTECA C \n nova linha %c caractere simples \t tab %d decimal \b retrocesso %e notação científica \" aspas %f ponto flutuante \\ barra %o octal \f salta formulário %s cadeia de caracteres \0 nulo %u decimal sem sinal %x hexadecimal EXEMPLO 01 #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); printf("Este é o numero dois: %d",2); printf("%s está a %d milhões de milhas\ndo sol","Vênus",67); } Observações: #include <stdio.h> \*funções de entrada/saída*\ %d \* indica que printf() deve colocar um inteiro na tela. *\ %s \* cadeia de caracteres *\ \n \* usado para quebrar linha *\ EXEMPLO 02 Tamanho de campos na impressão: #include <stdio.h> int main(void) { printf("\n%2d",350); printf("\n%4d",350); printf("\n%6d",350) } Observações: #include <stdio.h> \*funções de entrada/saída*\ %4d \* campos numéricos *\ \n \* usado para quebrar linha *\ EXEMPLO 02 Ex: %6d [espaço de 6 casas decimais impressos em tela] FUNÇÕES BÁSICAS DA BIBLIOTECA C • Para arredondamento: #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); printf("\n%4.1f",3456.78); printf("\n%3.2f",3456.78); printf("\n%3.3f",3456.78); printf("\n%10.4f",3456.78); } Observações: #include <stdio.h> \*funções de entrada/saída*\ \* *\ \n \* usado para quebrar linha *\ EXEMPLO Ex: %10.3f [espaço de 10 casas decimais impressos em tela e 3 representa numero depois da virgula] FUNÇÕES BÁSICAS DA BIBLIOTECA C • Para alinhamento: #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); printf("\n%10.2f %10.2f %10.2f",8.0,15.3,584.13); printf("\n%10.2f %10.2f %10.2f",834.0,1500.55,4890.21); } EXEMPLO Ex: %10.2f [espaço de 10 casas decimais impressos em tela e o 2 representa numero depois da virgula] FUNÇÕES BÁSICAS DA BIBLIOTECA C • Complementando com zeros à esquerda: #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); printf("\n%04d",21); printf("\n%06d",21); printf("\n%6.4d",21); printf("\n%6.0d",21); } EXEMPLO Ex: %6.4d [espaço de 6 casas decimais impressos em tela e o 4 representa numero de dígitos impresso completados com 0] FUNÇÕES BÁSICAS DA BIBLIOTECA C • Imprimindo caracteres: #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); printf("%d %c %x %o\n",'A','A','A','A'); printf("%c %c %c %c\n",'A',65,0x41,0101); } Observações: #include <stdio.h> \*funções de entrada/saída*\ %d \* decimal *\ %c \* caracter simples *\ %x \* hexadecimal *\ %o \* octal *\ \n \* usado para quebrar linha *\ EXEMPLO Ex: [primeiro printf imprimindo em tela a letra A convertido em decimal, caracter, hexadecimal e octal e o segundo printf convertendo os 4 valores para caracter] FUNÇÃO SCANF() FUNÇÃO SCANF() • Também é uma função de I/O implementada em todos compiladores C. • Ela é o complemento de printf() e nos permite ler dados formatados da entrada padrão (teclado). • Sua sintaxe é similar a printf(). • scanf("expressão de controle", argumentos); FUNÇÃO SCANF() • A lista de argumentos deve consistir nos endereços das variáveis. C oferece um operador para tipos básicos chamado operador de endereço e referenciado pelo símbolo "&" que retorna o endereço do operando. • Operador de endereço &: • A memória do computador é dividida em bytes, e são numerados de 0 até o limite da memória. Estas posições são chamadas de endereços. Toda variável ocupa uma certa localização na memória, e seu endereço é o primeiro byte ocupado por ela. EXEMPLO #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); int num; printf("Digite um número: "); scanf("%d",&num); printf("\no número é %d",num); printf("\no endereço e %u",&num); } EXEMPLO FUNÇÃO GETCHAR() FUNÇÃO GETCHAR() • É a função original de entrada de caractere dos sistemas baseados em UNIX. • A função faz o mesmo papel da scanf() porém voltada para o uso com caracteres. • getchar() armazena a entrada até que ENTER seja pressionada. EXEMPLO [USANDO SCANF()] #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); char letra; printf("Insira um caractere: "); scanf("%c",&letra); printf("Você digitou: '%c'", letra); } EXEMPLO [USANDO SCANF()] EXEMPLO [USANDO GETCHAR()] #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); char ch; printf("Digite algum caracter: "); ch = getchar(); printf("\n A tecla pressionada é %c.\n", ch); } EXEMPLO [USANDO GETCHAR()] FUNÇÃO PUTCHAR() FUNÇÃO PUTCHAR() • A função putchar() é mais uma das funções de saída existentes na biblioteca stdio.h • Esta função permite escrever na tela apenas um caractere. EXEMPLO #include <stdio.h> #include <locale.h> int main(void) { setlocale (LC_ALL, "Portuguese"); char ch; printf("Digite um caracter: "); ch = getchar(); putchar(ch); } EXEMPLO