Buscar

Aula 2 - Introdução à 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 41 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 41 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 41 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

Introdução à Linguagem 
C
Neste tópico abordaremos a estrutura 
básica de um programa em C, os tipos 
de dados escalares, as funções de 
entrada e saída e o operadores 
aritméticos
 2
Linguagem de 
programação
 Uma linguagem qualquer é um conjunto de 
palavras, números e operadores e regras de 
sintaxe que devem ser obedecidas para 
exprimir uma determinada ação
 Código fonte: programa escrito na 
linguagem original e que precisa ser 
traduzido para poder ser executado
 Código objeto ou executável: resultado da 
tradução quando usamos um compilador
 3
Compilador vs. 
interpretador
Tradução Interpretada
Compilada
Opera só com código FONTE
A partir do FONTE gera o OBJETO
Linguagem de 
programação
Compilador
Interpretador
Linguagem 
de Máquina
Execução de todo 
o programa
Executa a 
instrução e volta
CÓDIGO
FONTE
TRADUTOR CÓDIGO
OBJETO
EXECUÇÃO
 4
Introdução à linguagem 
C
 A linguagem C surgiu em 1971, 
projetada por Denis Ritchie
 Utilizada para aplicações científicas 
e desenvolvimento de software 
básico
 Influenciou várias linguagens de 
programação atuais
 C++, Java, PHP, C#
 5
Uma linguagem compilada
 A partir do código fonte gera-se um 
código objeto ou executável
 O código executável do C é 
conhecido por ser muito eficiente 
(execução rápida)
 6
Estrutura básica de um 
programa em C
 Um programa em C consiste em 
uma ou várias funções
 Forma geral das funções em C:
tipo nome­da­função ([lista­de­parâmetros])
{
  comandos
}
Tipo do valor 
de retorno da 
função
Informações 
passadas à função 
(opcional)
Os blocos de 
instruções são 
delimitados por {}
 7
A estrutura básica de 
um programa em C
 A função main()
 Todo programa em C deve possuir pelo menos 
uma função chamada main
 Se um programa for constituído de uma única 
função esta será a main()
 Esta função é a primeira a ser executada, é o 
programa principal
int main() {
    ...
    return 0;
}
Por convenção a função 
main() devolve 0 para 
indicar uma execução 
bem sucedida
 8
Estrutura de um 
programa simples
/* Estrutura básica de um programa
   em C */
#include <stdio.h>
int main() 
{
   // declaração de variáveis
   // entrada de dados
   // processamento dos dados de entrada
   // impressão da saída
   return 0;
}
Um bloco de 
comentários 
aparece entre /* e */
Uma linha de 
comentários 
aparece após //
 9
Primeiro programa em C
/* ola.c */
#include <stdio.h>
int main()
{
   printf("Olá, mundo!\n");
   return 0;
}
Os comandos em 
C terminam com ;
Uma exceção são 
os comandos que 
iniciam um bloco 
de instruções
O código fonte de um 
programa em C de ser 
gravado em um arquivo 
com extensão .c
 10
Compilando o programa
 Para compilar o programa utilizando o 
compilador GNU gcc no Linux abra um 
terminal (Ctrl+Alt+t) e digite na pasta 
aonde você salvou o código fonte em C:
 gcc ­o executável fonte
 Por exemplo:
 gcc ­o ola ola.c
Gera um código 
executável com o 
nome ola
 11
Executando o programa
 Para executar o programa no 
terminal faça:
 ./executável
 Por exemplo:
 ./ola
 12
IDE's gratuitas para 
desenvolvimento em C
 DevC++: Windows (descontinuado)
 Code::Blocks: Windows, Linux e Mac
 CodeLite: Windows, Linux e Mac
 Eclipse: Windows, Linux e Mac
 NetBeans: Windows, Linux e Mac
 13
Tipos de dados em C
 Todo programa manipula dados
 Esses dados são armazenados na 
memória principal do computador
 O programa faz referência a esses 
dados através de variáveis
 Toda variável em C tem um tipo, 
que determina que tipo dado e faixa 
de valores ela pode armazenar 
 14
Tipos de dados em C
 Existem 7 tipos de dados básicos em C:
Tipo Tamanho Faixa
_Bool 8 bits 0 ou 1
char 8 bits -128 a 127
int 32 bits -2.147.483.648 a 2.147.483.647
long long 64 bits -9.223.372.036.854.775.808 a 
9.223.372.036.854.775.807
float 32 bits 3,4x10-38 a 3,4x1038
double 64 bits 1,7x10-308 a 1,7x10308
void 0 sem valor
A faixa de valores pode variar de acordo com o 
compilador. Definidas em limits.h e float.h
 15
