题目: 点击打开链接
思路:比较简单
1.输入数据,选择记录每一行中的最大值;
2.根据每一行中的最大值,判断输出对应的字母;
3.将每一行中的最大值genuine公式进行计算,结果保留两位小数输出。
疑惑:
题目里测试案例给出的答案是37.98,实际计算结果是37.975。这样的例子说明保留两位小数输出是四舍五入的。而当利用头文件<iomanip>,使用setprecision(2)来精确两位小数输出时却输出答案37.97,但提交的程序却通过了。
代码:
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
double odd[3][3];
int b[3];
double max;
for(int i=0;i<3;++i)
{
b[i]=0;
max=0.0;
for(int j=0;j<3;++j)
{
cin>>odd[i][j];
if(odd[i][j]>max)
{
b[i]=j;
max=odd[i][j];
}
}
}
double sum=1.0;
int n;
for(int i=0;i<3;i++)
{
n=b[i];
switch(n)
{
case 0:
{
cout<<"W";
break;
}
case 1:
{
cout<<"T";
break;
}
case 2:
{
cout<<"L";
break;
}
}
cout<<" ";
sum*=odd[i][n];
}
double price=(sum*0.65-1)*2;
cout<<setprecision(2)<<fixed<<price<<endl;
system("pause");
return 0;
}