Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvida em uso de Struct em C, usando mais de uma struct


adrianoasg

Pergunta

Boa noite... Preciso completar um programa em C, ele já inclui, lista, altera, busca e exclui os produtos cadastrados. 

No programa tem a struct Produto e agora o professor pediu para criar outra struct carrinho.... 

assim:

struct Carrinho{

int item;

struct Produto produto;

int qtd;

float Subtotal;

float total;

} carrinho[100];

 

Minha dúvida é como reutilizo o código abaixo para cadastrar os produtos e levo eles para o carrinho. 

uma parte do código do cadastro.

#include <stdio.h>
#include <stdlib.h>

struct Produto{
    int codigo;
    char descricao[51];
    float valor;
} vprodutos[10];

void incluir();
void excluir(int codigo);
void listar();
void alterar(int coidgo);
void buscar(int codigo);

int posicao;

int main()
{
    posicao = 0;
    int opc, codigo;

    do{
            system("cls");
            printf("\t\tMenu Principal\n\n");
            printf("\t\t1...Incluir Produto\n");
            printf("\t\t2...Buscar Produto\n");
            printf("\t\t3...Listar Todos\n");
            printf("\t\t4...Alterar Produto\n");
            printf("\t\t5...Excluir Produto\n");
            printf("\t\t9...Sair\n\n");
            printf("\t\tSua opcao: ");
            scanf("%d", &opc);

            switch(opc){
                case 1:
                    incluir();
                    break;
                case 2:
                    printf("Digite o codigo do produto a ser procurado: \n");
                    scanf("%d", &codigo);
                    buscar(codigo);
                    break;
                case 3:
                    listar();
                    break;
                case 4:
                    printf("Digite o codigo do produto a ser alterado: \n");
                    scanf("%d", &codigo);
                    alterar(codigo);
                    break;
                case 5:
                    printf("Digite o codigo do produto a ser excluido: \n");
                    scanf("%d", &codigo);
                    excluir(codigo);
                    break;
                case 9:
                    printf("FIM \n");
                    break;
                default:
                    printf("Opcao invalida\n");
                    system("pause");
            }
    }while(opc!=9);

    return 0;
}
 

int posicao;

void incluir(){
    system("cls");

    if(posicao < 10){
        printf("Digite o codigo do produto: \n");
        scanf("%d", &vprodutos[posicao].codigo);
        fflush(stdin);
        printf("Digite a descricao do produto: \n");
        gets(vprodutos[posicao].descricao);
        printf("Digite o valor do produto: \n");
        scanf("%f", &vprodutos[posicao].valor);
        printf("Cadastro efetuado com sucesso!!!\n");
        posicao++;
    }else{
        printf("Memoria cheia!!!\n");
        }
    system("pause");
}
 

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Em 3/12/2016 at 23:37, adrianoasg disse:

Minha dúvida é como reutilizo o código abaixo para cadastrar os produtos e levo eles para o carrinho. 

depois de construir a lista de produtos você deve perguntar ao usuário que quer comprar e enviar ao carro. não tem misterio

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...