测试数据名称HDU1263:水果

今天笔者几篇文章介绍了改测试数据名称的文章. 关联文章的地址

    

Problem Description

    

炎天来了~~好开心啊,呵呵,很多多少很多多少生果~~
Joe运营着一个不大的生果店.他以为生存之道就是运营最受顾客欢送的生果.现在他想要一份生果销售情况的明细表,这样Joe就可以很容易掌握所有生果的销售情况了.

    

 

    

Input

    

第一行正整数N(0<N<=10)表现有N组测试数据.
每组测试数据的第一行是一个整数M(0<M<=100),表现工有M次成功的交易.其后有M行数据,每行表现一次交易,由生果名称(小写字母组成,长度不超过80),生果产地(小写字母组成,长度不超过80)和交易的生果数目(正整数,不超过100)组成.

    

 

    

Output

    

对于每一组测试数据,请你输出一份排版格式正确(请分析样本输出)的生果销售情况明细表.这份明细表包含所有生果的产地,名称和销售数目的信息.生果先按产地分类,产地按字母顺序排列;统一产地的生果按照名称排序,名称按字母顺序排序.
两组测试数据之间有一个空行.最后一组测试数据以后没有空行.

    

 

    

Sample Input
1 5 apple shandong 3 pineapple guangdong 1 sugarcane guangdong 1 pineapple guangdong 3 pineapple guangdong 1
 

    

Sample Output
guangdong |----pineapple(5) |----sugarcane(1) shandong |----apple(3)
 

    
题目已很明确了,就不需要我多说了

    一道简略的结构体排序

    每日一道理
信念是巍巍大厦的栋梁,没有它,就只是一堆散乱的砖瓦;信念是滔滔大江的河床,没有它,就只有一片泛滥的波浪;信念是熊熊烈火的引星,没有它,就只有一把冰冷的柴把;信念是远洋巨轮的主机,没有它,就只剩下瘫痪的巨架。
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;

struct Node
{
    char name[100];
    char space[100];
    int num;
} f[110];

int cmp(Node x,Node y)
{
    if(strcmp(x.space,y.space))
        return strcmp(x.space,y.space)<0;
    return strcmp(x.name,y.name)<0;
}

int main()
{
    int t,n,i;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d%*c",&n);
        for(i = 0; i<n; i++)
        {
            scanf("%s%s%d",f[i].name,f[i].space,&f[i].num);
        }
        sort(f,f+n,cmp);
        char di[100],min[100];
        int cnt = 0,flag = 1;
        strcpy(di,f[0].space);
        strcpy(min,f[0].name);
        for(i = 0; i<n; i++)
        {
            if(strcmp(di,f[i].space))
            {
                strcpy(di,f[i].space);
                strcpy(min,f[i].name);
                flag = 1;
                cnt = 0;
            }
            if(!strcmp(di,f[i].space))
            {
                if(flag)
                {
                    printf("%s\n",di);
                    flag = 0;
                }
                if(!strcmp(min,f[i].name))
                {
                    while(!strcmp(min,f[i].name) && !strcmp(di,f[i].space))//产地与生果名都必须雷同
                    {
                        cnt+=f[i].num;
                        i++;
                    }
                    printf("   |----%s(%d)\n",min,cnt);
                    strcpy(min,f[i].name);
                    i--;
                    cnt = 0;
                }
            }
        }
        if(t)
        printf("\n");
    }

    return 0;
}

文章结束给大家分享下程序员的一些笑话语录: 这年头的互联网真是娱乐了中国,网民们从各种各样的“门”里钻来钻去,又有好多“哥”好多“帝”,值得大家品味不已……网络经典语录,关于IT与互联网,经典与您分享!

--------------------------------- 原创文章 By
测试数据和名称
---------------------------------

原文地址:https://www.cnblogs.com/jiangu66/p/3111311.html