Tipos de dados em C
 Modificadores de tipo (short, long, 
unsigned)
Tipo Tamanho Faixa
unsigned char 8 bits 0 a 255
unsigned int 32 bits 0 a 4.294.967.295
short int 16 bits -32.768 a 32.767
unsigned long int 32 bits 0 a 4.294.967.295
unsigned short int 16 bits 0 a 65.535
long int 32 bits -2.147.483.648 a 2.147.483.647
unsigned long long 64 bits 0 a 18.446.744.073.709.551.615
long double 96 bits 3,4 x 10-4932 a 1,1 x 10+4932
 16
Nomes de variáveis
 Devem começar sempre por uma letra ou 
o caractere de sublinhar (_), os demais 
podem ser letras, números ou caracteres 
de sublinhar
 Não pode conter espaços e acentuação
 Uma variável não pode ter o mesmo 
nome de uma palavra-chave em C
 Letras minúsculas e maiúsculas são 
diferentes:
 Peso, PESO, peso, PeSo
 17
Palavras-chaves em C
 auto
 break
 case
 char
 const
 continue
 default
 do
 double
 else
 restricted
 return
 short
 signed
 sizeof
 static
 struct
 switch
 typedef
 union
 enum
 extern
 float
 for
 goto
 if
 inline
 int
 long
 register
 unsigned
 void
 volatile
 while
 _Bool
 _Complex
 _Imaginary
 18
Exercício
 Quais dos nomes baixo são nomes 
válidos de variáveis em C abaixo?
( ) _kbytes
( ) 2nota
( ) hot-dog
( ) não
( ) taxa de juros
( ) R$
( ) int
 19
Declarando variáveis
 Sintaxe:
tipo lista­de­variáveis;
 Exemplos:
int peso, idade;
float altura, salario;
char opcao;
 20
Operador de atribuição
 Para atribuir um valor a uma 
variável, utiliza-se o operador =
 Por exemplo:
int a, b, c;
a
b
c
Memória 
principal
?
?
?
As variáveis em C 
não são 
inicializadas
 21
Operador de atribuição
 Para atribuir um valor a uma 
variável, utiliza-se o operador =
 Por exemplo:
int a, b, c;
a = 10;
b = c = 0;
a
b
c
Memória 
principal
10
0
0É possível atribuir 
o mesmo valor a 
várias variáveis na 
mesma instrução
 22
Inicialização de variáveis
 É possível combinar uma declaração de 
