PAT1011 World Cup Betting练习心得

写这个只是想记录一下本人在刷PAT过程中遇到的一些问题和自己的总结。
现本人情况为:学习了C语言和数据结构,JAVA语言,C++只是一知半解,并没有全部掌握,所以在刷题的过程中,同时记录C++的学习。

1011 World Cup Betting

1.对于题目理解出现问题,需要加强中英文的翻译,没有仔细阅读题目,一开始只是简单粗略地了解题目中的各种要求,结果出现输入结果与要求不一致,这个也是检查了很多遍才发现的,不能只根据题目给出的输出格式来输出还要阅读文中的文字要求。
本题要求的是:
For each test case, print in one line the best bet of each game, and the maximum profit accurate up to 2 decimal places. The characters and the number must be separated by one space.
对于每一个测试用例,打印一行中每个游戏的最佳赌注,最大利润精确到小数点后2位。字符和数字必须用一个空格隔开。

意思便是,每输入一行,就要求出字符,并且输出,字符和数字中间用一个空格隔开。而不是和输出样例中显示的最后输出结果。
正确的如下:
1.1 2.5 1.7
T 1.2 3.1 1.6
T 4.1 1.2 1.1
W 39.31
错误的如下:
1.1 2.5 1.7
1.2 3.1 1.6
4.1 1.2 1.1
T T W 39.31

2.然后可以用一个字符数组存储W、T、L,求出每一个测试用例中的最佳赌注,根据输入的顺序,输出相应的字符。

3.代码如下:

#include<cstdio>
using namespace std;
char str[3]={
    
    'W','T','L'};
int main(){
    
    
	int x=0;
	double sum=1.0,n=0,m=0.0;	
	for(int i=0;i<3;i++){
    
    
		n=0.0;
		for(int j=0;j<3;j++){
    
    
		   scanf("%lf",&m);
		   if(m>n){
    
     		       
			   x=j;	
			   n=m;
   		   }	   	
		}
		sum*=n;
		printf("%c ",str[x]);
	}		
	printf("%.2lf",(sum*0.65-1)*2);
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_44696740/article/details/104086730