wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Exercicios de Apoio 3

Total questions: 20

Worksheet time: 29mins

Name
Class
Date
1.

Qual é uma interpretação correta da ordem das operações realizadas?

a)

Primeiro soma 3 + 2, depois multiplica por valor

b)

Primeiro multiplica 3 * 2 e só depois realiza as somas/subtrações

c)

Avalia da esquerda para a direita sem prioridade

d)

A subtração ocorre antes da multiplicação

2.

Qual raciocínio explica o problema?

a)

A função printf não aceita strings

b)

O aluno usou uma variável não inicializada

c)

O código nem compila porque '=' não existe em C

d)

O aluno confundiu atribuição com comparação

3.

Se x começa valendo 3, quais valores serão percorridos antes de parar, considerando apenas incrementos válidos?

a)

3, 6, 9

b)

3, 6, 9, 12

c)

4, 7, 10

d)

3, 5, 7, 9, 11

4.

Um aluno usa scanf("%d", &n);. Outro diz que o programa está lendo “lixo”. O que pode justificar isso?

a)

scanf sempre lê lixo

b)

O operador & não deve ser usado em scanf

c)

A variável n não foi declarada ou inicializada antes

d)

O usuário inseriu um caractere não numérico

5.

Qual explicação representa corretamente o que acontece?

a)

b recebe 9 e depois a vira 9

b)

b recebe 8 e depois a vira 9

c)

b recebe 9 e a permanece 8

d)

O código é indefinido

6.

Um professor pergunta: “O que significa dizer que C é imperativo?”.

Qual resposta demonstra entendimento, e não memorização?

a)

Ele descreve passos que alteram o estado do programa

b)

Ele descreve apenas o resultado final desejado

c)

Ele é baseado em objetos

d)

Ele não possui variáveis

7.

Qual dedução correta?

a)

O código está errado

b)

As posições não inicializadas viram 0

c)

Todas as posições ficam com lixo

d)

O array tem apenas 3 posições

8.

Por que p muda?

a)

Porque q aponta para p

b)

Porque q guarda o mesmo valor que p

c)

Porque ponteiros não existem em C

d)

Porque *q significa endereço

9.

Quantos caracteres existem no array?

a)

4

b)

3

c)

Depende do compilador

d)

5

10.

O que justifica a existência de return 0; em main()?

a)

Evitar warnings

b)

Indicar que o programa terminou corretamente

c)

Criar uma variável zero

d)

Nada, é opcional

11.

Qual afirmação descreve melhor o desafio deste tipo de expressão?

a)

É simples, só somar

b)

A ordem de avaliação pode gerar confusão e não deve ser usada por iniciantes

c)

Isso não é permitido pela linguagem

d)

O compilador escolhe sempre x++ primeiro

12.

Quando usar & no scanf?

a)

Apenas se a variável for global

b)

Nunca

c)

Apenas com strings

d)

Sempre com tipos primitivos (exceto strings)

13.

Por que o valor original não muda?

a)

Porque falta return

b)

Porque void impede alterações

c)

Porque a e b são cópias

d)

Porque C proíbe somas dentro de funções

14.

O que diferencia um ponteiro de uma variável comum?

a)

Guarda múltiplos valores

b)

Guarda endereços de memória

c)

Nunca pode ser alterado

d)

É mais rápido

15.

O que deve verificar imediatamente?

FILE *f = fopen("dados.txt", "r");

a)

Se o ficheiro foi fechado

b)

Se a RAM é suficiente

c)

Se o compilador tem permissões

d)

Se f é NULL

16.

Se f estiver em modo “w”:

fscanf(f, "%d", &n);

a)

Lê normalmente

b)

Erro lógico: não se pode ler ficheiro aberto para escrita

c)

Lê 0

d)

Lê lixo

17.

Para ler caractere a caractere, usa-se:

a)

fscanf

b)

fgets

c)

fgetc

d)

getc(stdin) somente

18.

O que significa "parâmetro por valor"?

a)

A função recebe uma cópia do valor

b)

A variável original é alterada

c)

O parâmetro é sempre um ponteiro

d)

A função não recebe parâmetros

19.

Qual declaração está correta?

a)

string nome;

b)

nome char[30]

c)

text nome

d)

char nome[30]

20.

O que faz o compilador?

a)

Executa diretamente o programa

b)

Converte o código-fonte para linguagem de máquina

c)

Salva arquivos em disco

d)

Roda o programa em modo gráfico