好懒,什么都没写
全部博文(89)
分类: C/C++
2006-10-08 09:38:08
#include static int upstep = 0; static int downstep = 0; void UpRing(); /*加上函数说明,否则编译将会出一点小错误*/ void DownRing(int n) /*下环的逻辑就体现在这里*/ { if(n>2) DownRing(n-2); printf("DW:%d\t",n);++downstep; if(n>2) UpRing(n-2); if(n>1) DownRing(n-1); } void UpRing(int n) /*上环的逻辑则体现在这里*/ { if(n>1) UpRing(n-1); if(n>2) DownRing(n-2); printf("UP:%d\t",n);++upstep; if(n>2) UpRing(n-2); } int main(int argc, char **argv) /*简洁的主函数*/ { if(argc < 2) { puts("Usage:./jiulianhuan 9"); return -1; } int rings = atoi(argv[1]); puts("Starting..."); DownRing(rings); puts("\nEnding...") printf("\nup = %d,\tdown = %d\n",upstep,downstep); return 0; } |