Buscar

Conceitos básicos da linguagem C

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Conceitos	básicos	da	linguagem	C	
• Histórico	da	linguagem	C.	
• Tipos	primi8vos	de	dados.	
• Constantes	e	variáveis.	
• Atribuição.	
• Operadores	aritmé8cos.	
• Funções	de	leitura	e	de	exibição.	
51	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Breve	histórico	da	linguagem	C	
1966:	Mar8n	Richards	(MIT)	propõe	a	Basic	Combined	Programming	
Language	(BCPL)	para	o	desenvolvimento	de	compiladores	
simplificados	para	outras	linguagens	de	programação.	Todas	as	
variáveis	eram	de	um	único	8po	(word),	cujo	tamanho	dependia	da	
arquitetura	do	computador	onde	era	executada.	
	
O	primeiro	programa	“Hello,	world!”	foi	escrito	em	BCPL.	
52	
GET "LIBHDR" 
LET START() BE 
$( 
 WRITES("Hello, world!*N") 
$) 
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Breve	histórico	da	linguagem	C	
1969:	Ken	Thompson	(Bell	Labs)	adaptou	a	Linguagem	BCPL	para	u8lização	
em	mini-computadores.	Criação	de	variáveis	do	8po	caractere	
(letras)	e	a	inclusão	de	bibliotecas	externas	de	funções.	à	B	
	
1971:	Dennis	Richie	(Bell	Labs)	acrescentou	8pagem	à	linguagem	B	(inteiro,	
real,	caracter	etc),	e	alterou	seu	compilador	para	produzir	código	em	
linguagem	de	máquina.	à	NB	(New	B).	
	
1972:	Com	a	inclusão	de	um	programa	pré-processador	ao	compilador	e	
pequenas	alterações	na	sintaxe,	NB	passou	a	se	chamar	C,	sendo	
u8lizada	para	reescrever	cerca	de	90%	do	núcleo	do	sistema	
operacional	UNIX,	sendo	também	distribuída	com	este	sistema.	
53	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Principais	caracterís8cas	da	linguagem	C	
A	linguagem	C	combina	caracterís8cas	de	linguagens	de	alto-nível	com	a	
funcionalidade	de	linguagens	de	montagem	(assembly	languages).	Dentre	
as	principais	caracterís8cas	que	tornaram	C	uma	das	linguagens	mais	
populares	estão:	
	
•  Seu	compilador	gera	programas-executáveis	menores	e	mais	velozes	do	
que	muitas	outras	linguagens;		
•  Uso	extensivo	de	funções:	permite	que	tarefas	específicas	sejam	
definidas	e	codificadas	separadamente	–	um	programa	em	C	é	uma	
coleção	de	funções;	
•  Implementação	de	ponteiros:	endereçamento	da	memória,	vetores,	
estruturas	e	funções.	
	
54	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
O	menor	programa	em	C	
	
Todo	programa	escrito	na	linguagem	C	possui	um	estrutura	básica,	sobre	a	
qual	são	adicionadas	as	instruções	e	comandos	que	se	deseja	que	o	
programa	execute.	
	
55	
int main()
{
 return(0);
}
A	função	int main()
•  É	a	função	principal	de	um	programa	em	C.	
•  Sempre	deverá	exis8r.	
•  Marca	o	início	da	execução	do	programa.	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Algumas	notas	MUITO	importantes	
	
	
	
	
	
	
	
	
	
