Considere as seguintes afirmações sobre a biblioteca cstdio ...

Próximas questões
Com base no mesmo assunto
Q3541852 Programação
Considere as seguintes afirmações sobre a biblioteca cstdio da linguagem C++:

I – O comando puts imprime uma cadeia de caracteres no console, e então pula automaticamente uma linha.
II – O comando fgets lê uma cadeia de caracteres completa, incluindo espaços, a partir de um arquivo stream e armazena em um vetor.
III – O comando getchar lê uma cadeia de caracteres digitada no console.

Assinale a alternativa CORRETA, conforme Vieira (2019):

VIEIRA, L. S. Introdução à programação em C++. V. 7, Editora UFVJM, 2019, 218p
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: B - As afirmações I e II são corretas.

1. Tema central da questão

Esta questão avalia o conhecimento sobre funções da biblioteca <cstdio> da linguagem C++. Essa biblioteca oferece recursos para entrada e saída padrão (E/S), muito usados em programação básica e em concursos.

2. Resumo teórico

A biblioteca <cstdio> (derivada da stdio.h do C) reúne funções clássicas:

  • puts: imprime uma string na tela, acrescentando automaticamente uma quebra de linha no final.
  • fgets: lê uma linha de texto (incluindo espaços) de um arquivo ou da entrada padrão e armazena em um vetor (array).
  • getchar: lê apenas um caractere da entrada padrão (normalmente o teclado).

Fonte: VIEIRA, L. S. Introdução à programação em C++. Editora UFVJM, 2019.

3. Justificativa da alternativa correta

I - Correta: A função puts imprime uma string e adiciona automaticamente uma nova linha ao final, facilitando a exibição organizada de textos.

II - Correta: A função fgets realmente lê uma linha completa (incluindo espaços) de uma stream (arquivo ou teclado) e armazena em um vetor de caracteres.

Portanto, a alternativa B é a correta.

4. Análise das alternativas incorretas

  • A - Apenas a I. Incorreta: II também está correta.
  • C - Apenas a II. Incorreta: I também está correta.
  • D - II e III. Incorreta: III está errada.
  • E - I, II e III. Incorreta: III está errada.

Por que a III está errada? O comando getchar NÃO lê uma cadeia de caracteres, mas sim apenas um único caractere cada vez que é chamado.

5. Estratégia para interpretar questões desse tipo

Leia atentamente cada comando citado. Desconfie se a descrição parecer exagerada: por exemplo, getchar é frequentemente confundido com funções que leem strings, mas só lê um caractere. Palavras como "cadeia de caracteres" indicam leitura de múltiplos caracteres, o que não se aplica ao getchar.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo