Você está na página 1de 30

Introduo C

ALGORITMOS E PROGRAMAO
ELC1022

Prof. Victoria Souto


E-mail : victoria.souto@gmail.com
Linguagens de Programao
Vocabulrio e um conjunto de regras gramaticais usadas para escrever
programas de computador.

Programas instruem o computador a realizar determinadas tarefas.

Cada linguagem possui um conjunto nico de palavras-chaves e uma


sintaxe especfica para organizar as instrues dos programas.
Linguagens de Programao
REVISO DE TERMOS:

Cdigo-Fonte O texto de um programa que um usurio pode ler normalmente


interpretado como o programa. O cdigo-fonte a entrada para o compilador C.

Cdigo-Objeto Traduo do cdigo-fonte de um programa em cdigo de mquina


que o computador pode ler e executar diretamente. O cdigo-objeto a entrada para o
linkeditor.

Linkeditor Um programa que une funes compiladas separadamente em um


programa. Ele combina as funes da biblioteca C padro com o cdigo que voc
escreveu.A sada do linkeditor um programa executvel.

Biblioteca O arquivo contendo as funes padro que seu programa pode usar.
Essas funes incluem as operaes de E/S como tambm outras rotinas teis.
Linguagens de Programao
TIPOS DE LINGUAGENS DE PROGRAMAO:

Linguagem de Mquina a nica linguagem entendida pelo


processador e de difcil entendimento para o usurio;

Linguagem Simblica uma linguagem de nvel intermedirio, acima


da linguagem de mquina (Assembly), atualmente utilizada quando a
velocidade ou o tamanho do cdigo so importantes.

Linguagem de Alto Nvel Os programas escritos nesta linguagem


no so interpretados diretamente pelo processador, estes programas so
convertidos para a linguagem de baixo nvel atravs de um programa
denominado COMPILADOR ou de um INTERPRETADOR.
Linguagem de Programao C
CARACTERSTICAS:

considerada um linguagem de mdio nvel;