56	
Tudo	que	tem	um	começo	tem	um	fim	(exceto	a	história	do	filme	Matrix	) 
•  Os	símbolos	/*	e	*/	indicam	o	começo	e	o	fim	de	um	comentário.	
•  Os	símbolos	{	e	}	indicam	o	começo	e	o	fim	de	um	bloco	de	comandos.	
•  Os	símbolos	"	e	"	indicam	o	começo	e	o	fim	de	uma	cadeia	de	caracteres.	
•  Todo	comando	deve	ser	encerrado	com	o	símbolo	;	(ponto-e-vírgula).	
/* Programa Hello, world! */
#include <stdio.h>
int main()
{
 printf("Hello, world!\n");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Principais	bibliotecas	da	linguagem	C	
A	linguagem	C	possui	um	conjunto	mínimo	de	instruções,	visando	a	criação	
de	programas	executáveis	de	tamanho	pequeno.	A	adição	de	novas	
funcionalidades	é	feita	através	da	inclusão	de	bibliotecas,	que	contêm	
classes	de	funções	específicas	para	o	tratamento	de	dados	desejado.	
	
	
	
	
	
	
	
A	inclusão	de	bibliotecas	devem	ser	as	primeiras	instruções	de	um	
programa	em	C.	
57	
#include <stdio.h> // biblioteca de funções de entrada e saída
#include <stdlib.h> // biblioteca de funções do sistema operacional
int main()
{
 printf("Primeiro programa em C!\n");
 system("PAUSE");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Principais	bibliotecas	da	linguagem	C	
58	
Biblioteca	 Principais	funcionalidades	
stdio.h entrada	e	saída	de	dados.	
stdlib.h alocação	de	memória	e	comandos	para	o	sistema	operacional.	
math.h funções	matemá8cas.	
time.h manipulação	de	dados	nos	formatos	de	data	e	hora.	
ctype.h manipulação	de	caracteres.	
string.h manipulação	de	cadeias	de	caracteres.	
conio.h manipulação	do	cursor	na	tela.	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Armazenamento	de	dados	
Antes	de	serem	u8lizadas	em	um	programa,	as	informações	do	mundo	
ksico	devem	ser	armazenadas	na	memória	do	computador.	Em	
programação,	tais	informações	recebem	o	nome	de	dado.	Os	dados	podem	
ser	valores	numéricos	ou	símbolos	gráficos	(caracteres)	
	
Para	isso,	o	programa	reserva	endereços	de	memória,	que	passam	a	ser	
iden8ficados	por	um	nome,	geralmente	relacionado	à	informação	que	ele	
representa	(massa,	altura,	força,	cor	etc.)	
	
Através	deste	nome,	a	informação	con8da	no	respec8vo	endereço	de	
memória	pode	ser	modificada	ou	u8lizada	em	expressões,	comandos	e	
funções	do	programa.	
59	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Constantes	e	variáveis	
Em	linguagens	de	programação	de	alto	nível,	os	dados	podem	ser	de	duas	
naturezas:	constantes	ou	variáveis.	
	
60	
Constantes 
Assumem	um	único	valor,	do	início	ao	fim	da	execução	do	programa,	não	podendo	
ser	alterado	por	nenhum	comando	ou	função.	
Variáveis 
Assumem	um	valor	inicial,	que	pode	ser	alterado	por	alguma	função	ou	comando	
durante	a	execução	do	programa.	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Tipos	primi8vos	da	linguagem	C	
A	linguagem	C	realiza	operações	sobre	dados	numéricos	e	não-numéricos.	
	
Os	dados	numéricos	podem	ser	de	3	8pos	dis8ntos:	
int :	para	valores	inteiros;	
float :	para	valores	de	ponto	flutuante;	
double :	para	valores	de	ponto	flutuante	de	precisão	dupla.	
	
char	 	 	:	para	valores	não-numéricos	(dados	como	letras,	dígitos	ou	
	 	 	 			outro	símbolo	gráfico).	
61	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Declaração	
62	
0xC907	
0xC908	
0xC909	
0xC910	
0xC911	
Memória	
endereços	
0xC912	
0xAD14	
0xAD15	
0xAD16	
0xAD17	
0xAD18	
0xAD19	
Memória	
endereços	
A	declaração	é	um	comando	que	associa	
o	nome	de	uma	constante	ou	de	uma	
variável	a	um	determinado	endereço	de	
memória.	
int main()
{
 const int i = 5;
 int j;
 // comandos
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Tipos	e	valores	
Os	valores	admissíveis	para	cada	8po	primi8vo	podem	ser	alterados	com	o	
uso	dos	modificadores	unsigned,	short	e	long.	
63	
Tipo	
Tamanho	
(bytes)	
Intervalo	
Início	 Fim	
char 1	 –128	 127	
unsigned char 1	 0	 255	
short int 2	 –32768	 32767	
unsigned short int 2	 0	 65535	
int 4	 –2147483648		 2147483647		
unsigned int 4	 0	 4294967295	
float 4	 ±3.4	E–38		 ±3.4	E+38	
double 8	 ±1.7	E–308	 ±1.7	E+308	
long double 10	 ±3.4	E–4932	 ±3.4	E+4932	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
A	tabela	ASCII	padrão	
64	Conceitos	básicos	da	linguagem	C	PC-I	©	MAP�2014	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Regras	0a	e	0b	sobre	constantes	e	variáveis	
65	
Declaração	prévia 
Toda	constante	ou	variável	deve	ser	declarada	antes	de	ser	usada.	
Declaração	única 
O	nome	da	constante	ou	variável	deve	ser	único.	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Iden8ficadores	de	constantes	e	variáveis	
	
Os	nomes	dados	às	constantes	ou	variáveis	de	um	programa	denominam-
se	iden8ficadores.	Para	definir	um	iden8ficador	pode-se	u8lizar	uma	
combinação	de:	
	
• 	letras	(maiúsculas	e	minúsculas,	sem	acentuação).	
• 	dígitos	(0	a	9),	desde	que	o	primeiro	caractere	não	seja	um	dígito.	
• 	caractere	'_'	(sublinha).	
	
A	linguagem	C	diferencia	letras	maiúsculas	e	minúsculas.	
66	
int F;// uma variável inteira denominada F 
float f; // uma variável real denominada f
double valor de A; // identificador inválido!
char 1a_inicial; // identificador inválido!
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Palavras	reservadas	da	linguagem	C	
As	seguintes	palavras	não	podem	ser	u8lizadas	para	denominar	en8dades	
(constantes,	variáveis,	estruturas,	funções	etc.)	criadas	pelo	programador:	
	
• 	Armazenamento:	auto, extern, register, static.	
• 	Tipagem:	char, const, double, enum, float, int, long, 
short, signed, struct, typedef, union, unsigned, void, 
volatile.	
• 	Controle	de	execução:	break, continue, goto, return.	
• 	Comandos	de	seleção:	case, default, else, if, switch.	
• 	Comandos	de	iteração:	do, for, while.	
• 	Função:	sizeof().	
	
67	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Armazenando	valores	em	variáveis
	
Existem	3	formas	de	armazenar	valores	em	variáveis.	
68	
Inicialização	(declaração	com	atribuição):	
float x = 1.234;
Atribuição:	
float x;
x = 1.234;
Leitura:	
float x;
scanf("%f", &x); // o valor de x será informado pelo usuário 

 // durante a execução do programa
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Atribuindo	valores	à	variáveis	
A	atribuição	é	um	comando	u8lizado	para	modificar	o	valor	de	uma	
variável.	
69	
int main()
{
 int i;
 float x;
 char c;
 
 i = 5; // a variável i recebe o valor inteiro 5.
 x = 5.0; // a variável x recebe o valor "real" 5.
 c = '5'; // a variável c recebe o caratere '5'.
 ...
 return(0);
}
Atenção 
• 	o	símbolo	de	atribuição	=	não	significa	igualdade.	
• 	a	atribuição	sempre	atua	da	direita	para	a	esquerda	(←).	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Atribuindo	valores	à	variáveis	
	
A	atribuição	é	um	comando	destru8vo,	ou	seja,	o	valor	anteriormente	
armazenado	pela	variável	à	esquerda	do	símbolo		= será	subs8tuído	pelo	
valor	da	constante,	variável	ou	expressão	no	lado	direito.	
70	
int main()
{
 int i; 
 int j;
 i = 2; // i recebe o valor 2.
 j = i; // j recebe o valor de i.
 i = 0; // i recebe o valor 0.
 i = i + 1; // some 1 ao valor atual de i e armazene o resultado em i.
 i = j; // i recebe o valor de j.
 
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Operadores	aritmé8cos	
A	precedência	das	operações	aritmé8cas	em	C	obedece	às	regras	
estabelecidas	pela	Álgebra.	Os	operadores	com	mesmo	nível	de	
precedência	são	avaliados	pelo	compilador	da	esquerda	para	a	direita.	
	
	
	
	
	
	
	
	
	
A	precedência	das	operações	pode	ser	modificada	com	o	uso	de	
parênteses.	
71	
Símbolo	 Operação	 Resultado	 Precedência	
+ adição	 soma	dos	argumentos	 baixa	
– subtração	 diferença	dos	argumentos	 baixa	
* mul8plicação	 produto	dos	argumentos	 média	
/ divisão	 quociente	dos	argumentos	 média	
% módulo	 resto	da	divisão	inteira	 média	
++ incremento	 adiciona	1	ao	operando	 alta	
–– decremento	 subtrai	1	do	operando	 alta	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Expressões	aritmé8cas	
Calcular	o	perímetro	e	o	volume	de	uma	esfera	de	raio	r	=	3.	
P	=	4πr2.	
72	
int main()
{
 const float PI = 3.14159;
 float r = 3;
 float p, v;
 p = 4*PI*r*r;
 v = (4.0/3.0)*PI*r*r*r;
 return(0);
}
€ 
V = 43 πr
3
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
A	função	de	exibição	printf()
A	função	printf()	é	u8lizada	para	exibição	de	informações.	Sua	sintaxe	
é:	
	
printf("expressão de controle", lista de argumentos);	
	
A	"expressão de controle"	contém	a	mensagem	que	será	exibida	na	
tela,	juntamente	com	os	caracteres	especiais	de	exibição	e	os	códigos	de	
formatação	dos	argumentos.	
	
A	lista de argumentos	corresponde	à	constantes,	variáveis	e	
expressões	que	serão	exibidas	na	tela,	de	acordo	com	os	formatos	
estabelecidos	pela	"expressão de controle".	
73	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Símbolos	para	a	função	printf()
	
Servem	para	controle	e	formatação	da	exibição	em	tela.	
74	
Código	 Exibição	
%c caractere	simples	
%s cadeia	de	caracteres	
%d valor	inteiro	
%u valor	inteiro	sem	sinal	
%f valor	de	ponto	flutuante	
%e notação	cien{fica	
%o valor	octal	
%x valor	hexadecimal	
%% caractere	%	
Caractere	 Ação	
\n nova	linha	
\t tabulação	
\b retrocesso	(backspace)	
\f novo	formulário	
\a alerta	(sinal	sonoro)	
\r início	da	linha	
\0 caractere	nulo	
\" exibe	o	caractere	"	
\\ exibe	o	caractere	\	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Uso	da	função	printf()
75	
Exibir	uma	mensagem	e	pular	duas	linhas:	
printf("Bom dia!\n\n");
Exibir	uma	mensagem:	
printf("Bom dia!");
Exibir	o	valor	de	uma	variável	inteira:	
printf("%d", j);
Exibir	o	valor	de	uma	variável	inteira	e	de	uma	variável	real,	na	mesma	linha:	
printf("%d %f", j, x);
Exibir	mensagens	e	valores	de	variáveis,	em	linhas	dis8ntas:	
printf("Valor de j = %d\nValor de x = %f\n", j, x);
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
A	função	printf()
	
	
Exemplo:	Exibir	um	caractere	de	diversas	formas	diferentes.	
76	
#include <stdio.h>
#include <stdlib.h>
int main()
{
 char a = 'A';
  printf("CAR: %c\nDEC: %d\nOCT: %o\nHEX: %x\n", a, a, a, a);
 system("PAUSE");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
A	função	de	leitura	scanf()
A	função	scanf()	é	u8lizada	para	leitura	de	dados	pelo	teclado.	Sua	
sintaxe	é:	
	
scanf("expressão de controle", lista de argumentos);	
	
Diferentemente	da	função	printf(),	a	"expressão de controle"	
da	função	scanf()	deverá	conter	apenas	os	códigos	de	formatação	das	
variáveis	a	serem	lidas.	
	
A	lista de argumentos	é	composta	pelos	nomes	das	variáveis	que	
serão	lidas,	precedidas	pelo	símbolo	&	(endereço),	de	acordo	com	a	ordem	
estabelecida	pela	"expressão de controle".	
	
77	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Uso	da	função	scanf()
	
	
	
	
	
	
	
	
	
	
Na	função	scanf()	é	imprescindível	o	uso	do	símbolo	de	endereço	& 
imediatamente	antes	do	nome	da	variável.	
78	
Ler	o	valor	de	uma	variável	inteira:	
scanf("%d", &j);
Ler	o	valor	de	uma	variável	real	e	uma	variável	inteira:	
scanf("%f %d", &x, &j);
leia	
um	valor	inteiro	
e	armazene	no	endereço	de	memória	reservado	para	a	variável	j		
leia	 e	armazene	nos	respec8vos	endereços	de	memória	de	cada	variável		
dois	valores	separados	por	um	espaço	em	branco	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Exemplo	
	
Exibir	o	valor	correspondente	em	graus	fahrenheit	de	uma	temperatura	em	
graus	celsius	informada	pelo	usuário.	
79	
#include <stdio.h>
#include <stdlib.h>
int main()
{
 float grausC, grausF;
 printf("Informe a temperatura em graus celsius: ");
 scanf("%f", &grausC);
 grausF = (9*grausC + 160)/5;
 printf("Temperatura em graus fahrenheit: %.1f\n", grausF);
 system("PAUSE");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Uso	combinado	printf()	e	scanf()
	
	
A	função	scanf()	não	deve	ser	u8lizada	para	exibir	mensagens.	
80	
Isto	não	funciona!!!	
scanf("Entre com o valor de i = %d", &i);
Isto	sim,	funciona!!!	
printf("Entre com o valor de i = ");
scanf("%d", &i);
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Formatando	a	exibição	de	valores	
A	função	printf()	permite	definir	como	os	valores	das	constantes	e	
variáveis	serão	exibidos	na	tela.	
81	
Exibindo	valores	inteiros:	
int i = 3;
printf("i = %d", i); // i = 3
printf("i = %5d", i); // i = 3
printf("i = %05d", i); // i = 00003
Exibindo	valores	reais:	
float pi = 3.14159265358;
printf("pi = %f", pi); // pi = 3.141593
printf("pi = %.4f", pi); // pi = 3.1416
printf("pi = %8.2f", pi); // pi = 3.14
Atenção!!!	
Não	se	usa	formatação	de	exibição	na	função	scanf().	
Conceitosbásicos	da	linguagem	C	PC-I	©	MAP’2016	
O	operador	de	subtração	
O	símbolo	–	representa	a	operação	de	subtração.	Quando	u8lizado	numa	
expressão	aritmé8ca,	ele	calcula	e	diferença	entre	os	operadores	
envolvidos.		
	
Este	símbolo	também	define	o	operador	unário	que	altera	o	sinal	da	
constante,	variável	ou	expressão	que	o	sucede.		
	
	
	
	
82	
Alterar	o	sinal	de	uma	variável	ou	expressão...	
x = -x;
k = -(i + j);
...	é	o	mesmo	que	mul8plicar	a	variável	ou	expressão	por	-1		
x = (-1)*x;
k = (-1)*(i + j);
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
O	operador	de	divisão	
O	símbolo	/	representa	a	operação	de	divisão.	Uma	expressão	aritmé8ca	
contendo	diversos	valores	no	numerador	ou	no	denominador	deve	ser	
linearizada	com	o	uso	de	parênteses.	
	
	 	 	 	 	 	 	 	 	à x = (a + b)/(c + d);
	
O	resultado	da	operação	de	divisão	depende	do	8po	dos	operandos	na	
expressão.	
83	
Quando	houver	apenas	operando	inteiros...	
Será	realizada	a	divisão	inteira.	
Quando	pelo	menos	um	dos	operandos	for	real...	
Será	realizada	a	divisão	real.	
€ 
x← a + bc + d
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
O	operador	módulo	
O	símbolo	%	representa	o	operador	módulo,	que	calcula	o	resto	da	divisão	
inteira	entre	2	operandos	do	8po	inteiro.	
	
Ex:		
	 	 	 	 	 	 	 	 	 	à	 	 	 	13	=	5	*	2	+	3	
84	
13	 5	
3	 2	
dividendo	
divisor	
quociente	
resto	
int D = 13, d = 5;
int Q, R;
Q = D/d;
R = D%d;
printf(“Resultado da divisão inteira: %d\n”, Q) ;
printf(“Resto da divisão inteira: %d\n”, R);
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Operadores	de	incremento	e	decremento	
São	u8lizados	para	adicionar	ou	subtrair	1	unidade	de	uma	variável	inteira.	
	
85	
i++; // equivale ao comando i = i + 1;
j--; // equivale ao comando j = j – 1;
Notação	pré-fixa	
O	valor	da	variável	é	atualizado	antes	de	ser	u8lizado	na	expressão.	
Notação	pós-fixa	
O	valor	da	variável	é	atualizado	depois	de	ser	u8lizado	na	expressão.	
i = 3;
j = ++i; // i assume o valor 4, j assume o valor de i
i = 3;
j = i++; // j assume o valor de i, i assume o valor 4
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Conversão	de	8pos	em	atribuições	
A	linguagem	C	permite	a	atribuição	de	valores	entre	constantes	e	variáveis	
de	8pos	diferentes.	Em	alguns	casos	pode	haver	perda	de	informação.	
86	
(char) = (int)
Armazena	apenas	os	bits	menos	significa8vos	da	variável	inteira.	
(int) = (float)
Armazena	apenas	a	parte	inteira	do	valor	de	ponto	flutuante.	
(float) = (char)
Armazena	o	valor	inteiro	associado	ao	caractere.	
(float) = (int)
Armazena	o	valor	inteiro	como	um	número	de	ponto	flutuante.	
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
O	8po	char
Variáveis	ou	constantes	do	8po	char	são	usadas	para	amazenar	
caracteres.		
Na	atribuição	de	valores	a	variáveis	do	8po	char	os	símbolos	devem	ser	
escritos	entre	aspas	simples	' '.	
Usa-se	o	código	de	formatação	%c	para	ler	ou	exibir	valores	do	8po	char.	
87	
int main()
{
 char c1, c2, c3;
 c1 = 'O';
 c2 = 'b';
 c3 = 'A';
 printf("%c %c %c\n", c1, c2, c3); // exibe O b A
 printf("%c%c%c\n", c2, c1, c3); //exibe bOA
 system("PAUSE");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Funções	na8vas	de	entrada	e	saída	
• getchar():	lê	um	caractere	até	que	a	tecla	<ENTER>	seja	pressionada.	
Se	mais	de	um	caractere	for	digitado,	apenas	o	primeiro	caractere	será	
considerado	e	o	restante	será	descartado.	
88	
#include <stdio.h>
#include <stdlib.h>
int main()
{
 char a;
 printf("Digite um caractere: "); 
 a = getchar(); // armazena a entrada até pressionar <ENTER>
 printf(”Caractere digitado: %c\n", a);
 system("PAUSE");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Funções	na8vas	de	entrada	e	saída	
• putchar():	Exibe	na	tela	o	caractere	passado	como	argumento,	a		
par8r	da	posição	atual	do	cursor.	
	
89	
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main()
{
 char a;
 printf("Digite uma letra minuscula: ");
 a = getchar();
 putchar( toupper(a) );
 putchar('\n')
 system("PAUSE");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Funções	na8vas	de	entrada	e	saída	
• getche():	Lê	um	caractere	do	teclado	sem	pressionar	<ENTER>	e	
mostra	o	que	foi	digitado.	
	
90	
#include <stdio.h>
#include <stdlib.h>
int main()
{
 char a;
 printf("Digite um caractere: ");
  a = getche();
  printf("\nO caractere digitado foi %c.\n", a);
 system("PAUSE");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Funções	na8vas	de	entrada	e	saída	
• getch():	Lê	um	caractere	do	teclado	sem	pressionar	<ENTER>	e	não	
mostra	o	que	foi	digitado.	
	
91	
#include <stdio.h>
#include <stdlib.h>
int main()
{
 char a;
 printf("Digite um caractere: ");
  a = getch();
  printf("\nO caractere digitado foi %c.\n", a);
 system("PAUSE");
 return(0);
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
A	função	puts()
	
• É	u8lizada	apenas	para	exibir	mensagens	na	tela.	
• A	mensagem	a	ser	exibida	deverá	ser	escrita	entre	aspas.	
• Após	a	exibição	da	mensagem,	a	função	puts()	muda	de	linha	
automa8camente.		
92	
int main()
{
 puts("Digite sua opcao:");
 puts("[1] Consultar");
 puts("[2] Incluir");
 puts("[3] Atualizar");
 puts("[4] Excluir");
 puts("[5] Encerrar");
 printf("-> ");
 ...
}
Conceitos	básicos	da	linguagem	C	PC-I	©	MAP’2016	
Funções	de	manipulação	de	caracteres	
char a;
• isalpha(a):	testa	se	o	caractere	é	uma	letra.	
• isdigit(a):	testa	se	o	caractere	é	um	algarismo.	
• isespace(a):	testa	se	é	o	caractere	espaço	' '.		
• islower(a):	testa	se	é	uma	letra	minúscula.		
• isupper(a):	testa	se	é	uma	letra	maiúscula.	
• tolower(a):	converte	o	caractere	para	minúscula.	
• toupper(a):	converte	o	caractere	para	maiúscula.	
	
Estas	funções	estão	definidas	na	biblioteca	ctype.h.	
	
93

Outros materiais