Logo Passei Direto
Buscar
Dado o trecho de código abaixo que mostra a definição da struct Disciplina e a inicialização da variável banco_dados:

D. = 0 C
1 Disciplina {
2 char curso[40];
3 char professor[3010];
4 };
5
6 struct Disciplina banco_dados = ("Computação", "José Carlos da Silva");
7
Ao analisar o código, assinale a alternativa correta quanto ao acesso aos dados da variável banco_dados a serem impressos:
A) printf("%s - %s", banco_dados.curso, banco_dados->professor);
B) printf("%s - %s", disciplina.curso, banco_dados.professor);
C) printf("%s - %s", banco_dados.curso, banco_dados.professor);
D) printf("%s - %s", disciplina.curso, disciplina.professor);
E) printf("%s - %s", banco_dados->curso, banco_dados->professor);
User badge image
Aprendendo com Desafios

há 5 meses

Respostas

User badge image

Ed Verified user icon

há 5 meses

Vamos analisar as opções uma a uma, considerando a definição da struct e a forma correta de acessar os dados da variável `banco_dados`. A struct `Disciplina` foi definida corretamente, e a variável `banco_dados` foi inicializada. Para acessar os membros de uma struct em C, usamos o operador ponto (`.`) quando estamos lidando com uma variável do tipo struct. Agora, vamos analisar as alternativas: A) `printf("%s - %s", banco_dados.curso, banco_dados->professor);` - Aqui, `banco_dados.curso` está correto, mas `banco_dados->professor` está errado, pois `banco_dados` não é um ponteiro. B) `printf("%s - %s", disciplina.curso, banco_dados.professor);` - `disciplina` não é uma variável definida no código, então isso está errado. C) `printf("%s - %s", banco_dados.curso, banco_dados.professor);` - Esta opção está correta, pois usa o operador ponto para acessar os membros da struct `banco_dados`. D) `printf("%s - %s", disciplina.curso, disciplina.professor);` - Novamente, `disciplina` não é uma variável definida, então isso está errado. E) `printf("%s - %s", banco_dados->curso, banco_dados->professor);` - Aqui, `banco_dados->curso` está errado, pois `banco_dados` não é um ponteiro. Portanto, a alternativa correta é: C) printf("%s - %s", banco_dados.curso, banco_dados.professor);

Essa resposta te ajudou?

0
Dislike0
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar essa resposta. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Essa pergunta também está no material:

Mais perguntas desse material

Mais conteúdos dessa disciplina