根据结构体的一部分,进行排序,从而对该结构体排序

#include<cstdio>
#include<algorithm>
using namespace std;
struct S
{
    int n, l;
};
bool cmp(S a, S b)      //结构体排序    快速排序
{
    return a.l < b.l;  //快速排序     这里的   布尔变量  决定的是 对什么东西按照什么顺序排
}
int main()//以后就一直用c++,  这里的结构体变量声明很方便.
{
    int t, n;
    S s[35];                //不得不说   c++的 结构体声明6得很 .   
    scanf("%d", &t);
    while (t--)
    {
        scanf("%d", &n);
        for (int i = 0; i < n; i++)
            scanf("%d%d", &s[i].l, &s[i].n); //      结构体数组            有机会的话,再用一下结构体.
        sort(s,s+n,cmp);    //cmp   决定 排序      的对象和方法.   
        for (int i = 0; i < n; i++)
        {
            for (int k = 0; k < s[i].n; k++)
            {
                printf(">+");
                for (int j = 0; j < s[i].l - 2; j++)
                    printf("-");
                printf("+>\n");
            }
            printf("\n");
        }
    }
    return 0;
}

 

posted @ 2016-01-11 18:11  X-POWER  阅读(1842)  评论(0编辑  收藏  举报