Logo Passei Direto
Buscar

Programação

Colégio Objetivo
Considere a implementação de um programa em C que deve armazenar informações sobre produtos e vendas em estruturas de dados. Para tanto, foram definidas as estruturas "produto" e "venda" da seguinte forma:

```
struct produto {
int id;
char nome[50];
float preco;
int quantidade;
}p1;
struct venda {
int id;
int quantidade;
float total;
struct produto prod;
}v1;
```

Baseado nas structs apresentadas e considerando que já existem dados armazenados, qual seria a forma correta para apresentar em uma única linha, o código da venda, o nome do produto, a quantidade vendida e o total da venda? Assinale a alternativa que apresenta a solução correta.
A printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, v1.prod.nome, v1.quantidade, p1.preco, v1.quantidade);
B printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, v1.prod.nome, v1.quantidade, v1.prod.preco * v1.quantidade);
C printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, p1.nome, v1.quantidade, v1.prod.preco);
D printf("\nVenda: \n %d, %s, %d, total %.2f\n", v1.prod.id, v1.prod.nome, v1.quantidade, p1.preco * p1.quantidade);
E printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, v1.prod.nome, v1.quantidade, p1.preco * v1.quantidade);
User badge image
Estudando com Questões

ano passado

Respostas

User badge image

Ed Verified user icon

ano passado

Vamos analisar cada uma das alternativas para encontrar a correta. A estrutura `venda` contém um campo `prod` que é do tipo `struct produto`, o que significa que para acessar o nome do produto e o preço, devemos usar `v1.prod.nome` e `v1.prod.preco`, respectivamente. Além disso, o total da venda deve ser calculado como o preço do produto multiplicado pela quantidade vendida. Agora, vamos analisar as alternativas: A) `printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, v1.prod.nome, v1.quantidade, p1.preco, v1.quantidade);` - Aqui, `p1.preco` e `v1.quantidade` estão incorretos. O total deveria ser `v1.prod.preco * v1.quantidade`. B) `printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, v1.prod.nome, v1.quantidade, v1.prod.preco * v1.quantidade);` - Esta opção está correta. Ela usa `v1.prod.nome` para o nome do produto, `v1.quantidade` para a quantidade vendida e calcula o total corretamente como `v1.prod.preco * v1.quantidade`. C) `printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, p1.nome, v1.quantidade, v1.prod.preco);` - Aqui, `p1.nome` está incorreto, pois deveria ser `v1.prod.nome`. Além disso, o total não está sendo calculado corretamente. D) `printf("\nVenda: \n %d, %s, %d, total %.2f\n", v1.prod.id, v1.prod.nome, v1.quantidade, p1.preco * p1.quantidade);` - Aqui, `v1.prod.id` está incorreto, pois o ID da venda deve ser `v1.id`. O total também está incorreto. E) `printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, v1.prod.nome, v1.quantidade, p1.preco * v1.quantidade);` - Aqui, `p1.preco` está incorreto. O total deveria ser `v1.prod.preco * v1.quantidade`. Portanto, a alternativa correta é: B `printf("\nVenda:\n %d, %s, %d, total %.2f\n", v1.id, v1.prod.nome, v1.quantidade, v1.prod.preco * v1.quantidade);`

Essa resposta te ajudou?

0
Dislike0

Ainda não achou a resposta?

  • Integrado com os principais modelos de IA do mercado
  • Respostas em segundos
  • IA treinada para estudantes brasileiros.
PasseIA logoEvolua sua forma de estudar

Cadastre-se ou realize login

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