Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Introduo a Linguagem C
Construes Bsicas
Programa em C
#include #include <stdio.h>
Palavras Reservadas
float celsius celsius ; E ainda float farenheit farenheit ; celsius = 30; expresses... farenheit = 9.0/5 *celsius + 32; printf (30 graus celsius = %f graus farenheit,farenheit); return 0;
Tpicos da Aula
Hoje aprenderemos a escrever um programa em C, para isto veremos
Caractersticas da linguagem Estrutura de um programa Conceito de funes Ciclo de construo de um programa em C Apresentao de um ambiente de programao Executando um programa Estruturas bsicas de uma linguagem de programao
Identificadores,Variveis,Tipos de dados, Atribuio
Linguagem C - Caractersticas
Linguagem de programao de finalidade geral criada por Dennis Ritchie em 1972
Criada para desenvolver o sistema operacional Unix Padronizada em 1989 pela ANSI Tornou-se muito popular
Linguagem C - Caractersticas
Combina o alto nvel com o baixo nvel, permitindo a manipulao direta de bits, bytes e endereos de memria Possui fluxos de controle e estruturas de dados presentes na maioria das linguagens imperativas
Agrupamento de comandos Tomadas de decises (if-else) Laos para permitir a repetio de comandos
Linguagem C - Caractersticas
Possui apenas 32 palavras-chaves (reservadas) Permite economia de expresso e gera cdigos reduzidos Possibilita alocao dinmica de memria Permite estruturar o software em mdulos, arquivos fontes, bibliotecas
Linguagem C - Crticas
D-se muita liberdade ao programador Programas ininteligveis, acesso direto memria No h verificao de tipos e nem de limites de arrays (veremos depois)
Simplifica o projeto do compilador C
Estrutura de um Programa
Em C, a construo fundamental a funo:
Um programa constitudo de uma ou mais funes
Estrutura de um Programa
Dentro de uma funo pode haver vrios tipos de instrues:
Declaraes, expresses, chamadas de outras funes, comandos, etc
Uma funo em C pode retornar algum valor, assim como acontece com funes matemticas
Inteiro, real, caractere, etc
Estrutura de um Programa em C
funo 1 funo 2
. . .
funo n
int main () { .
. .
}
11
Exemplo de um Programa em C
#include <stdio.h> int main() { printf(Ola Mundo!); }
12
13
int multiplicacao (int p1, int p2) { int produto; produto = p1 * p2; return produto; } Uma funo deve conter:
Uma assinatura
Um corpo
Corpo da funo
14
int multiplicacao (int p1, int p2) { int produto; produto = p1 * p2; return produto; Parnteses obrigatrios } Assinatura de uma funo deve informar:
Tipo de valor retornado (se for o caso) Nome Lista de parmetros formais (se houver)
15
Funes de Bibliotecas
A linguagem C oferece um conjunto de funes j definidas que so organizadas em bibliotecas
Programador pode utilizar (chamar) estas funes no programa Reduzem o tempo de desenvolvimento do programa
17
Funes de Bibliotecas
Informaes sobre as funes de bibliotecas so encontradas em vrios arquivos
header files ou arquivos com extenso .h
Para usar estas bibliotecas, o programa deve indicar os nomes dos arquivos que as contm
Estas bibliotecas so adicionadas ao programa usando a diretiva de pr-processamento # include
Por exemplo: # include < stdio.h > No possui ponto_e_vrgula ( ; ) stdio.h uma biblioteca que contm funes de entrada/sada, tal como a funo printf que permite mostrar alguma mensagem no monitor 18
int multiplicacao (int p1, int p2) { int produto; produto = p1 * p2; return produto; Chama a funo multiplicacao }
int {
main
( )
Argumentos da funo
19
Diretivas de Pr-Processamento
O pr-processador um programa que examina o programa fonte em C e executa certas modificaes com base em instrues chamadas de diretivas
Exemplos: include, define, etc
int multiplicacao (int p1, int p2) { int produto; produto = p1 * p2; return produto; }
int {
main
( )
Executando de um Programa em C
Escrever o programa em um arquivo texto (cdigo fonte)
Salvar o arquivo com a extenso .c
Construo de Programas em C
Editor Codigo, Palavras reservadas Programa fonte Programa Fonte Modificado
Edio
Programa Fonte
Prprocessador
Pr-processamento
Programa Fonte
Compilador
Programa Objeto
Compilao
Programas Objeto
Programa Executvel
Link-Edio
23
Ambiente de Programao
Para acelerar o desenvolvimento de programas, comum utilizar ambientes de programao ou IDEs (Integrated Development Environment)
Integra vrias ferramentas em um nico ambiente Editores de texto Compiladores Bibliotecas E muito mais ... CodeBlocks, DevC++, Visual Studio, Eclipse etc
24
Variveis
Programas manipulam dados (valores) e esses dados so armazenados em variveis Uma varivel uma posio na memria referenciada por um identificador (nome) Uma varivel deve ser declarada informando o tipo de dado que ela armazenar e o nome dela
tipo nome
int total;
Variveis
Uma declarao compilador: de varivel instrui o
a reservar um espao de memria suficiente para armazenar o tipo de dado declarado o nome ao qual iremos referenciar esta posio de memria
S aps a declarao da varivel, que esta pode ser referenciada (utilizada) Quando uma varivel referenciada no programa, o valor armazenado nela utilizado
26
Variveis
Onde se declara variveis?
No corpo de uma funo (varivel local) Recomenda-se que as declaraes de variveis sejam as primeiras instrues da funo Na lista de parmetros de funes Parmetros formais Fora das funes (varivel global)
27
Declarao de Variveis
#include <stdio.h>
int resultado; Declarao de varivel global Declarao de variveis nos parmetros formais int multiplicacao (int p1, int p2) { int produto; Declarao de varivel local produto = p1 * p2; return produto; }
int
28
Atribuio
Um comando de atribuio modifica o valor armazenado na varivel O operador de atribuio o sinal de =
int total; total = 55; Valor 65 sobrescreve o total = 65; valor armazenado antes Varivel total armazena valor 55
S se deve atribuir a uma varivel valores compatveis com o tipo declarado da varivel
29
Inicializao de Variveis
Uma varivel pode ser inicializada com o comando de atribuio na hora de sua declarao
Declara varivel total do tipo int
int total = 55; Inicializa total com valor 55
30
Constantes
Uma constante um identificador semelhante a uma varivel, exceto pelo fato de s poder armazenar o mesmo valor durante toda sua existncia Uma constante declarada usando a palavra reservada const Deve-se inicializar a constante no ato da sua declarao
const float PI = 3.1416; Esse comando gera um PI = 3.141618; erro de compilao
31
Constantes
So teis para dar um significado compreensvel a determinados valores
Exemplo : PI mais compreensvel que o valor 3,1416
mais
Explicitam formalmente que um determinado valor no pode ser alterado Evitam erros de outros programadores
32
Constantes
comum utilizar-se tambm a diretiva de prprocessamento define para definir constantes
#define PI 3.1416 int main() { float raio = 5; float area = PI*raio*raio; float comp = 2*PI*raio; return 0; } No pr-processamento, ocorre a substituio
int main() { float raio = 5; float area = 3.1416*raio*raio; float comp = 2*3.1416*raio; return 0; }
33
Tamanho
1 byte 1 byte
Representatividade
-128 a 127 0 a 255
short int
unsigned short int long int (ou int) em ambientes de 32 bits
2 bytes
2 bytes 4 bytes
-32768 a 32767
0 a 65535 -2147483648 a 2147483647
4 bytes
0 a 4294967295
35
Representatividade
3.4 X10-38 a 3.4 X1038 1.7 X 10-308 a 1.7X10308 3.4 X 10-4932 a 3.4X104932
36
37
Instruo equivalente
38
Identificadores
Identificadores so palavras que programador utiliza em programas Consiste de um ou mais caracteres. o
o primeiro caractere deve ser letra ou "_ demais so uma combinao de letras, nmeros e "_" Identificadores no podem comear com um dgito
Exemplo de identificadores vlidos: _a, a3_,bom_dia Exemplo de identificadores invlidos: 2a, a-b, a_ b
C case-sensitive
Os identificadores casa e CASA so diferentes
39
Identificadores
Identificadores podem ser:
Nomes que o programador escolheu
Exemplo: nome de uma varivel, funo, constante, etc
40
Identificadores em C
#include #include <stdio.h>
Palavras Reservadas
float celsius celsius ; E ainda float farenheit farenheit ; celsius = 30; expresses... farenheit = 9.0/5 *celsius + 32; printf (30 graus celsius = %f graus farenheit,farenheit); return 0;
Resumindo ...
Caractersticas da linguagem Estrutura de um programa Ciclo de construo de um programa em C
Estruturas bsicas de uma linguagem de programao
Identificadores,Variveis,Tipos de dados, Atribuio
Conceito de funes
42
Introduo Programao
Introduo a Linguagem C
Construes Bsicas
Adriano Augusto de Moraes Sarmento
http://www.cin.ufpe.br/~if669ec