C 配菜菜单';不流行
在用户选择比萨饼后,他们无法选择自己的配菜,因为配菜菜单缺失 循环有什么问题吗 它被怀疑与循环时有关C 配菜菜单';不流行,c,loops,if-statement,for-loop,while-loop,C,Loops,If Statement,For Loop,While Loop,在用户选择比萨饼后,他们无法选择自己的配菜,因为配菜菜单缺失 循环有什么问题吗 它被怀疑与循环时有关 int main() { int cont; int cust; int i; int j; double side=0.00; double pizza=0.00; double total=0.00; for(cust=0;cust<5;cust++) { printf("Welcome To Pizza Hut\n"); printf("Pizza Menu :\n
int main()
{
int cont;
int cust;
int i;
int j;
double side=0.00;
double pizza=0.00;
double total=0.00;
for(cust=0;cust<5;cust++)
{
printf("Welcome To Pizza Hut\n");
printf("Pizza Menu :\n");
printf("1=Chicken\n");
printf("2=Meat\n\n");
printf("Enter Pizza Flavor : ");
scanf("%d",&i);
if(i==1)
{
pizza=5.50;
}
if(i==2)
{
pizza=4.50;
}
while(cont==1) /*This is where the menu for side order didn't show*/
{
printf("Side Order Menu :\n");
printf("1=coke\n");
printf("2=pepsi\n");
printf("3=bread\n");
printf("4=salad\n\n");
printf("Enter Side Order : ");
scanf("%d",&j);
if(j==1)
{
side=1.50;
}
if(j==2)
{
side=1.30;
}
if(j==3)
{
side=2.50;
}
if(j==4)
{
side=2.60;
}
printf("Add Order? (1=yes||0=no) : ");
scanf("%d",&cont);
}
}
total=pizza+side;
printf("Total : %.2f",total);
cust++;
return 0;
}
intmain()
{
内部控制;
int cust;
int i;
int j;
双面=0.00;
双份比萨饼=0.00;
双倍合计=0.00;
对于(cust=0;cust此处,您没有为cont变量指定值,因此while循环无法正常工作。此处,您没有为cont变量指定值,因此while循环无法正常工作。如果有行int cont;
,则将其替换为int cont=1;
cont
将具有不确定的值,so您永远不会进入循环以将其设置为其他任何内容。如果您有行int cont;
,请将其替换为int cont=1;
cont
将具有不确定的值,因此您永远不会进入循环以将其设置为其他内容。如果我没有错,当您说
while(cont==1)
你是说,当cont等于1时,继续,cont永远不是1。
您还必须将变量计数初始化为0。如果我没有错,当您说
while(cont==1)
你是说,当cont等于1时,继续,cont永远不是1。
您还必须将变量计数初始化为0。我认为有一些错误:
您应该将cont变量初始化为1
您应该在while循环中添加一个中断机制,以摆脱它
再次执行while循环后,应将cont变量重置为1
这可能会奏效:
int main()
{
int cont = 1;
int cust;
int i;
int j;
double side=0.00;
double pizza=0.00;
double total=0.00;
for(cust=0;cust<5;cust++)
{
printf("Welcome To Pizza Hut\n");
printf("Pizza Menu :\n");
printf("1=Chicken\n");
printf("2=Meat\n\n");
printf("Enter Pizza Flavor : ");
scanf("%d",&i);
if(i==1)
{
pizza=5.50;
}
if(i==2)
{
pizza=4.50;
}
while( cont == 1 ) /*This is where the menu for side order didn't show*/
{
printf("Side Order Menu :\n");
printf("1=coke\n");
printf("2=pepsi\n");
printf("3=bread\n");
printf("4=salad\n\n");
printf("Enter Side Order : ");
scanf("%d",&j);
if(j==0)
{
cont = 0;
break;
}
if(j==1)
{
side=1.50;
}
if(j==2)
{
side=1.30;
}
if(j==3)
{
side=2.50;
}
if(j==4)
{
side=2.60;
}
printf("Add Order? (1=yes||0=no) : ");
scanf("%d",&cont);
}
cont = 1;
}
total=pizza+side;
printf("Total : %.2f",total);
cust++;
return 0;
}
intmain()
{
int cont=1;
int cust;
int i;
int j;
双面=0.00;
双份比萨饼=0.00;
双倍合计=0.00;
对于(cust=0;cust我认为有一些错误:
您应该将cont变量初始化为1
您应该在while循环中添加一个中断机制,以摆脱它
再次执行while循环后,应将cont变量重置为1
这可能会奏效:
int main()
{
int cont = 1;
int cust;
int i;
int j;
double side=0.00;
double pizza=0.00;
double total=0.00;
for(cust=0;cust<5;cust++)
{
printf("Welcome To Pizza Hut\n");
printf("Pizza Menu :\n");
printf("1=Chicken\n");
printf("2=Meat\n\n");
printf("Enter Pizza Flavor : ");
scanf("%d",&i);
if(i==1)
{
pizza=5.50;
}
if(i==2)
{
pizza=4.50;
}
while( cont == 1 ) /*This is where the menu for side order didn't show*/
{
printf("Side Order Menu :\n");
printf("1=coke\n");
printf("2=pepsi\n");
printf("3=bread\n");
printf("4=salad\n\n");
printf("Enter Side Order : ");
scanf("%d",&j);
if(j==0)
{
cont = 0;
break;
}
if(j==1)
{
side=1.50;
}
if(j==2)
{
side=1.30;
}
if(j==3)
{
side=2.50;
}
if(j==4)
{
side=2.60;
}
printf("Add Order? (1=yes||0=no) : ");
scanf("%d",&cont);
}
cont = 1;
}
total=pizza+side;
printf("Total : %.2f",total);
cust++;
return 0;
}
intmain()
{
int cont=1;
int cust;
int i;
int j;
双面=0.00;
双份比萨饼=0.00;
双倍合计=0.00;
对于(cSUT=0;CuSTWELL,是COT==1;int / /初始化为0,它是一个本地的,所以它不是初始化到任何东西。嗯,是COT==1 int int;//初始化为0,它是一个本地的,所以它没有初始化任何东西。如果不是自动存储,它不会。”YYN4您的答案非常有用!谢谢,如果它有帮助的话,考虑接受它。(点击旁边的嘀嗒声),如果答案是你回答的问题,这里就做了。“JasLiPANOT如果它是自动存储的,它就不会。”YAN4你的答案非常有用!谢谢你,如果它有帮助,考虑接受它(点击旁边的滴答声)。,因为如果答案回答了您的问题,这就是这里要做的。@JazliPathank you..我忘了为变量cont指定起始值..我的错误谢谢..我忘了为变量cont指定起始值..我的错误是对的..我忘了为其指定值..谢谢@dacastro4yeah right..我忘了为其指定值..谢谢@达卡斯特罗4