36
1 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

Embed Size (px)

Citation preview

Page 1: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

11

Revisão da Linguagem C Prof. Kariston Pereira

Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

Page 2: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 22

Bibliotecas Função main() Variáveis Operadores Funções I/O Estruturas de seleção e repetição

Índice

Page 3: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 33

“Esqueleto” Básico Programa C

Page 4: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 44

Bibliotecas

Page 5: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 55

Bibliotecas Sintaxe:

#include <biblioteca> Onde biblioteca é o nome da biblioteca que se deseja

incluir. A declaração deve acontecer no início do programa!

Bibliotecas comumente utilizadas: stdio.h – funções I/O conio.h – funções básicas interface stdlib.h – funções SO ctype.h – funções p/ manipulação de caracteres string.h – funções p/ manipulação de strings math.h – funções matemáticas

Page 6: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 66

Função main()

Page 7: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 77

Função main() Uma função é um bloco de construção ou

uma sub-rotina isolada em que ocorrem atividades do programa.

A função main() é a função principal de um programa.

Todos os programas, obrigatoriamente, devem possuir uma função main(); é nela que se inicia a execução do programa.

Page 8: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 88

Recebendo argumentos (parâmetros) Um programa pode receber informações, ditas

argumentos (parâmetros), quando executados.

Estes argumentos são enviados à função main(): int main(int argc, char *argv[])

argc contém a quantidade de argumentos e argv a lista de argumentos.

Observação: isto é opcional!

Page 9: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 99

Declaração Variáveis (1/2)

Page 10: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1010

Declaração Variáveis (2/2)

Sintaxe: <tipo de dado> <nome>; Exemplo: int numero;

Regras para definição de variáveis: O nome de uma variável deve iniciar com uma letra

ou com o caractere underline (_). O nome de uma variável não pode ser uma palavra

reservada. Atentar ao fato de que a linguagem C é case sensitive. Lembrar de sempre iniciar uma variável.

Page 11: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1111

Tipos de Dados Primitivos

Page 12: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1212

Variáveis Globais X Locais Globais: definidas fora de todas as funções do

programa (antes de main). São válidas em todo o programa. São alocadas quando o programa é iniciado, e

removidas somente ao término da execução do programa.

Locais: definidas no início de um bloco de código limitado por alguma estrutura de controle (ou função). São válidas somente no bloco em que foram definidas. São alocadas somente quando o bloco é executado, e

removidas assim que o bloco é finalizado.

Page 13: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1313

Operadores

Page 14: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1414

Operadores Aritméticos e de Atribuição + Soma (inteira e ponto flutuante) - Subtração ou Troca de sinal (inteira e ponto

flutuante) * Multiplicação (inteira e ponto flutuante) / Divisão (inteira e ponto flutuante) % Resto de divisão (de inteiros) ++ Incremento (inteiro e ponto flutuante) -- Decremento (inteiro e ponto flutuante)

Page 15: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1515

Operadores Relacionais > Maior do que >= Maior ou igual a < Menor do que <= Menor ou igual a == Igual a != Diferente de

Page 16: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1616

Operadores Lógicos && AND (E) || OR (OU) ! NOT (NÃO)

Page 17: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1717

Funções Saída de Dados

Page 18: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 1818

Funções Saída de Dados puts(): Apresenta apenas constantes. printf(): Apresenta constantes e conteúdo de

variáveis segundo “%” vinculado. Sintaxe:printf(<string de controle>, <lista de argumentos>);

É possível formatar a apresentação de uma variável na função printf().

Apresenta apenas duas casas após a vírgula:Exemplo: printf(“A média é %.2f”, media);

Page 19: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 19

Lista de CódigosCódigo Significado

%d inteiro%f float%c caracter%s string%% coloca na tela um %%

19

Page 20: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 2020

Funções para Entrada de Dados

Page 21: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 2121

Funções para Entrada de Dados scanf(): Lê qualquer tipo de variável segundo

“%” vinculado. Necessidade do operador “&” antes do nome da variável. Sintaxe:scanf(<string de controle>, <lista de argumentos>);

Os códigos usados na string de controle são os mesmos da função printf;

gets(): Lê apenas caracteres. getch() / getche(): Criam efeito de pause,

obrigando o usuário a informar um caractere para continuar o programa (só para Windows)

Page 22: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 2222

Comentários

Page 23: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 2323

Comentários Comentários são textos livres, não

interpretados, que tem por objetivo facilitar o entendimento de um código de programa. São explicações, lembretes ou dicas sobre uma instrução ou conjunto de instruções.

Em C, os comentários são identificados pelos caractéres // ou delimitados por /* */

Page 24: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 2424

Considerações Gerais Todas as instruções de um programa em C

devem ser finalizadas pelo caractere “;”

Exceção apenas para comandos onde haja a formação de um bloco { }

Os caracteres { } poderão ser suprimidos de dentro do bloco se existir apenas uma instrução ou estrutura de seleção/repetição.

Page 25: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 25

Comando de Seleção - Se O comando Se em pseudocódigo é

representado em C por: Sintase:

if (<condição>)<declaração_1>;

else<declaração_2>;

Se a declaração tiver mais de um comando, deve estar dentro de um bloco {}.

25

Page 26: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 26

Exemplo 1 – if-else

26

Page 27: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 2727

Exemplo 2 – if-else

Page 28: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 28

Comando de Seleção – Escolha (1/2)

O comando Escolha em pseudocódigo é representado em C por:switch(<variável>){

case <constante_1>:<declaração_1>; break;case <constante_2>:<declaração_2>;break;...default<declaração_default>;

}

28

Page 29: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 29

Comando de Seleção – Escolha (2/2)

Podemos falar uma analogia entre o switch e a estrutura if-else-if;

O switch não aceita expressões, apenas constantes como case;

O switch testa a variável e a declaração cujo case corresponda ao valor atual da variável;

A declaração default será executada apenas se a variável não for igual a nenhuma constante;

O comando break faz com que o switch seja interrompido assim que um dos case seja executado.

29

Page 30: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

30

Exemplo - Switch

30UDESC – Prof. Kariston Pereira

Page 31: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 31

Comando de Repetição -Enquanto O comando Enquanto é representado

em C por: Sintaxe:

while(<condição>)<declaração>;

O while é executado enquanto a condição for verdadeira;

31

Page 32: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 32

Exemplo - While

32

Page 33: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 33

Comando de Repetição – Repita ... até O comando repita-até é representado em

C por: Sintaxe:

do {

<declaração>;} while (<condição>);

O do-while é executado enquanto a condição for verdadeira;

O “;” é obrigatório no final da declaração.33

Page 34: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 34

Exemplo – do-while

34

Page 35: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 35

Comando de Repetição – Para ... faça

O comando para-faça é representado em C por: Sintaxe:

for (<inicialização>; <condição>; <incremento>)declaração;

<inicialização>: Inicia a variável contador <condição>: Testa a condição de parada do contador <incremento>: Incrementa ou decrementa automa-

ticamente o contador a cada iteração Exemplo:

for (cont = 1; cont < 100; cont++) {...}

35

Page 36: 11 Revisão da Linguagem C Prof. Kariston Pereira Adaptado de Material gentilmente fornecido pelo Prof. Rui Tramontin (DCC/UDESC)

UDESC – Prof. Kariston Pereira 36

Exemplo – For

36