Buscar

Exibindo no Display em C

Prévia do material em texto

Exibindo no Display
A linguagem C não apresenta comandos para exibir no display (mensagens, constantes numéricas, conteúdo de variáveis, retorno de funções) é considerada uma grande vantagem, uma vez que se distancia do hardware aumentando a sua portabilidade. Em contrapartida, apresenta funções que fazem parte da biblioteca padrão da linguagem C: stdio.h (standard input output).
puts(“cadeia de caracteres”); /*ou vetor de char*/ - Não consegue trabalhar com constantes numéricas nem com variáveis de qualquer tipo, mas é ideal quando só temos mensagens para exibir.
putchar(‘caracter’); /*ou variável de um caracter*/ - Não exibe uma saída formatada e só pode ser usada para variável ou constante char de um. Talvez seja a menos usada das 3.
printf(“cadeia de caracteres”, arg1, arg2, ..., argn); /*a lista de argumentos pode estar ausente*/ - Exibe formatado um, ou vários caracteres, constante numérica, conteúdo de variável, retorno de função - uma função completa. Não faz parte da Linguagem C, mas é a mais importante função para exibir na tela.
Cadeia de caracteres entre aspas - Tudo que você desejar que apareça na tela, exatamente na ordem, deverá estar dentro dessa cadeia de caracteres, também referenciada por alguns autores de string.
Lista de argumentos separados por vírgulas - Os argumentos são variáveis, constantes, chamadas de funções, expressões, entre outros.
Caracteres Especiais (ou caracteres de controle ou sequência de escape) - Sempre precedidos pela \ cujo nome em inglês é backslash, mas por aqui é conhecida como barra invertida ou contrabarra. 
“ (Aspas duplas) - A cadeia de caracteres da função fica entre elas.
\n (New line) - Equivale ao pressionamento da tecla Enter em um editor de texto. Você poderá, com uma única função printf, exibir em várias linhas, pois várias sequências \n podem ser usadas juntas, ou separadas.
\t (Horizontal tabulation) - Equivale ao pressionamento da tecla Tab em um editor de texto. Você poderá, com uma única função printf, exibir em várias posições pré-definidas das linhas, pois várias sequências \t podem ser usadas juntas, ou separadas. Visualize linhas ao final de cada conjunto de 8 colunas e toda  vez que tecla Tab for pressionada o cursor se deslocará para o início do próximo conjunto. Esse conjunto é chamada de zona. Sendo assim, a primeira zona vai da 1ª coluna até a 8ª, a segunda da 9ª até a 16ª, depois 17ª, 25ª e assim sucessivamente.
\v (Vertical tabulation)
Códigos de formatação (ou especificadores de formato) - Sem eles, você não consegue exibir nenhum valor dos argumentos. Observe que todos serão precedidos pelo símbolo de %.
 
