Matemática Múltipla Escolha

Quando se manipula um arquivo, às vezes temos a necessidade de alterar informações ou incluir novas. Para tanto, funções seek(), fgets(), fputs() e fopen() podem ser utilizadas. Dentro as seguintes, assinale V para verdadeiro e F para falso. ( ) A função fseek() não admite valores negativos para o seu deslocamento mesmo quando utilizado com o parâmetro SEEK_CUR; ( ) no caso de gravarmos uma informação no meio do arquivo, a informação será sobrescrita; ( ) a função fseek() admite três pontos de referência para o seu deslocamento: a partir do início do arquivo (SEEKSET), a partir da posição corrente (SEEKCUR) e a partir do do arquivo (SEEK_END).

Quando se manipula um arquivo, às vezes temos a necessidade de alterar informações ou incluir novas. Para tanto, funções seek(), fgets(), fputs() e fopen() podem ser utilizadas. Dentro as seguintes, assinale V para verdadeiro e F para falso.

( ) A função fseek() não admite valores negativos para o seu deslocamento mesmo quando utilizado com o parâmetro SEEK_CUR;
( ) no caso de gravarmos uma informação no meio do arquivo, a informação será sobrescrita;
( ) a função fseek() admite três pontos de referência para o seu deslocamento: a partir do início do arquivo (SEEK_SET), a partir da posição corrente (SEEK_CUR) e a partir do do arquivo (SEEK_END).

  1. F,V,F,F
  2. V,V,F,V
  3. V,F,V,F
  4. F,F,V,V
  5. F,V,F,V

Resolução completa

Explicação passo a passo

E
Alternativa E

Alternativa E - F, V, F, V

Análise Detalhada

Vamos analisar cada afirmativa separadamente para entender o comportamento das funções de manipulação de arquivos em C:

1. Função fseek() e Deslocamentos Negativos

A primeira afirmativa diz que a função fseek() não aceita valores negativos com o parâmetro SEEK_CUR.

  • Correção: Isso é Falso.
  • Explicação: O fseek() funciona movendo um ponteiro dentro do arquivo. Quando usamos SEEK_CUR (Current Position), o deslocamento (offset) é relativo à posição atual.
  • Um valor positivo move o ponteiro para frente (avança).
  • Um valor negativo move o ponteiro para trás (retrocede).
  • Portanto, valores negativos são perfeitamente válidos para recuar o cursor no arquivo.

2. Gravando no Meio do Arquivo (Sobrescrita)

A segunda afirmativa diz que ao gravar no meio, a informação será sobrescrita.

  • Correção: Isso é Verdadeiro.
  • Explicação: Arquivos em sistemas operacionais convencionais funcionam como blocos de bytes contíguos. Ao abrir um arquivo para leitura e escrita (ex: modo "r+") e posicionar o cursor em uma posição intermediária, qualquer dado escrito por funções como fprintf ou fwrite substituirá os bytes que já existiam naquele local. Não há "espaço extra" criado magicamente.

3. Gravando no Meio do Arquivo (Deslocamento Automático)

A terceira afirmativa diz que ao gravar no meio, toda a informação abaixo será deslocada.

  • Correção: Isso é Falso.
  • Explicação: Diferente de estruturas de dados como vetores ou listas encadeadas, o sistema de arquivos não move automaticamente os dados subsequentes para fazer espaço. Se você escrever 5 caracteres onde havia 10, apenas os primeiros 5 serão alterados, e os 5 restantes continuarão lá após o novo dado. Para inserir dados sem perder o resto, seria necessário ler o arquivo, criar um temporário e reescrever tudo.

4. Pontos de Referência do fseek()

A quarta afirmativa lista os três pontos de referência: SEEK_SET, SEEK_CUR e SEEK_END.

  • Correção: Isso é Verdadeiro.
  • Explicação: Estes são os padrões definidos pela linguagem C (<stdio.h>):
  • SEEK_SET (0): Início do arquivo.
  • SEEK_CUR (1): Posição atual do ponteiro.
  • SEEK_END (2): Fim do arquivo.

Conclusão

A sequência correta das afirmações é:

  1. F (Pode usar negativo com SEEK_CUR)
  2. V (Gravação sobrescreve)
  3. F (Não há deslocamento automático)
  4. V (Três pontos de referência corretos)

Portanto, a sequência é F, V, F, V, correspondendo à Alternativa E.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Matemática

Ver mais Matemática resolvidas

Tem outra questão de Matemática?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.