我正在为我的入门级 C# 类(class)解决以下两个问题。我已经完成了问题 3,但遇到了问题 4 的问题。问题是总数不正确,因为它没有添加输入的第一个组合值,而且我不太确定我哪里出错了。我将不胜感激你们可以为此提供的任何帮助。请记住,这是一门入门级类(class),因此它需要简单的 for 循环、if then 语句、do while 语句等。这是我目前的代码:
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Enter number of customers: ");
var numCust = Convert.ToInt32(Console.ReadLine());
int lunchCombo = 0;
decimal total = 0;
Console.WriteLine("Enter lunch combo purchased");
lunchCombo = Convert.ToInt32(Console.ReadLine());
for ( int i = 1; i < numCust; i++ )
switch (lunchCombo)
{
case 1:
Console.WriteLine("Enter lunch combo purchased");
lunchCombo = Convert.ToInt32(Console.ReadLine());
total = total + 4.25M;
break;
case 2:
Console.WriteLine("Enter lunch combo purchased");
lunchCombo = Convert.ToInt32(Console.ReadLine());
total = total + 5.75M;
break;
case 3:
Console.WriteLine("Enter lunch combo purchased");
lunchCombo = Convert.ToInt32(Console.ReadLine());
total = total + 5.25M;
break;
case 4:
Console.WriteLine("Enter lunch combo purchased");
lunchCombo = Convert.ToInt32(Console.ReadLine());
total = total + 3.75M;
break;
default:
Console.WriteLine("Invalid input");
break;
}
Console.WriteLine("Your total is {0}", total);
Console.ReadKey();
}
}
某餐厅有 4 种午餐套餐供顾客选择:
组合 1:炸鸡沙拉 [价格:4.25] 套餐二:烤牛肉配土 bean 泥【价格:5.75】 套餐三:炸鱼薯条[价格:5.25] 组合4:汤和沙拉[价格:3.75]
编写一个程序,询问客户点了哪种午餐套餐。使用 switch 语句确定并显示客户需要支付的金额。如果客户点了菜单上没有的东西,则显示“输入无效”。不要使用任何 if…else 语句。
展开程序 3 以计算一组客户应收的总金额。该程序首先询问该组中的客户数量。然后它使用一个循环来一个一个地接受订单。如果客户点了菜单上没有的东西,请忽略该订单并转到下一个客户。使用组中的客户数量来确定循环将执行多少次。不要要求用户输入特殊值(例如 -1)来停止循环。计算并显示该组需要支付的总金额。
最佳答案
您需要在 switch 语句之外询问客户他们想要什么组合。我将只使用伪代码,所以我不会直接为你做功课:
var total = 0;
var numCust = "How Many Customers?"
for (int i = 0; i < numCust; i++){
var combo = "What Combo do you want?"
switch (combo){
case 1:
total += 4.25;
break;
case 2:
total += 5.25;
break;
case 4:
total += 5.75;
break;
}
}
write("The total is: " + total);
关于c# - 介绍类 C# for 循环问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39669077/