Linguagem estruturada;
Apresenta grande portabilidade entre hardware e sistemas operacionais;
Case Sensitive (Difere maisculas de minsculas);
Cdigo compacto e fcil;
A linguagem C compilada.
Linguagem de Programao C
REGRAS PARA PROGRAMAR EM C:
TODO programa tem uma funo principal main();
TODA linha de instruo em C terminada com ;
Blocos de instrues so colocados entre {};
Antes de utilizar qualquer funo padro de C necessrio adicionar no
cabealho do programa a biblioteca que contm a descrio da funo.
(#include <nome_biblioteca.h>)

Fazendo o seu primeiro programa:


#include <stdio.h>
1. Adiciona a biblioteca stdio.h.
main() 2. Inicia programa.
{ 3. Imprime na sada Meu
printf ( Meu Primeiro Programa); Primeiro Programa.
} 4. Finaliza programa.
Linguagem de Programao C
ENTRADA DE DADOS FORMATADA:

scanf(expresso de controle, argumentos);

SADA DE DADOS FORMATADA:

printf(expresso de controle, lista de argumentos);


Exemplo:
#include <stdio.h>

void main()
{
int n;
printf(Digite um numero);
scanf(%d,&n);
printf (Voce digitou o numero: %d, n);
}
Especificadores de Formato de scanf()

Cdigo Significado
%c L um nico caractere
%d L um inteiro decimal
%i L um inteiro decimal
%e L um nmero em ponto flutuante
%f L um nmero em ponto flutuante
%g L um nmero em ponto flutuante
%o L um nmero octal
%s L uma string
%x L um nmero hexadecimal
%p L um ponteiro
%n Recebe um valor inteiro ao nmero de caracteres lido at ento
%u L um inteiro sem sinal
%[] Busca por um conjunto de caracteres
Comandos de Formato de printf()
Cdigo Significado
%c Caractere
%d Inteiros decimais com sinal
%i Inteiros decimais com sinal
%e Notao cientfica (e minsculo)
%E Notao cientfica (E maisculo)
%f Ponto flutuante decimal
%g Usa %e ou %f, o que for mais curto
%G Usa %E ou %F, o que for mais curto
%o Octal sem sinal
%s String de caracteres
%u Inteiros decimais sem sinal
%x Hexadecimal sem sinal (letras minsculas)
%X Hexadecimal sem sinal (letras maisculas)
%p Apresenta um ponteiro
%n O argumento associado um ponteiro para inteiro no qual o nmero de
caracteres escritos at esse ponto colocado
%% Escreve o smbolo %
Cdigos de Barra Invertida
Cdigo Significado
\b Retrocesso (BS)
\f Alimentao de formulrio (FF)
\n Nova Linha (LF)
\r Retorno de Carro (CR)
\t Tabulao Horizontal (HT)
\ Aspas Duplas
\ Aspas Simples
\0 Nulo
\\ Barra Invertida
\v Tabulao Vertical
\a Alerta (beep)
PRIMEIRO
PROGRAMA
Exemplo: Faa um algoritmo que leia dois nmeros de ponto flutuante
do teclado e mostre na tela a soma desses nmeros.
Exemplo: Faa um algoritmo que entre com dois nomes e idades,
mostre na tela utilizando tabulao.
Expresses em C
ALGORITMOS E PROGRAMAO
ELC1022

Prof. Victoria Souto


E-mail : victoria.souto@gmail.com
Tipos de Dados
H cinco tipos bsicos de dados em C: Caractere, inteiro, ponto
flutuante, ponto flutuante de preciso dupla e sem valor (char, int,
float, double e void).

Os outros tipos de dados em C so baseados nestes tipos bsicos.

MODIFICADORES DE ACESSO:
signed, unsigned, long e short.
S podem ser aplicados aos tipos bsicos caractere e inteiro.
long float = double
TODOS OS TIPOS DE DADOS DEFINIDOS NO PADRO ANSI
Tipo Tamanho Aproximado em bits Faixa Mnima
char 8 -127 a 127
unsigned char 8 0 a 255
signed char 8 -127 a 127
int 16 -32.767 a 32.767
unsigned int 16 0 a 65.535
signed int 16 O mesmo que int
short int 16 O mesmo que int
unsigned short int 16 0 a 65.535
signed short int 16 O mesmo que short int
long int 32 -2.147.483.647 a 2.147.483.647
signed long int 32 O mesmo que long int
unsigned long int 32 0 a 4.294.967.295
float 32 Seis dgitos de preciso
double 64 Dez dgitos de preciso
long double 80 Dez dgitos de preciso
Identificadores e Variveis

IDENTIFICADORES
Nomes de variveis, funes e outros objetos definidos pelo usurio.
O primeiro caractere deve ser uma letra, no pode haver espaos e
sim _.
Em C, letras maisculas e minsculas so tratadas diferentemente.

VARIVEIS
Uma varivel uma posio nomeada de memria, que usada para
guardar um valor que pode ser modificado pelo programa.
Declarao:
int i, j, k;
float a;
tipo lista_de_variveis;
unsigned int beta;
Identificadores e Variveis

ONDE AS VARIVEIS SO DECLARADAS?


Dentro de funes (VARIVEIS LOCAIS);
Na definio dos parmetros de funes (PARMETROS FORMAIS);
Fora de todas as funes (VARIVEIS GLOBAIS).

Variveis Locais:
Variveis que so declaradas dentro de uma funo.
Variveis locais existem apenas enquanto o bloco de cdigo em que
foram declaradas est sendo executado.

VANTAGEM: A principal vantagem em declarar uma varivel local dentro


de um bloco condicional que a memria para ela s ser alocada se
necessrio.
Identificadores e Variveis

ONDE AS VARIVEIS SO DECLARADAS?


Dentro de funes (VARIVEIS LOCAIS);
Na definio dos parmetros de funes (PARMETROS FORMAIS);
Fora de todas as funes (VARIVEIS GLOBAIS).

Variveis Locais:
Exemplos:
void func1 (void) void func2 (void)
{ {
int x; int x;
x = 10; x = -199;
} }
Identificadores e Variveis

ONDE AS VARIVEIS SO DECLARADAS?


Dentro de funes (VARIVEIS LOCAIS);
Na definio dos parmetros de funes (PARMETROS FORMAIS);
Fora de todas as funes (VARIVEIS GLOBAIS).

Parmetros Formais:
Se a funo usa argumentos, ela deve declarar variveis que recebero
os valores dos argumentos.
Voc deve ter certeza de que os parmetros formais que esto
declarados so do mesmo tipo dos argumentos que voc utiliza para
chamar a funo.
Identificadores e Variveis

ONDE AS VARIVEIS SO DECLARADAS?


Dentro de funes (VARIVEIS LOCAIS);
Na definio dos parmetros de funes (PARMETROS FORMAIS);
Fora de todas as funes (VARIVEIS GLOBAIS).

Parmetros Formais:
Exemplo:
void func1 (char *s, char c)
{
/*Corpo da Funo*/
}
Identificadores e Variveis

ONDE AS VARIVEIS SO DECLARADAS?


Dentro de funes (VARIVEIS LOCAIS);
Na definio dos parmetros de funes (PARMETROS FORMAIS);
Fora de todas as funes (VARIVEIS GLOBAIS).

Variveis Globais:
As variveis globais so reconhecidas pelo programa inteiro e podem ser
usadas por qualquer pedao de cdigo. Alm disso, elas guardam seus
valores durante toda a execuo do programa.
Sua declarao feita fora de qualquer funo.
Identificadores e Variveis

ONDE AS VARIVEIS SO DECLARADAS?


Dentro de funes (VARIVEIS LOCAIS);
Na definio dos parmetros de funes (PARMETROS FORMAIS);
Fora de todas as funes (VARIVEIS GLOBAIS).

Variveis Globais:
Exemplo:
#include <stdio.h>

int count; /* count global */

void main(void)
{
...
}
Exemplo: Calcular a mdia do peso de uma famlia de 5 pessoas.
Exemplo: Para vrios tributos, a base de clculo o salrio mnimo. Elabore
um algoritmo que leia o valor do salrio mnimo e o valor do salrio de uma
pessoa. Calcular e imprimir quantos salrios mnimos essa pessoa ganha.
Operadores
OPERADOR DE ATRIBUIO:

nome_da_varivel = expresso;

OPERADORES ARITMTICOS:

Operador Ao
- Subtrao, tambm menos unrios
+ Adio
* Multiplicao
/ Diviso
% Mdulo da Diviso (Resto)
-- Decremento
++ Incremento
Operadores
OPERADORES RELACIONAIS E LGICOS:

Operadores Relacionais Operadores Lgicos


Operador Ao Operador Ao
> Maior que && AND
>= Maior que ou igual || OR
< Menor que ! NOT
<= Menor que ou igual
== Igual
!= Diferente
Operadores
OPERADORES BIT A BIT:

Operador Ao
& AND
! OR
^ OR exclusivo (XOR)
~ Complemento de um
>> Deslocamento esquerda
<< Deslocamento Direita
Operadores
OPERADOR EM TEMPO DE COMPILAO sizeof:

O operador sizeof um operador em tempo de compilao unrio que


retorna o tamanho, em bytes, da varivel ou especificador de tipo, em
parnteses, que ele precede.

float f;

printf (%f, sizeof (f) );


printf(%d, sizeof (int) );
Exerccios
1. Identifique quais os tipos dos valores listados a seguir:

a) F
b) V
c) FALSO
d) 5.84
e) A*R*&
f) Amarelo
g) 2008
h) 04
i) abril

Você também pode gostar