本系列文章导航
四大发明之活字印刷面向对象思想的胜利
小菜编程成长记(一 面试受挫代码无错就是好?)
小菜编程成长记(二 代码规范、重构)
小菜编程成长记(三 复制VS复用)
小菜编程成长记(四 业务的封装)
小菜编程成长记(五 体会简单工厂模式的美妙)
小菜编程成长记(五 体会简单工厂模式的美妙)
小菜编程成长记(五 体会简单工厂模式的美妙)
小菜编程成长记(六 工厂不好用了?)
小菜编程成长记(七 用“策略模式”是一种好策略)
小菜编程成长记(八 反射程序员的快乐!)
小菜编程成长记(九 会修电脑不会修收音机?聊设计模式原则)
小菜编程成长记(十 三层架构,分层开发)
小菜编程成长记(十一 无熟人难办事?聊设计模式迪米特法则)
小菜编程成长记(十二 有了门面,程序员的程序会更加体面!)
小菜编程成长记(十三 设计模式不能戏说!设计模式怎就不能戏说?)
(续上篇)
小菜心里想:“大鸟要我做的是一个商场收银软件,营业员根据客户购买商品单价和数量,向客户收费。这个很简单,两个文本框,输入单价和数量,再用个列表框来记录商品的合计,最终用一个按钮来算出总额就可,对,还需要一个重置按钮来重新开始,不就行了?!”
代码样例(可使用):
商场收银系统v1.0关键代码如下:
Code
//声明一个double变量total来计算总计
double total = 0.0d;
private void btnOk_Click(object sender, EventArgs e)
{
//声明一个double变量totalPrices来计算每个商品的单价(txtPrice)*数量(txtNum)后的合计
double totalPrices=Convert.ToDouble(txtPrice.Text) * Convert.ToDouble(txtNum.Text);
//将每个商品合计计入总计
total = total + totalPrices;
//在列表框中显示信息
lbxList.Items.Add("单价:"+txtPrice.Text+" 数量:"+txtNum.Text+" 合计:"+totalPrices.ToString());
//在lblResult标签上显示总计数
lblResult.Text = total.ToString();
}
“大鸟,”小菜叫道,“来看看,这不就是你要的收银软件吗?我不到半小时就搞定了。”
“哈哈,很快吗,”大鸟说着,看了看小菜的代码。接着说:“现在我要求商场对商品搞活动,所有的商品打8折。”
“那不就是在totalPrices后面乘以一个0.8吗?”
“小子,难道商场活动结束,不打折了,你还要再把程序改写代码再去把所有机器全部安装一次吗?再说,我现在还有可能因为周年庆,打五折的情况,你怎么办?”
小菜不好意思道:“啊,我想得是简单了点。其实只要加一个下拉选择框就可以解决你说的问题。”
大鸟微笑不语。商场收银系统v1.1关键代码如下:
Code
double total = 0.0d;
private void btnOk_Click(object sender, EventArgs e)
{
double totalPrices=0d;
//cbxType是一个下拉选择框,分别有“正常收费”、“打8折”、“打7折”和“打5折”
switch(cbxType.SelectedIndex)
{
case 0:
totalPrices = Convert.ToDouble(txtPrice.Text) * Convert.ToDouble(txtNum.Text);
break;
case 1:
totalPrices = Convert.ToDouble(txtPrice.Text) * Convert.ToDouble(txtNum.Text) * 0.8;
break;
case 2:
totalPrices = Convert.ToDouble(txtPrice.Text) * Convert.ToDouble(txtNum.Text) * 0.7;
break;
case 3:
totalPrices = Convert.ToDouble(txtPrice.Text) * Convert.ToDouble(txtNum.Text) *
0.5;
break;
}
total = total + totalPrices;
lbxList.Items.Add("单价:" + txtPrice.Text + " 数量:" + txtNum.Text + " "+cbxType.SelectedItem+ " 合计:" + totalPrices.ToString());
lblResult.Text = total.ToString();
}继续>>下一页[第1页][第2页][第3页]