Struct com funcões

0 respostas
M

Bom dia galera!
Estou tentando implantar funções com struct mas ao inserir valores para a struct ao consultar ele não registra os valores. Acredito que esteja populando incorretamente na função.
Segue abaixo o codigo criado até então.
Caso alguém poder me ajudar, agradeço de coração. Obrigado.

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

struct cafeteira {

int codigo;

float quantidade; //qtd pó de café

int	luzLigada; //1 ou 0 1- ligada

int	luzSemCafe;

int	luzFazendoCafe;

char mensagem[21];

};

typedef struct cafeteira TipoCafeteira;

TipoCafeteira criar1(TipoCafeteira cafet1);

TipoCafeteira criar2(TipoCafeteira cafet2);

TipoCafeteira ligar1(TipoCafeteira cafet1);

TipoCafeteira ligar2(TipoCafeteira cafet2);

void menucafeteira1(TipoCafeteira cafet1);

void menucafeteira2(TipoCafeteira cafet2);

//typedef struct cafeteria TipoCafeteira;
int main(){

int ncaf=0, opcao;

TipoCafeteira cafet1;

TipoCafeteira cafet2;

cafet1=criar1 (cafet1);

cafet2=criar2 (cafet2);

do {

printf(“Digite qual cafeteira deseja utilizar: “);

scanf(”%d”, &ncaf);

if (ncaf<1||ncaf>2)

printf(“Cafeteira invalida…\n”);

}

while (ncaf<1||ncaf>2);

switch (ncaf){

case 1:

opcao = menu(ncaf);

//printf("%d", opcao);

if (opcao==1){

cafet1=ligar1 (cafet1);

}

break;

case 2:

printf(“Cafeteira 2”);

break;

/<em>case 3:

printf(“Cafeteira 3”);

break;</em>/

}

}
int menu(int ncaf) {

int opcao=0;

//system(“cls”);

printf("\nCAFETEIRA %d - SELECIONE UMA OPCAO\n\n", ncaf);

printf(“1 - Ligar\n”);

printf(“2 - Desligar\n”);

printf(“3 - Verificar Repositorio\n”);

printf(“4 - Imprimir mensagem cafeteira\n”);

printf(“5 - Repor cafe\n”);

printf(“6 - Fazer cafe\n”);

printf(“7 - Sair\n\n”);

printf(“Digite sua opcao: );

scanf(”%d”, &opcao);

return opcao;

}

void menucafeteira1(TipoCafeteira cafet1){

printf("\nDADOS DA CAFETEIRA 1 \n");

printf(“Codigo: %d\n, cafet1.codigo);

printf(“Quantidade de cafe: %.2f\n, cafet1.quantidade);

printf(“Luz ligada: %d\n, cafet1.luzLigada);

printf(“Luz sem cafe: %d\n, cafet1.luzSemCafe);

printf(“Luz fazendo cafe: %d\n, cafet1.luzFazendoCafe);

printf(“Mensagem: %d\n, cafet1.mensagem);

}

void menucafeteira2(TipoCafeteira cafet2){

printf("\nDADOS DA CAFETEIRA 2 \n");

printf(“Codigo: %d\n, cafet2.codigo);

printf(“Quantidade de cafe: %.2f\n, cafet2.quantidade);

printf(“Luz ligada: %d\n, cafet2.luzLigada);

printf(“Luz sem cafe: %d\n, cafet2.luzSemCafe);

printf(“Luz fazendo cafe: %d\n, cafet2.luzFazendoCafe);

printf(“Mensagem: %d\n, cafet2.mensagem);

}

TipoCafeteira criar1(TipoCafeteira cafet1){

//srand(time(NULL));

cafet1.codigo = rand()%1000;

//strcpy(cafet1.codigo, “123”);

cafet1.quantidade = 0;

cafet1.luzLigada = 0;

cafet1.luzSemCafe = 0;

cafet1.luzFazendoCafe = 0;

strcpy(cafet1.mensagem, “”);

menucafeteira1(cafet1);
}

TipoCafeteira criar2(TipoCafeteira cafet2){

//srand(time(NULL));

cafet2.codigo = rand()%1000;

cafet2.quantidade = 0;

cafet2.luzLigada = 0;

cafet2.luzSemCafe = 0;

cafet2.luzFazendoCafe = 0;

strcpy(cafet2.mensagem, “”);

menucafeteira2(cafet2);

}

TipoCafeteira ligar1(TipoCafeteira cafet1){

<a href="//cafet1.codigo">//cafet1.codigo</a> = rand()%1000;

cafet1.quantidade = 0;

cafet1.luzLigada = 1;

cafet1.luzSemCafe = 0;

cafet1.luzFazendoCafe = 0;

strcpy(cafet1.mensagem, “LIGADA”);

<a href="//cafet1.mensagem">//cafet1.mensagem</a>[21] = “Ligada”;

menucafeteira1(cafet1);

}
Criado 14 de junho de 2018
Respostas 0
Participantes 1