![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
C#.windows应用程序. 要求编写一个小程序.
C#.windows应用程序.要求编写一个小程序.商品单价.商品数量.折扣.实际应付金额.输入商品单价和商品数量.计算得出折扣和实际应付金额.数据如下:小于100元.折扣...
C#.windows应用程序. 要求编写一个小程序.商品单价.商品数量.折扣.实际应付金额.
输入商品单价和商品数量.计算得出折扣和实际应付金额.
数据如下:小于100元.折扣0.
100到200元.折扣2%.
200到500元.折扣5%.
500到1000元.折扣10%.
大于1000元.折扣15%.
请速度解答.把button1中的要编写的解答出来就行.我老是找不到自己哪编错了...
忘说了.要用Switch语句.谢谢yanchao14了... 展开
输入商品单价和商品数量.计算得出折扣和实际应付金额.
数据如下:小于100元.折扣0.
100到200元.折扣2%.
200到500元.折扣5%.
500到1000元.折扣10%.
大于1000元.折扣15%.
请速度解答.把button1中的要编写的解答出来就行.我老是找不到自己哪编错了...
忘说了.要用Switch语句.谢谢yanchao14了... 展开
5个回答
展开全部
可以把大的数字转化成小一点的数字在使用switch
double price = Convert.ToDouble(textBox1.Text);
double number = Convert.ToDouble(textBox2.Text);
double discount, paymoney;
paymoney = price * number;
int temp = Convert.ToInt32(paymoney/100);
switch (temp)
{
case 0: discount = 0;
textBox4.Text = (paymoney - (paymoney * discount)).ToString() ;
textBox3.Text = (discount*paymoney).ToString();
break;
case 1: discount = 0.02;
textBox4.Text = (paymoney - (paymoney * discount)).ToString();
textBox3.Text = (discount*paymoney).ToString();
break;
case 2:
case 3:
case 4: discount = 0.05;
textBox4.Text = (paymoney - (paymoney * discount)).ToString();
textBox3.Text = (discount*paymoney).ToString();
break;
case 5:
case 6:
case 7:
case 8:
case 9: discount = 0.10;
textBox4.Text = (paymoney - (paymoney * discount)).ToString();
textBox3.Text = (discount*paymoney).ToString();
break;
default:discount = 0.15;
textBox4.Text = (paymoney - (paymoney * discount)).ToString();
textBox3.Text = (discount*paymoney).ToString();
break;
}
double price = Convert.ToDouble(textBox1.Text);
double number = Convert.ToDouble(textBox2.Text);
double discount, paymoney;
paymoney = price * number;
int temp = Convert.ToInt32(paymoney/100);
switch (temp)
{
case 0: discount = 0;
textBox4.Text = (paymoney - (paymoney * discount)).ToString() ;
textBox3.Text = (discount*paymoney).ToString();
break;
case 1: discount = 0.02;
textBox4.Text = (paymoney - (paymoney * discount)).ToString();
textBox3.Text = (discount*paymoney).ToString();
break;
case 2:
case 3:
case 4: discount = 0.05;
textBox4.Text = (paymoney - (paymoney * discount)).ToString();
textBox3.Text = (discount*paymoney).ToString();
break;
case 5:
case 6:
case 7:
case 8:
case 9: discount = 0.10;
textBox4.Text = (paymoney - (paymoney * discount)).ToString();
textBox3.Text = (discount*paymoney).ToString();
break;
default:discount = 0.15;
textBox4.Text = (paymoney - (paymoney * discount)).ToString();
textBox3.Text = (discount*paymoney).ToString();
break;
}
展开全部
switch的case是不能判断条件的 只能是一个固定的值或枚举 所以像不能判断值是否(大于100并小于200)
如果一定要用恐怕只能这样
case 100: ..
case 101: ..
..
case 200: ..
如果一定要用恐怕只能这样
case 100: ..
case 101: ..
..
case 200: ..
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好,你的这个程序并不适合使用switch case分支进行处理,
如果非要使用的话,除了构造一个精巧的特例外,也可以这样:
double price=double.parse(textbox1.text);
double count=double.parse(textbox2.text);
double discount;
double paysum=0;
paysum=price*count;
if(paysum<100)
discount=1;
elseif (paysum<200)
discount=1-0.02;
elseif (paysum<500)
discount=1-0.05;
elseif(paysum<1000)
discount=1-0.1;
else
discount=1-0.15;
switch discount
{
case 1:
paysum=paysum*discount;
break;
case 0.98:
.......
}
messageBox.show("实际应付金额为:"+paysum.tostring());
如果非要使用的话,除了构造一个精巧的特例外,也可以这样:
double price=double.parse(textbox1.text);
double count=double.parse(textbox2.text);
double discount;
double paysum=0;
paysum=price*count;
if(paysum<100)
discount=1;
elseif (paysum<200)
discount=1-0.02;
elseif (paysum<500)
discount=1-0.05;
elseif(paysum<1000)
discount=1-0.1;
else
discount=1-0.15;
switch discount
{
case 1:
paysum=paysum*discount;
break;
case 0.98:
.......
}
messageBox.show("实际应付金额为:"+paysum.tostring());
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这些语言都不是专门针对某个操作系统的语言。C 和 C++ 一样,你要用专门的库函数来写Windows程序。C 就直接调用 WinAPI;MFC 是给 C++ 用的,封装了 WinAPI 在里面,相对好用一点,但最终还是调用 WinAPI。C# 是针对 .net 平台设计的语言,实现了所谓的“跨平台”,实际上是可以在不同平台上装 .net 环境,它也有一套图形界面的库,你的程序跟 .net 平台交互,.net 平台再跟系统交互,也就是 .net 最终会调用 API 来实现界面元素。
我可以帮助你,你先设置我最佳答案后,我百度Hii教你。你的串号我已经记下,采纳后我会帮你制作
我可以帮助你,你先设置我最佳答案后,我百度Hii教你。你的串号我已经记下,采纳后我会帮你制作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2020-07-03
展开全部
简单呀,你先判断金额在的范围,给出权重分再用Switch就可以了。
比如
if(金额<100)
{
权重=0;
}
else if(金额>=100)&&(金额<200)
{
权重=1;
}
esle if(金额>=200)&&(金额<500)
{
权重=2;
}
以此类推
然后用Switch(权重)
case0:
case1:
:
等等,就可以了
比如
if(金额<100)
{
权重=0;
}
else if(金额>=100)&&(金额<200)
{
权重=1;
}
esle if(金额>=200)&&(金额<500)
{
权重=2;
}
以此类推
然后用Switch(权重)
case0:
case1:
:
等等,就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询