Auto-avaliação on-line: aula 4



Responda as perguntas abaixo, escolhendo a alternativa adequada para cada questão. Ao terminar, aperte o botão "Verifica  nota" no final do formulário. Você pode fazer quantas tentativas quiser até atingir a nota 100. Se quiser recomeçar, basta apertar o botão "Limpa" no final do formulário.

1- if(num) ...;   é equivalente a    if(num!=0) ...; 

     

    a.  Verdadeiro
    b.  Falso

     

2- Qual o valor de x após a seguinte seqüência de comandos:

        a = 10;
        b = 20;
        x = 0;
        x = (b > a) ?  b : a;

     

    a. 
    b. 
    c.  10
    d.  20
    e.  40
    f.  Nenhuma das opções anteriores 

     

3- Qual o valor de x após a seqüência de comandos:

        a = 1;
        b = 2;
        c = 3;
        x = 0;
        x = a < b ? a < c ? a : c : b < c ? b : c;

 (DICA:  antes de tentar resolver, coloque parênteses na expressão acima, indicando a ordem de precedência dos operadores)

     

    a. 
    b. 
    c. 
    d.  3
    e.  Nenhuma das opções anteriores 

     

4- Os trechos de programa a seguir são equivalentes entre si, sob o ponto de vista do que é impresso:

        for (i = 0 ; i < 10; i++) printf("%d", i);

    e

        for (i = 0 ; i < 10; ++i) printf("%d", i);

     

    a.  Verdadeiro 
    b.  Falso 

     

5- O trecho de programa a seguir é

         switch(num)
        {
            case 1;
                        printf("O numero e 1 ");
                        break;
            case 2;
                        printf("O numero e 2 ");
                        break;
            default;
                        printf("O numero e diferente de 1 e 2");
                        break;
        }

     

    a.  Válido na linguagem C 
    b.  Não válido na linguagem C 

     

6- Sendo num uma variável inteira, o que imprime o trecho de código a seguir?

        num = 1;
        switch(num)
        {
            case 1:
                        printf("O numero e 1 ");
            case 2:
                        printf("O numero e 2 ");
            default:
                        printf("O numero e diferente de 1 e 2");
        }
 

     

    a.  O numero e 1 
    b.  O numero e 2
    c.  O numero e diferente de 1 e 2 
    d.  O numero e 1 O numero e 2 
    e.  O numero e 1 O numero e 2 O numero e diferente de 1 e 2

     

7-  Os dois blocos de código a seguir produzem o mesmo resultado:

        for( i = 0  ;  i < 3 ;  i++)
                for ( j =0 ; j < 3; j++)
                        printf("i+j = %d \n", i+j);

e

        for( i = 0 ,  j=0  ;  i < 3 ;  i++)
                for (   ;  j < 3 ;  j++)
                        printf("i+j = %d \n", i+j);

     

    a.  Verdadeiro 
    b.  Falso 

     

8- Qual a saída produzida pelo extrato de código a seguir:

        int x;
        for ( x = 35 ; x > 0 ; x/=3)
            printf("%d " , x) ;

     

    a.  35 11 3 1 
    b.  11 3 1 
    c.  11 3 1 0 
    d.  35 11 3   
    e.  Nenhuma das opções anteriores 

     

9- Os extratos de código a seguir são equivalentes entre si:

        int x = 10;
        while (--x > 9)
           {
              printf("%d", x);
           }

e
         int x = 10;
         do {
              printf("%d", x);
            } while(--x > 9);

     

    a.  Verdadeiro 
    b.  Falso 

     

10- Sendo i declarado e inicializado como:

        int i = 0;

        os seguintes extratos de código:

        while (i = 5)
        {
            printf("%d %d %d \n", i, i+2, i+4);
            i = 0;
        }

e

        if (i = 5) printf ("%d %d %d \n", i, i+2, i+4);

     

    a.  São idênticos sob o ponto de vista do que imprimem na tela
    b.  Não imprimem nada na tela 
    c.  Têm sintaxe errada 
    d.  Um deles imprime 5, 7 e 9 uma única vez e o outro entra em loop, imprimindo estes valores indefinidamente 
    e.  Nenhuma das opções anteriores 

     

11- A estrutura do switch abaixo é:

     switch (t)
     {
        case t < 10:
                    printf("Hoje ta' fazendo muito frio");
                    break;
        case t < 25:
                    printf("A temperatura está agradavel");
                    break;
        default:
                    printf("Hoje ta' quente pra chuchu");
     }
 

     

    a.  Válida na linguagem C
    b.  Não válida na linguagem C 

     

12- O laço for a seguir

   int i;
   for ( i = 0 ; i <= 5; i++ , printf("%d ", i));
 

     

    a.  Imprime 0 1 2 3 4 5 
    b.  Não funciona, pois tem sintaxe errada
    c.  Imprime 1 2 3 4 5 6
    d.  Imprime 1 2 3 4 5
    e.  Nenhuma das opções anteriores

Sua nota é: em um máximo de 100.

 

Página Anterior Índice da Aula


Curso de C do CPDEE/UFMG - 1996 - 1999