Geral
Sistemas Computacionais
Semana 5
0

Questão

Um desenvolvedor está criando um sistema de gerenciamento de biblioteca em linguagem C. Para organizar as informações sobre os livros, ele decide utilizar estruturas e typedef. Ele quer definir um tipo para os livros que inclui título, autor, ano de publicação e número de páginas. Além disso, ele precisa de uma função para atualizar o ano de publicação de um livro.

Analise o seguinte cenário:

A biblioteca utiliza um sistema em C que gerencia os dados dos livros através de uma estrutura Book. A estrutura contém os seguintes campos: título (char[100]), autor (char[50]), ano de publicação (int) e número de páginas (int). A função updateYear atualiza o ano de publicação de um livro.

Baseado neste cenário, identifique as afirmativas corretas sobre a implementação e a utilização da função updateYear:
  1. A função updateYear deve receber um ponteiro para Book e o novo ano, e deve atualizar diretamente o campo ano de publicação.
  2. A função updateYear deve receber uma cópia da estrutura Book e o novo ano, atualizar a cópia e retornar a estrutura atualizada.
  3. A função updateYear deve receber um ponteiro para Book e o novo ano, criar uma nova estrutura Book com o novo ano e retornar essa nova estrutura.
  4. A função updateYear deve receber o título do livro e o novo ano, e deve procurar o livro pelo título e atualizar o ano de publicação.
  5. A função updateYear deve receber uma cópia da estrutura Book e o novo ano, e deve retornar um ponteiro para a estrutura atualizada.
Está correto o que se afirma em:
A) II, apenas.
B) IV, apenas.
C) III, apenas.
D) V, apenas.
E) I, apenas.
function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/1683/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': 's2J9Mri0C9bJa8zyZaY6PntyTfK4nLTejyVAaVDuIbWkgJVnMildRxDeuvH5u6Zh' }, body: JSON.stringify({ value: value }) }) .then(response => response.json()) .then(data => { if (data.success) { document.getElementById(`score-${questaoId}`).textContent = data.score; const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`); const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`); upBtn.classList.remove('active-up'); downBtn.classList.remove('active-down'); if (data.user_vote === 1) upBtn.classList.add('active-up'); if (data.user_vote === -1) downBtn.classList.add('active-down'); } }); }