程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> uva_10815-Andys First Dictionary

uva_10815-Andys First Dictionary

編輯:C++入門知識

[cpp] 
/*就是一個結構體計數加排序*/ 
#include <cstdio> 
#include <cstring> 
#include <iostream> 
#include <algorithm> 
using namespace std; 
 
#define MAXL 2001 
#define MAXC 76 
 
typedef struct{ 
    string name; 
    int num; 
}Country; 
 
char s[MAXC]; 
Country country[MAXL]; 
 
int countrycmp(const void *a, const void *b){ 
    return ((Country const*)a)->name > ((Country const*)b)->name; 

 
int main(int argc, char const *argv[]) 

 
    int cas, sum=0, i, j; 
    string str; 
    scanf("%d",&cas); 
    getchar(); 
    while(cas--){ 
        gets(s); 
        str=""; 
        for(i=0; s[i]!=' '; i++) 
                str += s[i]; 
        str[i]=='\0'; 
        for(i=0; i<sum; i++){ 
            if(str==country[i].name){ 
                country[i].num++; 
                i--; 
                break; 
            } 
        }  www.2cto.com
        if(i==sum) 
            country[sum++].name = str; 
    } 
    qsort(country, sum, sizeof(Country), countrycmp); 
    for(i=0; i<sum; i++){ 
        cout<<country[i].name<<" "<<country[i].num+1<<endl; 
    } 
    return 0; 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved