效果:
guodeMacBook-Air:programming_in_goguo$gorun1_1.go1234 122222233333344 112344 1222222333333444444 1234 11111112222223333334
go 源码(节选)
packagemain import( "fmt" "os" ) funcmain(){ iflen(os.Args)!=2{ fmt.Printf("%snumber\n",os.Args[0]) return } bigdigits:=[][]string{ {"000","00","000",},{ "1","11","1","1111111",{ "999999","99","999999","9",} forrow:=rangebigdigits[0]{ strdigit:=os.Args[1] line:="" fori:=rangestrdigit{ d:=strdigit[i]-'0' ifd<0||d>9{ fmt.Printf("errornumber\n") return } line+=bigdigits[d][row]+"" } fmt.Printf("%s\n",line) } }
完成同同样效果的c语言源码(节选)
#include<stdio.h> #include<stdlib.h> intmain(intargc,char**argv){ constchar*(a[][11])={ {"000","1111111" },"999999" } }; if(argc!=2){ printf("Usage:%s<number>\n",argv[0]); return0; } char*p; intd,r,row; row=(int)(sizeof(a[0])/sizeof(a[0][0])); for(r=0;r<row;r++){ for(p=argv[1];*p;p++){ d=*p-'0'; if(d<0||d>9){ printf("errornumber\n"); returnEXIT_FAILURE; } if(a[d][r]==NULL) gotodone; printf("%s",a[d][r]); } printf("\n"); } done: return0; }