Sei sulla pagina 1di 8

DIM0108.

0 - Conceitos e Tcnicas de Programao


Caracteres.
David Dharbe
1
1 Wednesday, May 4, 2011
DIM0108.0 - Conceitos e Tcnicas de Programao
Introduo

Tipos j vistos:
!
int
!
float
!
arranjos

A linguagem C possui um tipo para representar caracteres.


!
Nome do tipo: char
!
Como o tipo int, uma faixa de inteiros

Qual a relao entre um caracter e um inteiro?


!
Codicao
2
2 Wednesday, May 4, 2011
DIM0108.0 - Conceitos e Tcnicas de Programao
Codicao

Um cdigo associado a cada smbolo (ASCII, ISO-Latin-1, Unicode).

Cdicao ASCII [1960]:


!
smbolos:
"
caracteres do alfabeto ingls;
"
dgitos;
"
smbolos de pontuao;
"
smbolos de espaamento: espao, tabulao, quebra de linha,
quebra de pgina;
"
outros smbolos que eram teis quando o cdigo foi criado que
no so mais hoje.
!
cdigo:
"
um byte (8 bits), o bit a esquerda sempre zero.
"
inteiro entre 0 e 127.
3
3 Wednesday, May 4, 2011
DIM0108.0 - Conceitos e Tcnicas de Programao
Codicao ASCII: trechos
4
Binrio Decimal Smbolo
0000 0000 0 nulo
0000 1001 9 tabulao
0010 0000 32 espao
0010 0010 34 "
0011 0000 48 0
0011 0001 49 1
0011 1001 57 9
0100 0001 65 A
0100 0010 66 B
0101 1010 90 Z
0110 0001 97 a
0110 0010 98 b
0111 1010 122 z
0111 1111 127 delete
4 Wednesday, May 4, 2011
DIM0108.0 - Conceitos e Tcnicas de Programao
Programa exemplo
5
#include <stdio.h>
int main (void)
{
char c, quebra;
while (1) {
printf("Digite uma tecla: ");
scanf("%c%c", &c, &quebra);
printf("Simbolo: '%c' ASCII: %i\n", c, c);
}
return 0;
}
obs. impresso e leitura formata de caracter so feitas com %c
5 Wednesday, May 4, 2011
DIM0108.0 - Conceitos e Tcnicas de Programao
Exerccios

Escreva funes para testar se um caracter


!
uma letra maiscula;
!
um dgito decimal;
!
um dgito hexadecimal;

Escreva funes para converter um caracter, digamos c, em


!
o mesmo caracter, em caixa maiscula (o resultado s diferente
se c for uma letra minscula);
!
no nmero correspondente (assumindo que c um dgito decimal
ou hexadecimal).
6
6 Wednesday, May 4, 2011
DIM0108.0 - Conceitos e Tcnicas de Programao
7
7 Wednesday, May 4, 2011
DIM0108.0 - Conceitos e Tcnicas de Programao
Exerccio: caa-palavras

Dena uma sub-rotina com a seguinte interface:


!
int lookup_word(int n, int m, char board[n][m],
int k, char word [k]);

A funo deve testar se a palavra de k letras word encontra-se na


matriz de palavras board.
!
A busca deve ser feita nas oito direes.

Dica: dena uma sub-rotina diferente que testa a presena da


palavra para cada uma das oito direes.
8
8 Wednesday, May 4, 2011

Potrebbero piacerti anche