A Estrutura de Dados
Por: Nil Pereira • 8/6/2021 • Projeto de pesquisa • 426 Palavras (2 Páginas) • 120 Visualizações
#include<stdio.h>
#include <stdlib.h>
// 01) - Criar uma struct para produto (nome, quantidade e preço unitário).
typedef struct produto{
char nome [30];
int quantidade;
float preco;
}produto;
//02) - Criar o mecanismo para inserção de produtos no pedido utilizando ponteiros e alocação de memória.
void preencher(produto *itens){
printf("Nome do Produto: ");
fflush(stdin);
gets(itens->nome);
printf("Quantidade: ");
fflush(stdin);
scanf("%d",&itens->quantidade);
printf("Preco: ");
fflush(stdin);
scanf("%f",&itens->preco);
}
// 03) - Criar o mecanismo para leitura dos produtos inseridos no pedido, utilizando ponteiros.
void imprimir(produto *itens){
printf("Nome: %s Quantidade: %d preco: %.2f\n ",itens->nome,itens->quantidade,itens->preco);
}
int main(){
produto *itens=NULL;
itens = (produto*) malloc(sizeof(produto)*10);
int i;
printf("********************Cadastro Produto********************\n\n");
for(i=0;i<10;i++){
preencher(&itens[i]);
}
printf("\n\n********************Lista de Produtos********************\n\n");
for(i=0;i<10;i++){
imprimir(&itens[i]);
}
// 04) - Totalizar o valor (preço) total do pedido.
printf("\n\n Total: %.2f\n",itens[0].preco + itens[1].preco + itens[2].preco + itens[3].preco + itens[4].preco+ itens[5].preco+ itens[6].preco+ itens[7].preco+ itens[8].preco+ itens[9].preco);
free(itens);
return 0;}
//05) Responder esta pergunta: qual a vantagem de utilizar alocação dinâmica de memória em relação a alocação estática?
//Alocação Dinâmica - podemos definir o tamanho da variável, tempo de execução alocados em memória de forma dinâmica, enquanto na Alocação estática as variáveis
//tem um tamanho fixo , o tempo de compilação é maior.
[pic 1]
...