C语言300行代码(整理).docVIP

  • 153
  • 0
  • 约2.35千字
  • 约 3页
  • 2020-10-22 发布于广东
  • 举报
PAGE PAGE 1 #include stdio.h #include time.h #include windows.h #include stdlib.h int renji(); int renren(); int renji() { int n,k,a,b,m; printf(分别输入山数,每次最大搬山量,用空格隔开,回车结束\n); scanf(%d%d,n,k); printf(开始了,你先来吧。\n); for(;n0;) { scanf(%d,a); if(ak){printf(搬山数需小于%d个\n,k);continue;} if(n-a0){printf(没有那么多山了。。。\n);continue;} if(a==0){printf(不能不搬山\n);continue;} if(n-a==1){printf(好吧你赢了\n);break;} if(n-a==0){printf(哈哈哈哈,你输了,猪\n);break;} n=n-a; if(nk) { b=(n-1)%(k+1); if(b==0)b=1; } else b=n-1; n=n-b; printf(对手搬%d个,剩%d个\n,b,n); } return 0; } int renren() { int a,b,c,d,i,j; printf(分别输入人数、山数,每次最大搬山量,用空格隔开,回车结束\n); scanf(%d%d%d,a,b,c); if(a2) { printf(%d个人怎么玩。。。\n); return 0; } for(;b0;) { for(i=1;;i++) { printf(下面由第%d位玩家搬山\n,i); goto L; L:scanf(%d,j); if(jc) { printf(搬山数需小于%d个\n,c); goto L; } if(b-j0) { printf(没有那么多山了。。。\n); goto L; } if(j==0) { printf(不能不搬山\n); goto L; } if(b-j==1) { printf(恭喜你赢了!\n\n); return 0; } if(b-j==0) { printf(你输得很奇怪。\n\n); return 0; } b=b-j; printf(第%d位玩家搬%d个,剩余%d个,i,j,b); if(i==a)i=0; } } return 0; } int main() { int q,p; system(color D1); system(mode con cols=60 lines=12); printf(\n\n 设有n座山,比赛的双方或多方轮流搬山\n); printf( 由你先搬第一座山,谁搬了最后一座山谁输\n); for(;;) { printf( 输入1:人机对战 2:人人对战\n); scanf(%d,p); if(p==1)renji(); if(p==2)renren(); if(p!=1p!=

文档评论(0)

1亿VIP精品文档

相关文档