Introduo a Linguagem de Programao C Prof Miguela

  • Slides: 25
Download presentation
Introdução a Linguagem de Programação C Prof. Miguela Fernandes T. L. P. 11º ano

Introdução a Linguagem de Programação C Prof. Miguela Fernandes T. L. P. 11º ano

Breve História do C Ø Em 1973 Dennis Ritchie reescreveu o Sistema Operativo UNIX

Breve História do C Ø Em 1973 Dennis Ritchie reescreveu o Sistema Operativo UNIX numa linguagem de alto nível (Ling. C). Ø Surgem diversas implementações utilizando C, porém os códigos gerados eram incompatíveis. Ø ANSI (American National Standard Institute), em 1983 standartizou a linguagem C. MF. 2

Características da Linguagem C Ø Portabilidade – Entre máquinas e sistemas operativos; Ø Rapidez

Características da Linguagem C Ø Portabilidade – Entre máquinas e sistemas operativos; Ø Rapidez – Consegue obter performances semelhantes às obtidas pelo Assembly, usando instruções de alto nível; Popular – Internacionalmente conhecida e utilizada; Simples – Sintaxe simples e o nº de palavras reservadas, tipo de dados básico, operadores é diminuto; Modular – Permite o desenvolvimento modular de aplicações, possibilidade de funcionar em módulos; Alto nível – Linguagem de 3ª geração (Pascal, cobol, etc. ) Ø Ø MF. 3

Características da Linguagem C Ø Ø Ø Bibliotecas muito poderosas – pcas palavras reservadas,

Características da Linguagem C Ø Ø Ø Bibliotecas muito poderosas – pcas palavras reservadas, como tal, tem limitações então recorremos as Bibliotecas; Macros – permitem aumentar a velocidade de execução sem aumentar a complexidade do código; Evolução – C para C++ C é uma linguagem compilada – lê todo o código fonte e gera o código objecto (ling. máquina) uma única vez, enquanto que, as Linguagens Interpretadas: lêem o código fonte, traduzem e executam o programa cada vez que for executado. Case sensitive – sensível a maiúsculas MF. 4

C comparado a outras linguagens Ø Devemos entender Alto Nível como sendo a capacidade

C comparado a outras linguagens Ø Devemos entender Alto Nível como sendo a capacidade da linguagem em compreender instruções escritas em “dialetos” próximos do inglês (Ada e Pascal, por exemplo) e o Baixo Nível para aquelas linguagens que se aproximam do Assembly, que é a linguagem própria da máquina, compostas por instruções binárias e outras incompreensíveis para o ser humano não treinado para este propósito. Infelizmente, quanto mais clara uma linguagem for para o humano (simplicidade >) mais obscura o será para a máquina (velocidade <). MF. 5

C comparado a outras linguagens Nível Baixo Nível Alto Nível Médio Velocidade Assembler Clareza

C comparado a outras linguagens Nível Baixo Nível Alto Nível Médio Velocidade Assembler Clareza C Basic COBOL MF. Pascal Ada Modula -2 6

Aplicações escritas em C Ø Sistema Operativo: UNIX Ø Folhas de cálculo: 1, 2,

Aplicações escritas em C Ø Sistema Operativo: UNIX Ø Folhas de cálculo: 1, 2, 3 e Excel (inicial/) Ø Base de Dados: d. Base III, IV e Access Ø Aplicações Gráficas: Efeitos Especiais de filmes como Star Trek e Star War. MF. 7

