Publicado em: 17/11/2006  |  C / C++  |  Visualizações: 3.108  |  2 Comentário(s)

Curso de C - Capitulo 3

CURSO INTRODUTORIO AO C


CAPITULO 3
Neste Capitulo vamos entender entrada e saída de dados E\S repetições aninhadas e o comando goto.


Definição de E\S
Entende-se por E\S entrada e saída de dados, vou explicar melhor quando você diz a              printf para escrever algo na tela você esta efetuando um saída de dados você esta "jogando" para fora, ate agora só aprendemos a saída de dados, entrada de dados é quando o usuário de "dar" dado daí o nome: entrada de dados.


Comando scanf
scanf é a função mais usada em termos de e\s e portanto merece ser explicada  detalhadamente:


#include<stdio.h>
main()
{
    int num1;

    printf("Digite um valor inteiro e tecle enter\t");   /*saida de dados*/
    scanf("%d", &num1);                                       /*entrada de dados*/
    printf("\n\nO numero digitado foi %d", num1);   /*saida de dados*/
}


Analisando: scanf é parecido com printf.
"%d" aqui se coloca o especificador de formato se fosse um caractere seria %c
&num1esta parte atribui o valor a variável num1 NAO SE ESQUEÇA DE COLOCAR  "&" ANTES DA VARIAVEL;

C também permite trabalhar com duas variáveis ex:


#include<stdio.h>
main()
{
    int num1, num2, result;

    printf("Digite dois valores inteiros para somar e tecle enter\n");  

    printf("Primeiro:\t");                   /*Primeiro numero*/
    scanf("%d", &num1);                  

    printf("Segundo:\t");                   /*Segundo numero*/
    scanf("%d", &num2);        

    result = num1 + num2;                    /*Operação*/
    printf("\n\nResultado: %d", result);
}


Agora faremos uma calculadora bem simples, PROCURE ENTENDER TODO O PROGRAMA, SE NAO ENTENDER RELEIA OS CAPITULOS ANTERIORES:


#include<stdio.h>
main()
{
   int entrada, num1, num2, result;

   printf("Digite 1 para somar 2 p\ subtrair 3 dividir e 4  multiplicar ");  
   scanf("%d", &entrada);                  

  if (entrada == 1)
       {
             printf("Digite o primeiro numero: ");
             scanf("%d", &num1);
             printf("Digite o segundo numero: ");
             scanf("%d", &num2);
             printf("Resultado: %d ", num1+num2 );
        }

else if (entrada == 2)
       {
             printf("Digite o primeiro numero: ");
             scanf("%d", &num1);
             printf("Digite o segundo numero: ");
             scanf("%d", &num2);
             printf("Resultado: %d ", num1-num2 );
        }

else if (entrada == 3)
       {
             printf("Digite o primeiro numero: ");
             scanf("%d", &num1);
             printf("Digite o segundo numero: ");
             scanf("%d", &num2);
             printf("Resultado: %d ", num1/num2 );
        }
else if (entrada == 4)
       {
             printf("Digite o primeiro numero: ");
             scanf("%d", &num1);
             printf("Digite o segundo numero: ");
             scanf("%d", &num2);
             printf("Resultado: %d ", num1*num2 );
        }
}


Neste programa utilizamos switch para simplificarmos o programa e deixá-lo mais interativo de forma que o usuário possa escrever a sua própria operação:ENTENDA ESTE TAMBEM


#include<stdio.h>
main()
{
    int num1, num2;
    char operador;

    printf("Digite uma operação como 7+5 com qualquer operador\n");  
    scanf("%d %c %d", &num1, &operador, &num2);

    switch(operador)
         {
             case'+' : printf("Resultado e %d", num1 + num2);
             break;      
             case'-' : printf("Resultado e %d", num1 - num2);
             break;  
             case'*' : printf("Resultado e %d", num1 * num2);
             break;
             case'/' : printf("Resultado e %d", num1 / num2);  
             break;
             default : printf("Operador invalido");
             break;
}
}


Você deve ter percebido o funcionamento deste programa mas irei explicá-lo:

linha 8:coloquei para a variável num1 receber o primeiro valor um inteiro,
a variável operador declarei-a como caractere para os operadores +-*/ e a variável num2 para receber o segundo valor inteiro
linha 10 a 21: vários testes para verificar os operadores e fazer as operações

Comando goto
Este comando(em português "ir á") fala ao compilador onde ele deve continuar a leitura ex:

#include <stdio.h>
main()
{
   char count = 'a';        
            
           if (count<='z')
                goto mostrar;

     mostrar:
            printf("%c\n", count);
}      



Operador condicional
C fornece um operador para testar condições sejam falsas ou verdadeiras
elas tem o seguinte formato:

(expressão) ? expressão verdadeira : expressão falsa;

se a expressão(a que está dentro dos parênteses) for verdadeira o compilador irá executar a "expressão verdadeira" se for falsa a "expressão falsa"


#include <stdio.h>
main()
{
   int count_1, count_2, a = 10, b = 20;
                    
          count_1 = (a>b) ? printf("10>20\n") : printf("\n20>10\n");
          count_1 = (b>a) ? printf("\n20>10\n") : printf("\n10>20\n");
}

Explicando: se (a>b) for verdadeiro ele executará o primeiro comando se for falso o segundo comando. então terá que aparecer o seguinte:
20>10

20>10


Repetições aninhadas
São repetições que acontecem dentro de outras repetições ex:
Este programa exibe o alfabeto 5 vezes:

#include <stdio.h>
main()
{
   int count;
   char alfabeto;
             for(count = 1; count <= 5; count++)
                {  
                      for (alfabeto = 'A'; alfabeto <= 'Z'; alfabeto++)
                         printf("%c", alfabeto);
                         printf("\n");
                         }
}

Links patrocinados
Últimos artigos do editor

Curso de C - Capitulo 4
Constantes - Arquivos de Cab.
Curso de C - Capitulo 2
Operadores lógicos - Operado.
Curso de C - Capitulo 1
Variaveis - Operadores - Est.
Curso de C - Introdução
Conceito - História - print.
Opinião do leitor:
2 Comentário(s)

  comentou:

Gostei muito como dos outros também hehe! Tô aprendendo D+ com esses cursos valeu.

Publicado em: 05/04/2007 - 13:51

  comentou:

Estão ficando muito boas suas matérias Davi. Tenho um bom conhecimento em linguagem C e vejo que você está explicando corretamente a linguagem aos usuários. Parabéns, e continue assim...

Publicado em: 18/11/2006 - 16:34

Acesso restrito
Destaques
Desabilitando Processos no Windows Desabilitando Processos no Windows
Veja como desabilitar alguns processos do windows
Layouts Free Layouts Free
Confira a nossa coletânea de layouts prontos para uso. Diversas categorias para você escolher.
Você controla seu tempo em atividades? Você controla seu tempo em atividades?
Nos tempos de hoje sempre há necessidade de produtividade em níveis elevados
Artigos Relacionados
Novos Artigos
Notícias Relacionados

© 2005 - 2008 - Oficina da Net - v 3.0 - É proibida a reprodução parcial ou completa do conteúdo deste site sem autorização por escrito. Resolução adequada: 1024x768px.