Académique Documents
Professionnel Documents
Culture Documents
A Origem da Linguagem C
2
Linguagem BCPL
Basic
Combined Programming Language; Desenvolvida em 1967; Foi refinada para uma linguagem chamada B
n Ken
Em
1972, Dennis Richie (Bell Labs) melhorou a linguagem B para formar a linguagem C tradicional
n C
A Origem da Linguagem C
3
Criada por Denis Ritchie, em 1972, para uso em um computador DEC PDP-11 em Unix C++ uma extenso da linguagem C O sistema Unix escrito em C e C++
A Origem da Linguagem C
4
Foram desenvolvidos inmeros compiladores C, para os diferentes tipos de computadores; A rpida expanso de C levou a um grande numero de variaes da linguagem original
Todas
A Origem da Linguagem C
5
Em 1983 foi criado um comit tcnico do American National Standards Institute (ANSI) Objetivo: propor uma definio da linguagem C que fosse no ambgua e independente da arquitetura do computador Surge ento o C ANSI
A Origem da Linguagem C
6
bytes e endereos de memria (baixo nvel); Tem tipos de dados (alto nvel);
Um tipo de dado define um conjunto de valores que uma varivel pode armazenar e o conjunto de operaes que podem ser executadas nessa varivel.
Criando um Programa em C
7
Passos:
1. 2.
Edio; Compilao;
a. b. c.
3.
Execuo
Criando um Programa em C
8
1.
Edio
Usando
n DEV
Este
teste.c
Criando um Programa em C
9
1. Edio: exemplo
#include <stdio.h> #include <stdlib.h> void main(void) { printf ("Alo mundo!"); }
Criando um Programa em C
11
2. Compilao:
No
sentido estrito, produz um cdigo (conjunto de instrues) em linguagem de mquina a partir do cdigo fonte:
n Arquivo
No
sentido amplo, tambm liga este cdigo com outros cdigos utilizados por ele (link-edio), gerando um programa executvel (runnable)
n Arquivo
Criando um Programa em C
12
2. Compilao:
Em
alguns ambientes integrados de desenvolvimento (IDEs), basta abrir o arquivo fonte e selecionar a opo de compilao. o arquivo executvel gerado, incluindo as funes utilizadas da linguagem.
Automaticamente
Criando um Programa em C
13
3. Execuo
Duplo
clique no cone do programa executvel Ou digitar o nome do programa na linha de comando do Sistema Operacional
n >
teste.exe
Ou
Diretiva #include permite incluir uma biblioteca Bibliotecas contm funes pr-definidas, utilizadas nos programas Exemplos
#include <stdio.h>
Delimitao de Instrues
15
caractere serve, portanto, para separar duas instrues distintas dentro do programa. O retorno de carro () no delimitador!
nOu
seja, no adianta mudar de linha apenas com o enter para dizer que se quer iniciar outra instruo.
O ambiente Dev-C++
16
O Dev-C++ um ambiente de desenvolvimento de programas em C e C++ (editor, compilador, bibliotecas...) Pode ser baixado de http://www.bloodshed.net/ devcpp.html
Usando o Dev-C++
17
Inicie o Dev-C++ pelo cone ou pelo menu Crie um novo arquivo, com o comando Arquivo, Novo, Arquivo Fonte Edite o programa da pgina seguinte
Usando o Dev-C++
19
Salve o programa com o nome hello_world.c em um diretrio com o seu nome Compile e execute o programa pressionando a tecla F9 Se houver algum erro de sintaxe, aparecer uma ou mais mensagens no rodap da janela. Neste caso, corrija o programa e repita.
Dicas!
21
Termine todos os comandos com ; Quando ocorrer um erro de compilao, d um duplo clique sobre a mensagem de erro para destacar o comando errado no programa Verifique tambm a linha anterior, que pode ser a responsvel pelo erro, especialmente se faltar o ; Use comentrios, iniciados por // ou entre /* */
Identificadores
22
Um identificador (de constante, varivel, funo, etc) formado por: Uma unica letra; Uma letra seguida de outras letras e/ou dgitos; No so permitidos espaos em branco e caracteres especiais Exceo: underline( _ ) ex: a_1); C ANSI permite identificadores de qualquer tamanho, porm o nmero de caracteres significativos depende do compilador; Identificadores com Masculas e Minsculas so diferentes!
Palavras Reservadas
23
Declaraes
24
Declaram as variveis e seus tipos Os nomes das variveis devem conter apenas letras, dgitos e o smbolo _ e iniciar com letra ou _ Os principais tipos so: int, float, double e char Exemplos
int n; int quantidade_valores; float x, y, somaValores; char sexo; C diferencia char nome[40];
Comando de atribuio
25
Exemplos
x = 4; // l-se: x recebe 4 y = x + 2; // l-se: y recebe (x mais 2) y = y + 4; // l-se: y recebe (y mais 4) valor = 2.5; sexo = 'F' // constantes devem estar entre aspas simples (apstrofe)
Entrada de Dados
27
Funo scanf
scanf ("formatos", &var1, &var2,...) Exemplos: int i, j; float x; char c; scanf("%d", &i); scanf("%d %f", &j, &x); scanf("%c", &c); scanf("%s", &nome);
%d %f %lf %c %s
Algoritmo
#include <stdio.h> #include <stdlib.h> main() { float n1, n2, n3, media; scanf ("%f",&n1); scanf ("%f",&n2); scanf ("%f",&n3); scanf ("%f %f %f",&n1, &n2, &n3); system("PAUSE"); }
Operadores Matemticos
29
CUIDADO!!!!
30
OBS: o operador / (diviso) ter um resultado inteiro se os dois operandos forem inteiros. Para um resultado real, um dos dois operandos deve ser real (ou os dois)
Exemplo: int X,Y; float Z,U,T; X=2; Y=3; U=3; Z=X/Y; // Z ter o valor zero T=X/U; // T ter o valor 0.666667
#include <stdio.h> #include <stdlib.h> main() { float n1, n2, n3, media; ler n1, n2, n3 Media(n1+n2+n3)/3 } scanf ("%f %f %f",&n1, &n2, &n3); media=(n1+n2+n3)/3; system("PAUSE");
Sada de Dados
32
Funo printf
printf ("formatos", var1, var2,...) Exemplos: int i, j; float x; char c; printf("%d", i); printf("%d %f", j, x); printf("%c", c);
%d %f %lf %c %s
#include <stdio.h> #include <stdlib.h> main() { int i, j; float x; i = 1; j = 2; x = 3.5; printf("%d", i); printf(" %d %f", j, x); } system("PAUSE");
#include <stdio.h> #include <stdlib.h> main() { // definicao de variaveis int i, j; float x; //entrada de dados scanf("%d", &i); scanf("%d %f", &j, &x); // exibicao de dados printf("I= %d\n", i); printf("J= %d\nX= %f\n", j, x); system("PAUSE"); }
35
Operadores de Atribuio
36
Funes Matemticas
37
Funo ceil cos exp fabs floor log log10 pow sin sqrt tan
Exemplo ceil(x) cos(x) exp(x) fabs(x) floor(x) log(x) log10(x) pow(x, y) sin(x) sqrt(x) tan(x)
Comentrio Arredonda o nmero real para cima; ceil(3.2) 4 Cosseno de x (x em radianos) e elevado potencia x Valor absoluto de x Arredonda o nmero deal para baixo; floor(3.2) 3 Logaritmo natural de x Logaritmo decimal de x Calcula x elevado potncia y Seno de x Raiz quadrada de x Tangente de x
#include <math.h>
Operadores Relacionais
38
Operador
== != <= >= < >
Exemplo
x == y x != y x <= y x >= y x < y x > y
Comentrio
O contedo de x igual ao de y O contedo de x diferente do de y
O contedo de x menor ou igual ao de y
Operadores Lgicos
39
&& (E lgico): retorna verdadeiro se ambos os operandos so verdadeiros e falso nos demais casos. Exemplo: if( a>2 && b<3). || (OU lgico): retorna verdadeiro se um ou ambos os operandos so verdadeiros e falso se ambos so falsos. Exemplo: if( a>1 || b<2). ! (NO lgico): usada com apenas um operando. Retorna verdadeiro se o operando falso e vice-versa. Exemplo: if( !var ).
Operadores Lgicos
40
Tabela OU V ou V V V ou F V F ou V V F ou F F
Tabela NO No V F No V F
Tipos Bsicos
41
Exerccio 1
42
Construa um programa que calcule a quantidade de latas de tinta necessrias e o custo para pintar a rea externa de tanques cilndricos de combustvel, quando so fornecidos a altura e o raio desse cilindro. Sabendo que:
a lata de tinta custa R$10,00 cada lata contm 8 litros cada litro de tinta pinta 5 metros quadrados. rea do cilindro = 2 x rea da base + permetro da base x altura
n n
Exerccio 1: O cilindro!
43