【发布时间】:2013-10-16 20:59:37
【问题描述】:
请帮忙!我无法产生我的程序的输出。这是条件: 构建一个程序,如果购买的衬衫是 XL 并且价格大于 500,则给予 100 比索的折扣;如果购买的衬衫是L且价格大于600,则可享受50比索的折扣。
#include <iostream>
using namespace std;
int main()
{
int p;
int s;
cout << "Input price: ";
cin >> p;
cout << "Input size: ";
cin >> s;
switch (s)
{
case 'XL': case 'xl':
{
if (p>500){
cout << "Total price: " << p-100 << " pesos.";
break;
}
else if ((s=='XL' || s=='xl') && (p<500)){
cout << "Total price: " << p << " pesos.";
break;
}
}
case 'L': case 'l':
{
if (p>600){
cout << "Total price: " << p-50 << " pesos.";
break;
}
else if ((s=='XL' || s=='xl') && (p<600)){
cout << "Total price: " << p << " pesos.";
break;
}
}
case 'M': case 'm':
{
cout << "Total price: " << p << " pesos.";
break;
}
case 'S': case 's':
{
cout << "Total price: " << p << " pesos.";
break;
}
}
return 0;
}
程序的输出:
Input price: 500
Input size: XL
Process returned 0 (0x0) execution time : 5.750 s
Press any key to continue.
附:如何删除程序中的警告(多字符字符常量)? 提前致谢!
【问题讨论】:
-
为什么不将大小设为枚举并打开它?
标签: c++ switch-statement character constants output