Read Phone Number
/*
* ===================================================================================== * * Filename: readphonenumber.c * * Description: * * Version: 1.0 * Created: 2014年02月16日 10时16分13秒 * Revision: none * Compiler: gcc * * Author: Wenxian Ni (Hello World~), niwenxianq@qq.com * Organization: AMS/ICT * * ===================================================================================== */ #include<stdio.h> #include<string.h> #include<stdlib.h> void PrintNumber(char n, int m) { int i; switch(m) { case 1: break; case 2: printf("double "); break; case 3: printf("triple "); break; case 4: printf("quadruple "); break; case 5: printf("quintuple "); break; case 6: printf("sextuple "); break; case 7: printf("septuple "); break; case 8: printf("octuple "); break; case 9: printf("nonuple "); break; case 10: printf("decuple "); break; default: break; } switch(n) { case '0': printf("zero"); break; case '1': printf("one"); break; case '2': printf("two"); break; case '3': printf("three"); break; case '4': printf("four"); break; case '5': printf("five"); break; case '6': printf("six"); break; case '7': printf("seven"); break; case '8': printf("eight"); break; case '9': printf("nine"); break; defalut: break; } } void ReadNumber(char *q, int n) { if(n==1) { PrintNumber(*q, 1); return ; } char *p = q+1; int i = 1; int m = 1; for(i=2;i<=n;p++,i++) { if(*p==*(p-1)) { m++; } else { PrintNumber(*(p-1), m); printf(" "); m = 1; } } PrintNumber(*(p-1), m); } int main() { int T; int ncase; int lens; char numberPhone[200]; char splitNumber[400]; char *buf, *nub, *spl; freopen("in.in","r",stdin); freopen("out.in","w",stdout); while(~scanf("%d",&T)) { ncase=1; while(ncase!=T+1) { scanf("%s",numberPhone); scanf("%s",splitNumber); printf("Case #%d: ",ncase); nub = numberPhone; spl = splitNumber; buf = strstr(spl,"-"); lens = 0; while(buf!=NULL) { buf[0]='\0'; nub += lens; lens = atoi(spl); ReadNumber(nub,lens); spl = buf + 1; buf = strstr(spl,"-"); printf(" "); } nub += lens; lens = atoi(spl); ReadNumber(nub,lens); printf("\n"); ncase++; } } return 0; }
小数据可过,大数据还要改正下
每天早上叫醒你的不是闹钟,而是心中的梦~