一、如图所示:
二、具体步骤:
1) 商品类(商品ID,商品Name,商品Price)
class Goods
{
//商品编号
private int id;
public int Id
{
get { return id; }
set { id = value; }
}
//商品名称
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
//单价
private double price;
public double Price
{
get { return price; }
set { price = value; }
}
}
2) 购物类(初始化商品,菜单,打印小票)
<strong> </strong>//商品数组
Goods[] goods = new Goods[3];
/// <summary>
/// 初始化
/// </summary>
public void Initial()
{
goods[0] = new Goods();
goods[0].Id = 1;
goods[0].Name = "农夫山泉";
goods[0].Price = 1.03;
goods[1] = new Goods();
goods[1].Id = 2;
goods[1].Name = "方便面";
goods[1].Price = 3.50;
goods[2] = new Goods();
goods[2].Id = 3;
goods[2].Name = "火腿";
goods[2].Price = 12.63;
}
/// <summary>
/// 显示所有的商品
/// </summary>
public void ShowGoods()
{
Initial();
Console.WriteLine("编号\t商品名\t\t单价");
foreach (Goods item in goods)
{
Console.WriteLine("{0,-4}\t{1,-8}\t{2:0.00}",item.Id,item.Name,item.Price);
}
Console.WriteLine();
}
/// <summary>
/// 菜单
/// </summary>
public void ShowMenu()
{
string buy = string.Empty;
string str = "\n\n----------欢迎光临大润发超市----------";
str = string.Format("{0}\n{1,-8}\t{2,-4:F2}\t{3,-4}\t{4,-4:F2}", str, "商品名称", "单价", "数量", "小计");
double sum = 0;
do
{
Console.Write("输入商品编号:");
int id = Convert.ToInt32(Console.ReadLine());
//声明变量
bool flag = false;
Goods gg = null;
int count = 0;
//循环判断是否有这个商品
foreach (Goods item in goods)
{
if (item.Id == id)
{
Console.Write("输入购买数量:");
count = Convert.ToInt32(Console.ReadLine());
flag = true;
//保存商品
gg = item;
break; //结束循环
}
else
{
flag = false;
}
}//for end
if (!flag)
{
Console.WriteLine("请重新输入编号!\n");
continue;
}
// 添加购物信息到购物小票
str =string.Format("{0}\n{1,-8}\t{2,-4:F2}\t{3,-4}\t{4,-4:C2}",str,gg.Name,gg.Price,count,gg.Price*count);
// 计算购物总额
sum += gg.Price * count;
Console.Write("输入e停止购物,输入其他任意继续购物:");
buy = Console.ReadLine();
Console.WriteLine();
} while (!buy.Equals("e"));
// 添加购物总额到购物小票
Console.WriteLine("{0}\n\n总计:{1:C2}",str,sum);
}
}
}
3)测试类
Shopping sh = new Shopping();
sh.ShowGoods();
sh.ShowMenu();
总结:使用了类与对象,数组对象,循环,分支语句,逻辑判断,字符的格式等等知识点!