A empresa ABC quer criar um cadastro de produtos. Para cada produto, devem ser cadastrados o código do produto,

seu preço e a quantidade estocada, e esses dados devem ser armazenados em uma lista simplesmente encadeada. O programa de cadastro deve ser implementado para, entre outras funcionalidades, receber do usuário uma taxa de desconto (Por exemplo: digitar 10 para desconto de 10%), e aplicar a taxa digitada ao preço de todos os produtos cadastrados.

A implementação da lista simplesmente encadeada utilizada segue o modelo genérico apresentado em aula para o programa do Vestibular:

typedef int TipoChave;

typedef struct {

TipoChave Codigo;

float Preço;

int QuantidadeEstocada;

} TipoItem;

typedef struct TipoCelula *TipoApontador;

typedef struct TipoCelula {

TipoItem Item;

TipoApontador Prox;

} TipoCelula;

Foi desenvolvida, na linguagem C, uma função que aplica uma taxa de desconto a todos os elementos da lista, conforme o código apresentado abaixo. Essa função tem dois parâmetros, que são, respectivamente, uma lista simplesmente encadeada, e o valor da taxa de desconto. No entanto, o programador omitiu uma das linhas da função (a linha pontilhada existente no código abaixo).

void Desc(TipoLista Lista, float desconto))

{

TipoApontador Aux;

Aux = Lista .Primeiro−>Prox;

while (Aux != NULL){



Aux = Aux−>Prox ;

}

}

Qual das alternativas abaixo deve substituir a linha omitida para que a função funcione corretamente?

a.
Aux. Preço = Aux. Preço * desconto;

b.
Aux. Preço = Aux. Preço * (desconto/100);

c.
Aux−>Preço = Aux−>Preço * (1 - (desconto/100));

d.
Aux−>Preço = Aux−>Preço * (desconto/100);

e.
Aux. Preço = Aux. Preço * (1 - (desconto/100));

RESPONDER

jakezika está aguardando sua ajuda, Clique aqui para responder.