%c %d %f %s %t.decf - Apresentamos 4 formatos básicos e 1 com uma formatação completa para os tipos float e double. Nesse último, com, ou sem presença de zeros à esquerda. A letra t corresponde ao total de posições e dec, o total de casas decimais. Veja exemplo: =======.== %10.2f.
%nd – Apresentamos um número inteiro formatado com n casas. Observe o alinhamento e o que acontece com posições não usadas.
%0nd - Apresentamos um número inteiro formatado com n casas. Observe o alinhamento e o que acontece com posições não usadas pela presença do 0 no código de formatação.
%t.decf - Se a formatação de um número real não for precisa. A princípio, você pode achar que são iguais, mas veja o que acontece, lendo os textos na saída.
%+.. - O sinal de + não aparece quando o número é positivo, mas se você precisar que ele apareça, use antes da letra d ou f. Se o número for negativo, aparecerá o sinal de – como sempre.
Mais argumentos do que especificadores - A importância de ficarmos atentos quando formos escrever a string, pois o número de códigos deve corresponder ao número de argumentos. Nesse caso, tem mais argumentos e, aparentemente, não percebemos nada estranho, mas um valor não foi exibido.
Menos argumentos do que especificadores - A importância da cadeia de caracteres da função printf() , pois tudo que está dentro dessa cadeia é que sairá no display. Sendo assim, todo cuidado é pouco, uma vez que podemos colocar mais especificadores do que argumentos e aparecerem números estranhos que, às vezes, demoramos a perceber que foi esse tipo de erro.
Especificador diferente do argumento - Cuidado ao escolher o especificador, pois se ele for diferente do tipo do argumento, irá aparecer 0 para int e float ou um número estranho para int e 0 para float, depende do compilador/SO.
Cada operador aritmético está relacionado a uma operação elementar: adição, subtração, multiplicação e divisão. Existe ainda um operador (%) chamado operador de módulo cujo significado é o resto da divisão inteira.
ceil / floor - Arredondam constantes do tipo real.
fmod - Retorna o resto de uma divisão real.
sin / cos / tan - Embora tenha muito mais funções, só apresentaremos as 3 básicas. Reforçarmos que o ângulo precisa ser convertido de graus para radianos (multiplique por PI (3.14159265) e divida por 180).
pow / sqrt / log - Com a função pow() potenciação poderemos extrair raiz a qualquer índice. sqrt é raiz. Apesar de termos 2 funções para logaritmos, se desejarmos calcular o logaritmo em qualquer base, use uma das propriedades do logaritmo.
Biblioteca ctype.h é composta de funções que manipulam um caracter. Os códigos variam de 0x20 até 0x7E na tabela ASCII.
toupper/tolower – Convertidas para letra maiúscula e para letra minúscula, respectivamente.
Biblioteca stdlib.h é de propósito geral, pois as funções têm finalidades diferentes.
atoi/atof - Úteis para trechos de proteção na entrada de dados numéricos, evitando erros na execução, uma vez que o programa receberá a entrada numérica como string e converterá através dessas funções para números quando for possível.
abs - Retorna o valor absoluto do número.
rand - retorna um número inteiro no intervalo de 0 até o maior inteiro. Ela sempre deve ser usada com a função srand() feita para gerar o incializador desse conjunto de números pseudo aleatórios.
A função system() será usada para chamar o comando pause, color, cls, um bloco de notas, a calculadora etc.
Exercícios: 1) Se \n é um caracter, podemos usar printf(‘\n’)? R: Não, pois printf exige uma cadeia de caracteres que fica entre “ .
2) O recuo que se percebe no código é obrigatório? R: Não, mas dá maior visibilidade ao código.
3) Tanto faz usar printf() ou puts()? R: Não. Somente no caso que se exibe apenas uma string ou um vetor de char.
4) Como se faz para que o operador de divisão efetue uma divisão real com duas constantes inteiras? R: Adicionando um ponto em uma das duas constantes.
	1a Questão (Ref.: 201309233602)
	
	Assinale a alternativa que apresenta APENAS os exemplos de operadores relacionais.
	 
	<, > e >=
	
	=, > e ||
	
	&&, >= e ||
	
	+, - e *
	
	&&, || e ~
	 2a Questão (Ref.: 201309144022)
	
	que tipo de dado deve ser utilizado para definir uma variável que irá ramazenar um número do tipo: 65,890
	 
	float
	
	uint
	
	int
	
	string
	
	char
	 3a Questão (Ref.: 201309243408)
	
	Quanto aos códigos de formatação (especificadores de formato) usados com a função printf() e tendo em vista o trecho do programa,  qual deveria ser a linha usada para exibir a saída abaixo:
Observação: A sequência de números que aparece na saída representa as colunas da tela.
Trecho
int num1= 12, num2=8; float num3=15;
printf("\n12345678901234"); 
	
	
	printf("\n%d\t%6.2f\n",num1/num2, num3);
	 
	printf("\n%d\t%06.2f\n", num1, num3);
	
	printf("\n%04d\t%.2f\n", num1/num2, num3);
	 
	printf("\n%.2f\t%06.2f\n",(float) num1/num2, num3);
	
	printf("\n%4d\t%.2f\n", num1%num2, num3/2);

Continue navegando