variável com o operador de atribuição
#include <stdio.h>
int main(){
  int evento = 5; 
  char corrida = 'C';
  float tempo = 27.25;
  ...
  return 0;
}
O separador de casas 
decimais em C é o ponto 
(.) e não a vírgula (,)
Caracteres são 
representados entre 
apóstrofos (')
 23
A função printf()
 Uma das funções de saída usadas em C
 Não é um comando e sim uma função 
definida no arquivo de cabeçalho stdio.h
 Para usar a printf() em um programa 
em C é preciso incluir este arquivo
 Nós incluímos um arquivo de cabeçalho 
em um programa em C através da 
diretiva #include:
#include <nome­do­arquivo>
 24
A função printf()
 Entre os parênteses da função printf() 
são colocadas as informações que 
desejamos que sejam exibidas no vídeo
 A sintaxe da função printf() é a 
seguinte:
printf("expressão­de­controle", 
        lista­de­argumentos);
A lista de 
argumentos 
é opcional
 25
A função printf()
 Códigos de C para controle de fluxo do 
texto e caracteres especiais
Códigos Especiais Significado
\a Alerta. Soa o beep do sistema.
\b Retrocesso. Retrocede um espaço..
\n Nova linha. Posiciona o curso no início da nova linha.
\r Retorno de cursor (CR). Posiciona o cursor no início da 
linha atual; não avança para a próxima linha.
\t Tabulação. Move o cursor para a próxima de tabulação.
\v Tabulação vertical.
\" Aspas. Imprime um caractere de aspas duplas.
\\ Barra.Imprime um caractere de barra invertida.
%% Imprime um único %
 26
A função printf()
 Códigos para impressão formatada
Código Tipo de Dados Formato
%c char ou int Caractere
%d int ou char Inteiro decimal
%i int ou char Inteiro
%Ld ou %lld long long  Decimal
%e float ou double Notação científica
%f float Ponto flutuante
%lf double Ponto flutuante
%o int ou char Octal
%s char[] Cadeia de caracteres
%x int ou char Hexadecimal
 27
A função printf()
 Códigos para tipos com 
modificadores
Código Tipo de Dados Formato
%Lf long double Ponto 
flutuante
%lu unsigned 
long int
Decimal
%ld long int Decimal
%u unsigned 
int
Decimal
%hd short int Decimal
 28
A função printf()
 Tamanhos de campos na impressão
 É possível estabelecer o tamanho mínimo 
para a impressão de um campo
printf("Os alunos são %6d.\n", 350);
printf("%10.3f\n", 3456.78);
 Os campos podem ser alinhados à 
esquerda ou a direita
printf("%10.2f %10.2f %10.2f\n", 
       8.0, 15.3, 584.13);
printf("%­10.2f %­10.2f %­10.2f\n", 
       8.0, 15.3, 584.13);
 29
A função printf()
 Complementando com zeros a esquerda
#include <stdio.h>
int main()
{
   printf("%04d\n", 21);
   printf("%06d\n", 21);
   printf("%06.2f\n", 21.0);
   return 0;
}
 30
A função scanf()
 Uma das funções de entrada da 
linguagem C
 Permite ler dados formatados do 
teclado
 Sintaxe:
scanf("expressão­de­controle", 
      lista­de­argumentos);
 31
A função scanf()
 Expressão de controle
 Indica como devem ser interpretados 
os dados de entrada
 Utiliza os mesmos códigos de 
impressão formatada da printf()
 32
A função scanf()
 Lista de argumentos
 Lista dos endereços de memória das 
variáveis que irão receber os dados de 
entrada
 Os nomes das variáveis são precedidas 
por &
 & é um operador que obtém o 
endereço de memória de uma variável
 33
Exemplo do uso da 
scanf()
#include <stdio.h>
int main() {
   float peso; // pedo em Kg
   int altura; // altura em cm
   printf("Informe seu peso (Kg) e altura (cm): ");
   scanf("%f %d", &peso, &altura);
   printf("Você pesa %.2f Kg e mede %d cm\n", 
          peso, altura);
   return 0;
}
 34
Expressões aritméticas
 Operadores aritméticos
Símbolo Operação
+ Soma
- Subtração
* Multiplicação
/ Divisão
% Módulo (resto da 
divisão inteira)
 35
O operador de divisão: /
 Se os operandos forem inteiros, o 
resultado é o quociente inteiro da 
divisão
 Se pelo menos um dos operandos 
for float ou double, o resultado é 
um float ou double
 36
O operador de divisão: /
#include <stdio.h>
int main() {
   printf("%d / %d = %d\n", 5, 2, 5 / 2);
   // 5 / 2 = 2
   printf("%d / %.1f = %.1f\n", 5, 2., 
          5 / 2.);
   // 5 / 2.0 = 2.5 
   return 0;
}
 37
Expressões aritméticas
 Prioridade dos operadores 
aritméticos
 A ordem de prioridade pode ser 
quebrada com o uso dos parênteses
Prioridade Operadores
1o *,/ e %
2o + e -
 38
Expressões aritméticas
 Prioridade dos operadores
 y = 30 ­ 12 / 4 + 2 * 3;  
 y = 33
 y = (30 ­ 12) / (4 + 2) * 3
 y = 9
 39
Funções da biblioteca 
matemática (math.h)
 Função Descrição Exemplo
 sqrt(x) Raiz quadrada de x sqrt(900.0) é 30.0
 exp(x) Função exponencial ex exp(1.0) é 2.718282
 log(x) Logaritmo natural de x log(2.718282) é 1.0
 log10(x) Logaritmo na base 10 de x log10(1.0) é 0.0
 ceil(x) Arredonda x para o menor 
inteiro maior que x
ceil(9.2) é 10.0
ceil(9.8) é 10.0
 floor(x) Arredonda x para o maior 
inteiro menor que x
floor(9.2) é 9.0
floor(9.8) é 9.0
 pow(x,y) x elevado à potência y (xy) pow(2,5) é 32.0
 40
Constantes da biblioteca 
matemática (math.h)
 Além de funções matemáticas, a 
math.h possui também a definição 
de algumas constantes, tais como π 
(M_PI) e o número de Euler e (M_E)
 41
Referências
 PRATA, Stephen. C Primer Plus. 5. 
ed., Sams, 2005.
 SCHILDT, Herbert. C Completo e 
Total. 3. ed., Makron Books, 1997.
 DEITEL, H.M.;DEITEL, P.J.. C - Como 
Programar. 6. ed., Pearson, 2011.
 MIZRAHI, V.V.. Treinamento em 
Linguagem C. 2. ed., Pearson, 2008.
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32
	Slide 33
	Slide 34
	Slide 35
	Slide 36
	Slide 37
	Slide 38
	Slide 39
	Slide 40
	Slide 41

Outros materiais