A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

LINGUAGEM C Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo.

Apresentações semelhantes


Apresentação em tema: "LINGUAGEM C Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo."— Transcrição da apresentação:

1 LINGUAGEM C Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo

2 TÓPICOS 1. Introdução à Linguagem C 2. Operadores e Expressões
3. Estruturas de Controle 4. Entrada e Saída 5. Matrizes e strings 6. Funções 7. Ponteiros 8. Estruturas e Uniões 9. Arquivos Texto 10. Arquivos Binários

3 3. Estruturas de controle
Os comandos de controle de fluxo são utilizados para definir o fluxo de execução do programa e podem ser agrupados em comandos de laço e de decisão Veremos então: Comandos de decisão If e if – else switch Comandos de laço for while do-while goto

4 O que são Os comandos de Controle de Fluxo são utilizados para definir o fluxo de execução do programa Podem ser agrupados nos comandos if, switch, while, for, do-while e goto IF Sintaxe: if (condição) comando; else comando; Apenas um dos comandos, o associado ao if ou o associado ao else será executado

5 printf (“Adivinhe o numero!”); scanf (“%d”,&adivinha);
Programa com if - número mágico main() { int magico,adivinha; randomize(); magico = random (100); printf (“Adivinhe o numero!”); scanf (“%d”,&adivinha); if (adivinha == magico) printf (“Ok, voce acertou!”); else printf (“Voce errou!!”); }

6 If aninhado: if objeto de um else ou de outro if
if (x) if (x) { if (y) printf (“ola!”); if (y) printf (“ola”); else printf (“oi!”); } else printf (“oi”!); Escada if-else-if if (condição) comando; else if (condição) else if (condição) ...

7 printf (“Ok, voce acertou!\n”); printf (“%d e o numero magico\n”); }
Programa modificação de número mágico if (adivinha == magico) { printf (“Ok, voce acertou!\n”); printf (“%d e o numero magico\n”); } else if (adivinha > magico) printf (“valor alto!\n”); else printf (“valor baixo!\n”);

8 printf (“digite dois numeros: “); scanf (“%d%d”,&a,&b);
Expressões Condicionais: em C o fato de não se utilizar nas condições do If apenas operadores lógicos ou de atribuiçao pode se resultar em ganho Programa divisão do primeiro pelo segundo número main() { int a, b; printf (“digite dois numeros: “); scanf (“%d%d”,&a,&b); if (b) printf (“%d\n”,a/b); else printf (“não divido por zero\n”); }

9 Note que: int num; if (num != 0)… if (num == 0)…
for (i = 0; string[i] != ‘\0’; i++) EQUIVALE A if (num)… if (!num)… for (i = 0; string[i]; i++)

10 SWITCH - substitui a escada if-else-if
O computador testa uma variável sucessivamente contra uma lista de valores. Sintaxe: switch (variável) { case constante1 : sequência de comandos break; case constante2: ... default: } O switch só testa constantes! Não pode haver 2 constantes case com valores iguais no mesmo switch!

11 Programa switch de menu
...char ch; printf (“1. Verificar erros \n“); printf (“2. Corrigir erros \n“); printf (“3. Exibir erros \n“); printf (“4. Outra opção \n“); ch = getchar(); switch (ch) { case ‘1’: verficar(); break; case ‘2’: corrigir(); case ‘3’: exibir(); default: printf(“nenhuma opção escolhida”); }

12 Programa de saída int t; for (t=0;t<10;t++) switch (t) { case 1:
printf (“Agora”); break; case 2: printf (“é”); case 3: case 4: printf (“hora “); printf (“ de ir embora! \n”); case 5: case 6: printf (“vamos... “); case 7: case 8: case 9: printf (“-”); };

