Академический Документы
Профессиональный Документы
Культура Документы
Contedo
Introduo a programao
Linguagem de programao
Compilador
Algoritmos x programa
Introduo a linguagem C
Histrico
Variveis
Constantes
Comandos de E/S
Linguagem de Programao
um mtodo padronizado para expressar instrues
para um computador.
um conjunto de regras sistemticas e semnticas
utilizadas para definir um programa de computador.
Permite que um programa especifique:
Sobre quais dados um computador vai atuar,
Como estes dados sero armazenados ou transmitidos,
Quais aes devem ser tomadas.
Linguagem de Programao
Cdigo fonte
Conjunto de palavras e regras expressando um algoritmo.
Compilador
Traduz o cdigo fonte de uma linguagem (C) em a
linguagem de mquina.
Tempo de compilao
Tempo necessrio para realizar a converso do programa fonte
em programa objeto.
Programa
fonte
Compilador
Dados
de sada
Mquina
Programa
objeto
Dados de
entrada
O que so programas?
Representao, em alguma linguagem, de um
algoritmo
Uma sequncia ordenada e finita de passos
organizados para resolver um problema
Um mesmo algoritmo vrios programas
Experincia do programador, limitaes das linguagens.
Linguagem C
C uma linguagem de programao
Propsito geral
Estruturada
Procedural
Padronizada
Histrico
Foi criada em 1972
Dennis Ritchie, no AT&T Bell Labs
Desenvolver o sistema operacional UNIX (originalmente em
Assembly)
Superar limitaes da linguagem B (1970)
Tornou-se uma das linguagens de programao mais utilizadas
Influenciou o desenvolvimento de muitas outras linguagens
Exemplo, as linguagens C++ e Java
C++ adiciona conceitos do paradigma orientado a objetos
Java, a mais recente, foi criada por volta de 1995
10
Exemplo
Algoritmo
1) Ler um valor e armazena-lo na varivel A
2) Ler um valor e armazena-lo na varivel B
3) Efetuar a adio das variveis A e B, e atribuir o resultado na
varivel X
4) Apresentar o valor da varivel X aps a operao de adio
dos valores fornecidos.
11
Exemplo
Programa na linguagem C
#include<stdio.h>
int main()
{
int x;
int a;
int b;
scanf("%d", &a);
scanf("%d", &b);
x = a + b;
printf("%d\n",x);
return 0;
}
12
Programa em C
Anatomia de um programa em C
[incluso de bibliotecas]
[declarao de dados globais]
[declarao dos prottipos de funes]
void main (void)
{
[corpo do programa principal]
}
[implementao das funes do programa]
13
Exemplo de programa
#include <stdio.h>
Chamada ao pr-processador
Incluir um cabealho informaes
Uso de <> indica que arquivo est no lugar
padro
int main()
{
printf(Hello world!\n);
return 0;
}
14
Pontos principais
Programa comea a execuo no main
Palavras chaves em minsculo
Declaraes finalizadas com ;
Texto entre aspas duplas
C sensvel a caixa
Minsculas so diferentes de maisculas
A varivel valor diferente da varivel Valor
15
Variveis
C oferece quatro tipos bsicos de dados
Inteiro (e.g. 4, -8, 12)
Ponto flutuante (e.g., 0.12, 0.75)
Preciso dupla (e.g. 312E+8, 2E-8)
Caractere (e.g., A, b, $, 3)
16
Exemplo de uso
#include <stdio.h>
17
Mscaras de formatao
Smbolo % indica o incio da mscara
Cada mscara substituda por um valor presento no printf
:
printf(A soma de 500 e 15 eh %d\n, soma)
:
Algumas mscaras
%d Inteiro decimal
%c Caractere
%s
Cadeia de caracteres
%f
Ponto flutuante
%e Preciso dupla
18
No so vlidos
Valorsoma$
Uso de $
Marcador de sada
Uso de espao
3o_tempo
printf
19
20
Comentrios
Um programa deve ser documentado
Boa prtica
Facilidade de manuteno
/* Este programa calcula a soma de dois
nmeros inteiros
*/
#include <stdio.h>
int main(void)
{
int soma; // Varivel que guarda a soma
soma = 500 + 15; // Soma dos valores
printf(A soma de 500 e 15 eh %d\n",
soma);
return 0;
}
Exemplo1.c
21
soma = 10;
// Atribuir um inteiro
dinheiro = 2.21; // Atribuir um float
letra = A;
// Atribuir um caracter
pi = 31415E-4; // Eis o pi!
printf(Aqui esta um inteiro (%d) e um , soma);
printf(nmero de ponto flutuante (%f)\n, dinheiro);
printf(Eis a letra %c e o valor de pi: %e\n, letra,
pi);
return 0;
}
22
Tamanho
1 byte
4 bytes
4 bytes
8 bytes
0 byte
Tipo
char
int
float
double
void
Significado
caractere
inteiro
ponto flutuante
ponto flutuante de dupla preciso
ausncia de tipo
23
Declarao de Variveis
tipo_de_dado lista_de_variveis;
int idade, valor;
24
Escopo de Variveis
Varivel local
Quando s existe dentro
do bloco no qual ela foi
criada
Varivel global
Quando utilizada, estar
disponvel ao programa
inteiro
int main ()
{
int valor;
}
#include <stdio.h>
int numero;
int main ()
{
numero = 20;
putch (numero);
}
25
Constantes
Caractere (char): d, & - envolvidos por aspas
simples;
Inteiro (int): 20, 17 - nmeros sem componente
fracionrio
Real (float,double): 23.56 - nmero com componente
fracionrio
Strings (char vet[20]): Universidade Federal" caracteres envolvidos por aspas duplas
26
Exemplo de constantes
#include <stdio.h>
const float pi = 3.1415;
int main ()
{
float area, raio = 3;
area = pi * raio * raio;
printf(A area de um circulo de raio = %5.2f eh %5.2f, raio,
area);
getch();
}
27
Comandos de E/S
printf ("srie_de_controle", lista_de_argumentos)
Responsvel pela sada formatada de dados na tela,
onde
"srie_de_controle"
uma srie de caracteres e comandos de formatao de dados
que devem ser impressos
lista_de_argumentos
variveis e constantes que devem ser trocados pelos formatos
correspondentes na srie de controle
28
Comandos de E/S
#include <stdio.h>
const float pi = 3.1415;
int main ()
{
float area, raio = 3;
area = pi * raio * raio;
printf(\nCalculo -> area = pi*raio*raio);
Srie de controle
printf(\nRaio do circulo = %5.2f, raio);
Srie de controle
}
Lista de argumentos
29
Comandos de E/S
scanf("srie_de_controle", lista_de_endereos_dos_argumentos)
Responsvel pela leitura (entrada) formatada de dados na tela
Os formatos usados na srie de controle da funo scanf so
semelhantes aos formatos usados pela funo printf
30
Comandos de E/S
#include <stdio.h>
int main ()
{
char nome [20];
int anonascimento, idadeatual;
printf ("\nQual e o seu nome: ");
gets(nome);
printf("Em que ano voce nasceu: ");
scanf("%d", &anonascimento);
idadeatual = 2016 anonascimento;
printf("%s, voce tem %d anos", nome, idadeatual);
getch();
}
31
Comandos de E/S
gets()
Efetua a leitura de um string de caracteres digitado por
32
Comandos de E/S
putch()
Escreve um caractere a partir da posio corrente do
cursor na tela
Comandos de E/S
33
#include <stdio.h>
int main ()
{
char op;
puts(MENU);
puts(1.Cadastra usuario);
puts(2.Consulta usuario);
puts(3.Remove usuario);
puts(4.Sair);
puts(Opcao:);
op = getch();
printf(\n\nOpcao digitada: %c, op);
getch();
}
34
Exerccio
Escreva um programa que obtenha os seguintes dados
de uma pessoa
Nome (string)
Telefone (string)
Ano nascimento (int)
Salrio (float)
35
Bibliografia
MIZRAHI, Victorine Viviane. Treinamento em linguagem C. So
Paulo: MacGraw Hill, 1990, v.1, 241p.
KERNIGHAN, B. W.; RITCHIE, D. M. C: a linguagem de programao,
padro ANSI. Rio de Janeiro: Campus, 1995. 289p.
CHILDT, H.. C Completo e Total. So Paulo: Makron Books, c1991.