百练 2799 浮点数格式 解题报告

1.链接:http://poj.grids.cn/practice/2799/

2.题目:

总时间限制:
1000ms
内存限制:
65536kB
描述
输入n个浮点数,要求把这n个浮点数重新排列后再输出
输入
第1行是一个正整数n(n<=10000),后面n行每行一个浮点数,保证小数点会出现, 浮点数的长度不超过50位,注意这里的浮点数会超过系统标准浮点数的表示范围。
输出
n行,每行对应一个输入。要求每个浮点数的小数点在同一列上,同时要求首列上不会全部是空格。
样例输入
2

-0.34345

4545.232

样例输出
  -0.34345

4545.232

3.代码:

 1 #include <iostream>

 2 #include <cstring>

 3 #include <cstdio>

 4 #include <cstdlib>

 5 

 6 using namespace std;

 7 

 8 #define LEN 60

 9 #define MAX 10010

10 

11 int main()

12 {

13     char strs[MAX][LEN];

14     int pos[MAX];

15     

16     int n;

17     cin>>n;

18     

19     int maxlen = -1;

20     for(int i = 0; i < n; i++)

21     {

22         scanf("%s",strs[i]);

23         int j = 0;

24         while(strs[i][j] != '.') j++;

25         if(maxlen < j) maxlen = j;

26         pos[i] = j;

27     }

28     

29     for(int i = 0; i < n; i++)

30     {

31         for(int j = 0; j < maxlen - pos[i]; j++) cout<<' ';

32         cout<<strs[i]<<endl;

33     }

34     return 0;

35 }

4.思路:

(1)水题,咋看是大浮点数排序,看清楚其实只是简单的字符串操作而已

你可能感兴趣的:(浮点数)