• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Linguagem c parte 1
 

Linguagem c parte 1

on

  • 782 views

Linguagem C

Linguagem C

Statistics

Views

Total Views
782
Views on SlideShare
782
Embed Views
0

Actions

Likes
0
Downloads
33
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Linguagem c parte 1 Linguagem c parte 1 Presentation Transcript

    • Curso: Manutenção e Suporte em Informática Disciplina: Linguagem de Programação Professor: Mauro Jansen Linguagem C Introdução, Tipos, variáveis, expressões e estruturas de controle
    • Introdução à linguagem C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 2
    • Histórico Criada na década de 70 por Denis Ritchie (Bell Labs) Objetivo: ser uma linguagem mais fácil que o Assembler mas que permitisse grande controle sobre o hardware, para a programação do sistema Unix Influência das linguagens BCPL e B Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 3
    • Características Genérica: usada para a criação de programas para diversas áreas Ex: aplicativos, sistemas operacionais, automação industrial, engenharia, física, química, etc. Linguagem “mista”: tem características de linguagem de alto e baixo nível Induz a uma boa estruturação de programas Influenciou várias outras linguagens Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 4
    • Características É “case sensitive”: minúsculas e maiúsculas fazem diferença Variável “nome” é diferente de “Nome” É compilada (gera arq.executável) Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 5
    • O pré-processador Parte do compilador C que trata alguns textos (comandos) do código-fonte antes da tradução em código executável Esses comandos são as diretivas do préprocessador. Ex: #define #include Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 6
    • Diretivas do pré-processador #define: define um identificador e uma sequência de caracteres que será substituída pelo identificador no códigofonte. Ex: Em todo o código fonte, PI #define PI 3.1415 será substituído por 3.1415 #include: inclui um cabeçalho ou outro arquivo-fonte no ponto onde está a Inclui o arquivo “stdio.h” diretiva. Ex: (definições padrões para #include <stdio.h> Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 entrada e saída de dados) no programa-fonte 7
    • Estrutura básica de um programa em C #Include <biblioteca1.h> #Include <biblioteca2.h> ... Void main() { <Declaração de variáveis> ... <comandos> ... } Inclusão de arquivo de bibliotecas de comandos Função main(): é obrigatória. É a primeira função chamada quando o programa é iniciado Delimitadores de inicio e fim de bloco de comandos Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 8
    • Comentários Comentários são úteis para documentar o programa, e devem ser sempre usados Existe dois modos: Posição livre: usa-se o comando // Várias linhas: usa-se o comando /* */ Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 9
    • Palavras reservadas São os comandos e funções próprias do vocabulário da linguagem. Ex.: auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, struct, switch, typedef, union, unsigned, void, volatile, while, etc. Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 10
    • Exemplo de programa em C /* Programa: calcular a média entre duas notas Autor...: prof.Mauro */ #Include <stdio.h> Void main() { float nota1,nota2; // declaração de variáveis printf(“Digite a primeira nota: “); scanf(“%f”,&nota1); printf(“Digite a segunda nota: “); scanf(“%f”,&nota2) printf(“A média é: %f”,(nota1+nota2)/2); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 11
    • Comando de saída: printf Sintaxe: printf(<string de controle>,<lista de argumentos>) Mensagem (string) com códigos de controle embutidos na mesma Códigos de controle: Valores que serão substituídos na mensagem, no lugar de cada código de controle iniciado por % Código Formato Código Formato %d Inteiro com sinal %X Hexadecimal %f Float (número real) %o Octal %c Caractere %E Notação científica %s String %p Ponteiro %u Inteiro sem sinal n salta linha Exemplos: printf(“O valor de PI é %f”,3.1415); printf(“Meu nome é %s e eu tenho %d anosn”,”João”,18); Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 12
    • Comando de entrada: scanf Sintaxe: scanf(<string de controle>,<lista de argumentos>) códigos de controle que identificarão o tipo de dado a ser digitado pelo usuário Variável(is) que receberá(ão) os dados, precedida(s) pelo sinal & Exemplo: #Include <stdio.h> Void main() { char c; float n; printf(“Digite uma letra: “); scanf(“%c”,&c); printf(“Digite um valor real: “); scanf(“%f”,&n); printf(“Letra: %c , número: %f”,c,f); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 13
    • Tipos de dados, constantes, variáveis, operadores e expressões em C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 14
    • Tipos de dados A linguagem C tem os tipos básicos Char (caractere), Int (inteiro), float (real), double (real) E modificadores de tipo, que vêm antes do tipo e podem ser combinados: Unsigned: sem sinal Signed: com sinal (padrão) Short: menor precisão (padrão) Long: maior precisão Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 15
    • Tipos de dados Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 16
    • Constantes e variáveis Constante: porção de dados que não muda seu valor durante a execução do programa. Exemplos: 23, ‘X’, “Linguagem C”, 1.234 Constantes não precisam de nome, mas podemos nomeá-las usando a diretiva #define. Ex: #define PI 3.1415 Variável: porções de dados que podem mudar seu valor durante a execução do programa Uma variável precisa ter um nome e tipo e precisa ser declarada e inicializada Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 17
    • Constantes de barra invertida São códigos que iniciam com uma barra invertida que representam uma constante tipo caractere dentro de strings, como no comando printf. Veja alguns: Código Significado Muito usado no printf para saltar para próxima linha n Nova linha (new line) ” Aspas ’ Apóstrofo 0 Nulo Barra invertida t Tabulação horizontal a Sinal sonoro (beep) N Constante octal (N é o valor da constante) xN Constante hexadecimal (N é o valor da constante) Prof. Mauro Jansen
    • Regras para nomes de variáveis Começar com letra ou sublinhado (_) Caracteres seguintes podem ser letras, números ou sublinhado Não pode ser palavra reservada ou função Maiúsculas e minúsculas fazem diferença Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 19
    • Declaração e inicialização de variáveis A declaração é feita da seguinte forma: <tipo de dado> <lista de variáveis>; Obs: Na linguagem C não há uma seção específica para declaração de variáveis Exemplos: char ch,letra; long cont; Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 20
    • Declaração e inicialização de variáveis Inicialização: podemos atribuir valor no momento da declaração ou depois, usando o operador de atribuição “=“ : Char ch=‘D’; Int num=123; num=10; Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 21
    • Operadores aritméticos Usados em operações matemáticas Operador Ação + Soma - Subtração ou troca de sinal * Multiplicação / Divisão % Resto da divisão ++ Incrementa valor de uma variável -- Decrementa valor de uma variável += Atribuição com soma -= Atribuição com subtração Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 22
    • Operadores relacionais Usados em comparações entre valores Operador > >= < Significado Maior Maior ou igual Menor <= Menor ou igual == Igual != Diferente Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 23
    • Operadores lógicos Usados em expressões lógicas compostas Operador Significado && Operador E. Retorna verdadeiro se ambos valores forem verdadeiros || Operador OU. Retorna verdadeiro se pelo menos um for verdadeiro ! Operador NÃO. Retorna o contrário do valor informado. Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 24
    • Exemplo com operadores e expressões #Include <stdio.h> Void main() { int a,b,c,d; a=10; b=22; c=30; d=40; printf(“a+b = %d”,a+b); // soma a e b printf(“a-b = %d”,a-b); // subtrai b de a printf(“b%%a = %d”,b%a); // resto da divisão de b por a a++; // incrementa a (mesmo que a=a+1) b--; // decrementa b (mesmo que b=b-1) c+=a; // soma a em c (mesmo que c=c+a) d-=b; // soma e em d (mesmo que d=d+b) printf(“a=%d, b=%d, c=%d, d=%d”,a,b,c,d); } OBS: No próximo bloco veremos exemplos com operadores relacionais Linguagem de Programação e lógicos Prof. Mauro Jansen Linguagem C – parte 1 25
    • Estruturas de controle e fluxo em C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 26
    • Estrutura condicional if Equivalente em pseudocódigo: se-senão-fimse Sintaxe: If(<condição>) <bloco de comandos> [else <bloco de comandos 2>] Se a condição for verdadeira, executa bloco de comandos 1, senão executa bloco de comandos 2 OBS: Um bloco de comando composto por mais de um comando deve iniciar com { e terminar com } O bloco do else é Linguagem de Programação opcional Prof. Mauro Jansen Linguagem C – parte 1 27
    • Estrutura condicional if (se) Exemplo /* Programa: calcular a média e mostrar situação */ #Include <stdio.h> Void main() { float nota1,nota2,media; // declaração de variáveis printf(“Digite a primeira nota: “); scanf(“%f”,&nota1); printf(“Digite a segunda nota: “); scanf(“%f”,&nota2); media=(nota1+nota2)/2; printf(“A média é: %f n”,media); if(media>=7) printf(“Você está aprovado.n”); else printf(“Você está de recuperação.n”); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 28
    • Estrutura condicional switch-case Equivalente pseudocódigo: escolha Sintaxe: Switch (<variável>) { case <constante1>: <declaração1>; break; case <constante2>: <declaração2>; break; case <constante_n>: <declaraçãoN>; break; default: <declaração default> } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 29
    • Estrutura condicional switch-case Exemplo #Include <stdio.h> void main() { float n1,n2; char op; printf(“Digite um número: “); scanf(“%f”,&n1); printf(“Digite a operação (+,-,* ou /): “); scanf(“%c”,&op); printf(“Digite outro número: “); scanf(“%f”,&n2); switch (op) { case ‘+’: printf(“Soma=%f”,n1+n2); break; case ‘-’: printf(“Soma=%f”,n1-n2); break; case ‘*’: printf(“Soma=%f”,n1*n2); break; case ‘/’: printf(“Soma=%f”,n1/n2); break; default: printf(“Você digitou uma operação inválida!”) } } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 30
    • Operador ternário Operador que permite simplificar tomadas de decisão simples Sintaxe: <expressão1> ? <expressão2> : <expressão3> Exemplo: Equivale a: max=(a>b) ? a : b; If (a>b) max=a; Else max=b; Prof. Mauro Jansen
    • Estrutura de repetição for Equivalente pseudocódigo: para - fimpara É a repetição contada. Sintaxe: for(<inicialização>;<condição>;<incremento>) <bloco de comandos> Inicialização: expressão de inicialização. Ex: n=0 Condição: expressão condição para continuar a repetição. Ex: n<=10 Incremento: expressão de incremento. Ex: n++ Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 32
    • Estrutura de repetição for exemplo: Programa para contar de 1 a 100: #include <stdio.h> { int n; for(n=1 ; n<=100 ; n++) { printf("Contando: %dn",n); } } Prof. Mauro Jansen
    • Estrutura de repetição while Equivalente pseudocódigo: enquanto–faça-fimenquanto Sintaxe: while(<condição>) <bloco de comandos> Inicia e repete o bloco de comandos enquanto a condição for verdadeira É a repetição com teste no início Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 34
    • Estrutura de repetição while Exemplo: Soma quantidade indeterminada de números #include <stdio.h> int main() { float n=1,soma=0; while (n!=0) { printf("Digite um numero (zero=fim):"); scanf("%f",&n); soma+=n; } printf("A soma dos numeros digitados é: %f",soma); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 35
    • Estrutura de repetição do..while Equivalente pseudocódigo: repita - até Sintaxe: do <bloco de comandos> While(<condição>); Executa o bloco de comando e repete enquanto a condição for verdadeira É a repetição com teste no final Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 36
    • Estrutura de repetição do..while Exemplo: Mesmo anterior, agora com do..while: #include <stdio.h> { float n=0,soma=0; do { printf("Digite um numero (zero=fim):"); scanf("%f",&n); soma+=n; } while (n!=0); printf("A soma dos numeros digitados é: %fn",soma); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 37
    • Comandos que afetam as estruturas de repetição Comando break: interrompe a repetição, continuando após o bloco de comandos a ser repetido Comando continue: interrompe apenas a repetição atual, voltando ao início do laço Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 38
    • Atividades no DevC++ PRÁTICA, muita PRÁTICA: Testar os exemplos dos slides Testar os exemplos da apostila Resolver exercícios da apostila Resolver as atividades da semana Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 39