Linguagem C / Visual. G programa “Alegria” Inicio escreva(‘Flamengo – São Paulo 2 -

Linguagem C / Visual. G programa “Alegria” Inicio escreva(‘Flamengo – São Paulo 2 - 1') fimalgoritmo #include <stdio. h> void main () { printf(“Flamengo – São Paulo 2 - 1 n”); getch (); } MF. 8

Linguagem C / Portugol - Visual. G #include <stdio. h> #include <conio. h> void

Linguagem C / Portugol - Visual. G #include <stdio. h> #include <conio. h> void main() { float b 1, b 2, al, ar; printf(“Quais as medidas bases? n”); scanf(“%f%f”, &b 1, &b 2); printf(“Qual a altura? ”); scanf(“%f”, &al); ar= (b 1+b 2) / 2*al; printf(“A área é %f”, ar); getchar(); } Programa “Terreno” Var b 1, b 2, al, ar: real Inicio escreva(‘Quais as medidas bases? ’) leia(b 1, b 2) escreva(‘Qual a altura? ’) leia(al) ar: = (b 1+b 2) / 2*al escreval(‘A área é ’, ar) fimalgoritmo MF. 9

Palavras reservadas Ø São palavras que têm um significado especial para a linguagem. auto,

Palavras reservadas Ø São palavras que têm um significado especial para a linguagem. auto, break, case, if, for, while, begin, end, continue, return, const, . . Ø C entende tais palavras apenas em letras minúsculas MF. 10

Bibliotecas Ø Conjunto de funções que permitem realizar tarefas específicas. Ø Livraria padrão C

Bibliotecas Ø Conjunto de funções que permitem realizar tarefas específicas. Ø Livraria padrão C - ANSI - funções básicas. Ø As primeiras linhas do programa indicam as bibliotecas utilizadas #include “minha_biblioteca. h” ou #include <minha_biblioteca. h> MF. 11

Estrutura de um programa C Programa C • Directivas ao Pré-Processador - Includes -

Estrutura de um programa C Programa C • Directivas ao Pré-Processador - Includes - Macros • Declarações Globais - Funções - Variáveis • Definição das Funções main () { /* begin */ } /* end */ MF. 12

Estrutura de um programa C /* Primeiro Programa em C */ comentários #include <stdio.

Estrutura de um programa C /* Primeiro Programa em C */ comentários #include <stdio. h> /*biblioteca de E/S */ main() /*função principal – inicio do programa*/ { /*marca início da função*/ printf(“Meu primeiro programa em Cn”); /*escreve no monitor e muda de linha*/ } /*marca o fim da função*/ MF. 13

Do código fonte à execução de um programa Fonte C headers do sistema headers

Do código fonte à execução de um programa Fonte C headers do sistema headers do utilizador Pré-processador Compilador Ficheiro objecto do utilizador Linkagem Ficheiro Objecto MF. Bibliotecas do sistema Executável 14

Ciclo de desenvolvimento de um programa MF. 15

Ciclo de desenvolvimento de um programa MF. 15

O Carácter Especial  n r t v b “ ’ \ ? a

O Carácter Especial n r t v b “ ’ \ ? a ou 7 %% nova linha “enter” tabulação horizontal (tab) tabulação vertical retrocesso aspas plica barra Ponto de interrogação bell carácter % MF. 16

Exercícios 1 - O que fazem os seguintes programas: a) #include <stdio. h> main()

Exercícios 1 - O que fazem os seguintes programas: a) #include <stdio. h> main() { printf(“a”Só sei que nada sei!”n”); getch(); } b) #include <stdio. h> main() { printf(“tt****Menu****n”); printf(“nt. Inserir? n”); printf(“7t. Listar? n”); printf(“nt%%Sair%%? n”); getch(); } MF. 17

Variável Ø Variável: “objecto” que pode assumir diversos valores; Ø Espaço de memória de

Variável Ø Variável: “objecto” que pode assumir diversos valores; Ø Espaço de memória de um certo tipo de dado associado a um nome para referenciar seu conteúdo; main ( ) { int idade; idade = 30; printf (“ A idade é : %d”, idade); getchar(); } MF. 18

Nomes de Variáveis Ø quantos caracteres quiser (32); Ø comece com letras ou underscore:

Nomes de Variáveis Ø quantos caracteres quiser (32); Ø comece com letras ou underscore: Seguidos de letras, números ou sublinhados Ø C é sensível ao caso: teste Ø <> Teste <> Te. St. E não podemos definir um identificador com o mesmo nome que uma palavra chave auto static extern int long if while do. . . MF. 19

Declaração de Variáveis Ø Instrução para reservar uma quantidade de memória para um certo

Declaração de Variáveis Ø Instrução para reservar uma quantidade de memória para um certo tipo de dado, indicando o nome pelo qual a área será referenciada >> tipo nome-da-variável; ou >> tipo nome 1, nome 2, . . . , nomen EX: char nome; int idade, num; MF. 20

Tipos Básicos de Dados Ø determinar um conjunto de valores e as possíveis operações

Tipos Básicos de Dados Ø determinar um conjunto de valores e as possíveis operações realizadas sobre os mesmos ; Ø informa a quantidade de memória (bytes); tipo char int float double bytes escala 1 2 4 8 -128 a 127 -32. 768 a 32. 767 3. 4 e-38 a 3. 4 e+38 1. 7 e-308 a 1. 7 e+308 MF. 21

Diferentes tipos de inteiros Long ou Long int Unsigned Char Unsigned int (4 bytes)

Diferentes tipos de inteiros Long ou Long int Unsigned Char Unsigned int (4 bytes) (0 a 255) (0 a 65. 535) obs: int tem sempre o tamanho da palavra da máquina MF. 22

Tipo de dados Ø Ø Ø int : números inteiros double : double-precision floating-point,

Tipo de dados Ø Ø Ø int : números inteiros double : double-precision floating-point, números reais Declaração de variáveis: § int n = 0; § double Ø total = 0. 5; Nota: Usar sempre nomes descritivos para as variáveis. § double escudos = 0. 0; § double es = 0. 0; Em vez de: MF. 23

Atribuição de valores a variáveis Ø Ø Nome_da_variável = expressão; Na criação da variável:

Atribuição de valores a variáveis Ø Ø Nome_da_variável = expressão; Na criação da variável: § double total = 117. 5; § double iva = 19. 0; 100. 5 total 19 iva total = total + iva; 119. 5 total 19 iva MF. 24

Programa Exemplo – Tipos de Dados e Variáveis #include <stdio. h> main( ) {

Programa Exemplo – Tipos de Dados e Variáveis #include <stdio. h> main( ) { int soma=10; float money=2. 21; char letra= ´A´; double pi=2. 016; printf (“valor da soma = %d n”, soma); printf (“Valor de Money = %fn”, money); printf(“Valor de Letra = %cn”, letra); printf(“Valor de Pi = %en”, pi); getch(); } MF. 25