Problem 1782. -- 分数排序

1782: 分数排序

Time Limit: 1 Sec  Memory Limit: 128 MB   64bit IO Format: %lld
Submitted: 259  Accepted: 128
[Submit][Status][Web Board]

Description

现在有n个分数,需要你编写程序将他们从小到大顺序输出。
一个分数存放在一个结构体中,包括分子(num)和分母(den),均为int。

注意:main函数已经给定(如下所示)。

           请将程序补充完整。

           提交时只需要提交自己补充的代码部分,不需要提交给定的main函数的代码部分。

#include<stdio.h>
int main()
{
    int n,m,i,t;
    struct Fraction fract[100];
    while(scanf("%d",&n)!=EOF)
    {
        input(fract,n);   //读入n个分数到结构体数组fract
        sort(fract,n);   //对n个分数从小到大排序
        print(fract,n);   //从小到大输出n个分数
    }
    return 0;
}

Input

包含多组测试数据,每组测试数据包含一行。每行第一个正整数n代表待排序的分数个数。后面紧接2n个整数,从前往后每两个整数构成一个分数,其中分子在前,分母在后。其中n<100,且每个分数的父母均大于0,分子均大于等于0.

Output

每组测试数据输出占1行。首先输出分数个数n,然后从小到大输出n个分数,每个分数按照“分子/分母”的形式输出。数据之间用空格隔开。

Sample Input

11 0 1 1 5 1 4 1 3 2 5 1 2 3 5 2 3 3 4 4 5 1 1

Sample Output

11 0/1 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 1/1

[Submit][Status][Web Board]