13 Programa de switch aninhado
switch (x) { case 1: switch (y) { case 0: printf(“erro na divisão”); break; processa (x,y); } case 2: ... Obs.: Loops - permitem que o computador repita um conjunto de instruções até que alcance uma certa condição

14 Programa exemplo simples
FOR - faz o incremento um número determinado de vezes e de acordo com determinadas condições. Sintaxe: for (inicialização; condição; incremento) comando Programa exemplo simples main() { int x; for (x=1;x<=100;x++) printf (“%d “,x); }

15 Programa exemplo de decremento
main() { int x; for (x=100;x>0;x--) printf (“%s “,x); } Programa exemplo de atribuição main() { int x; for (x=0;x<=100;x=x+5) printf (“%d “,x); }

16 Cuidado com a condição falsa !!!
x=10; for (y=10;y!=x;++y) printf (“%d”,y); printf (“%d”,y); Programa variação com duas variáveis de controle main() { int x,y; for (x=0,y=0;x+y<100;++x,y++) printf (“%d “,x+y); }

17 Programa com condições como expressões válidas em c
main() { int i, j, resposta; char feito = ‘ ‘; for (i=1;i<100 && feito != ‘N’;i++) { for (j=1;j<10;j++) { printf (“quanto e %d + %d? “,i,j); scanf (“%d”,&resposta); if (resposta != i+j) printf (“Errado\n”); else printf (“Certo \n”); } printf(“mais? “); feito = getche();

18 Variação de expressões válidas em c em qualquer lugar do for
main() { int t; for (prompt();t=readnum();prompt()) sqrnum(t); } prompt() printf (“digite um inteiro: “); readnum() scanf(“%d”,&t); return t; sqrnum(num) int num; printf(“%d\n”,num*num);

19 For sem todas as expressões
for (x=0;x!=123;) Loop infinito for (;;) printf (“este loop rodará para sempre\n); Saindo de um Loop for (;;) { ch = getche(); if (ch == ‘A’) break; } printf (“voce digitou um A”); Loop sem corpo (retardo) for (t=0;t < ALGUM_VALOR;t++);

20 WHILE - enquanto uma condição ocorre repete. Sintaxe:
while (condição) comando; Exemplo simples espera_por_char() { char ch; ch = ‘\0’; while (ch != ‘A’) ch = getche(); }

21 Condições separadas-1 variável como expressão condicional
funcao1() { int trab; trab = 1; while (trab) { trab = process1(); if (trab) trab = process2(); trab = process3(); }

22 Exemplo simples main() { char str[255];
printf(“digite uma sequencia: “); gets (str); center (strlen(str)); printf(str); } center(len) int len; len = (80 - len)/2; while (len>0) { printf(“ “); len--;

23 DO-WHILE - repete algo enquanto uma condição ocorre. Sintaxe:
comando; } while (condição); Exemplo simples main() { int num; do { scanf (“%d”,&num); } while (num < 100); O do-while é muito usado para rotina seleção de menu!!!

24 Programa - número mágico outra versão
main() { int magico,adivinha, tentativas=0; randomize(); magico = random (100); do { printf(“adivinhe: “); scanf (“%d”,&adivinha); if (adivinha == magico) { printf (“** acertou **”); printf (“%d e o numero magico\n”,magico); } else if (adivinha> magico) printf (“valor alto”); else printf (“valor baixo”); tentativas++; } while (adivinha != magico); printf (“voce tentou %d vezes\n”,tentativas);

25 Loops aninhados - exemplo das 4 potências de 1 a 9
main() { int i, j, k, temp; printf (“ i i^2 i^3 i^4 i^5\n”); for (i=1;i<10;i++) { for (j=1;j<5;j++) { temp = 1; for (k=0;k<j;k++) temp=temp*i; printf (“%9d”,temp); } printf(“/n”);

26 Uso de break e continue Uso de rótulos e goto int t; int x;
for (t=0;t<100;t++) { printf (“%d “,t); if (t==10) break; } int x; for (x=0;x<100;x++) { if (x%2) continue; printf (“%d “,x); } Uso de rótulos e goto


Carregar ppt "LINGUAGEM C Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo."

Apresentações semelhantes


Anúncios Google