C++switch语句怎么应用到此题???急求!!!

2024-11-16 20:49:15
推荐回答(2个)
回答1:

switch不能用在范围中,只能是整型数据,所以这个程序用不上switch,下面是一个参考程序,需要退出输入q
#include 
using namespace std;
int main()
{
    int time = 0, salary = 0;
    while ( true )
    {
        cout<<"请输入工作时数、小时工资,结束请输入q:"<        cin<        if ( time == 'q' || salary == 'q' ) break;
        if ( time <= 40 )
        {
            cout<<"该人工资为:"<            continue;
        }
        if ( time > 40 && time <= 50 )
        {
            cout<<"该人工资为:"<<40 * salary + (time - 40) * 1.5 * salary<            continue;
        } 
        if ( time > 50 )
        {
            cout<<"该人工资为:"
            <<40 * salary + 10 * 1.5 * salary + (time - 50)*3*salary
            <            continue;
        }        
    }
    return 0;
}

回答2:

#include 
using namespace std;
int main()
{
double Hour,PayPer,Pay;
do
{
cout<<"输入工作时数及单位时间基本工资:";
cin>>Hour>>PayPer;
bool f1=(Hour>40);
bool f2=(Hour>50);
switch(f1)
{
case 0:
Pay=Hour*PayPer;
cout<<"输出:"< break;
case 1:
switch(f2)
{
case 0:
Pay=40*PayPer+(Hour-40)*1.5*PayPer;
cout<<"输出:"< break;
case 1:
Pay=40*PayPer+10*1.5*PayPer+(Hour-50)*3*PayPer;
cout<<"输出:"< break;
}
break;
}
}while(Hour!=0&&PayPer!=0);
return 0;
}
符合你的要求,输入0 0程序结束,满意请采纳!