I need to create an algorithm as a request below, however, every time I run the program it "skips" steps. For example:
I want you to stay like this
Product: "Potato"
Sector: "Food"
Quantity: "15"
Price: "15.23"
But it prints on the screen and ignores scanf
Downtheexercise
Beanalgorithmtocontrolproductsfromasupermarketstock.Foreachproduct,wehavethefollowingfields:
- Name:stringofsize15.
- Sector:character
- Amount:integer
- Price:real//priceperunitofproduct
a)Writethedefinitionoftheproductstructure
b)Declarethestockvectorofthetypeofstructuredefinedabove,size100andglobal.
c)Createamenufor:
c1.Defineaninstructionblocktoreadthestockvector.
c2.Defineaninstructionblockthatreceivesasectorandreturnsthenumberofdifferentproductsinthatsector.
c3.Defineablockofinstructionsthatcalculatesandreturnsthetotalcapitalinvestedingroceries.
c4.ExitProgram.
//ControleEstoquedeprodutosdeSupermercado#include<stdio.h>#include<stdlib.h>#include<string.h>#include<locale.h>structproduto{charnome[15];charsetor[15];intquantidade;floatpreco;};structprodutoprod[2];intestoque(structprodutoprod[2];){inti;for(i=0;i<2;i++){printf("\nDigite o nome do produto: ");
scanf("%s", &prod[i].nome);
printf("\nDigite o setor: ");
scanf("%c", &prod[i].setor);
printf("\nDigite a quantidade: ");
scanf("%d", &prod[i].quantidade);
printf("\nDigite o preço: ");
scanf("%f", &prod[i].preco);
}
}
int verificar_setor(struct produto prod[2];)
{
int i, p = 0;
char ver[15];
printf("\nDigite o setor: ");
scanf("%c", &ver);
for (i = 0;i < 2; i++)
{
if (strcpy(ver,prod[i].setor))
{
p++;
}
}
printf("Existem %d produtos cadastrados neste setor.", p);
}
int capital(struct produto prod[2];)
{
int i;
float c = 0.0;
for (i = 0;i < 2; i++)
{
c = c + prod[i].preco;
}
printf("Foi investido um total de %2.f Reais em produtos no Supermercado.", c);
}
int main()
{
setlocale(LC_ALL,"Portuguese");
int n = 0;
printf("Escolha uma opção");
do
{
printf("\n1 - Cadastrar produtos.");
printf("\n2 - Verificar quantos produtos existem em um determinado setor.");
printf("\n3 - Total de capital investido nos produtos do Supermecado.");
printf("\n4 - Sair do Programa.\n");
scanf("%d", &n);
switch (n)
{
case 1:
estoque(prod[2]);
n = 0;
break;
case 2:
verificar_setor(prod[2]);
n = 0;
break;
case 3:
capital(prod[2]);
n = 0;
break;
case 4:
printf("Pressione qualquer tecla para sair...");
system("Pause");
break;
}
}while (n == 0);
return 0;
}