资源描述
.#include #include #include #include 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-ak) 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(a0;) 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(恭喜你赢了!nn); return 0; if(b-j=0) printf(你输得很奇怪。nn); 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(nn 设有n座山,比赛的双方或多方轮流搬山n); printf( 由你先搬第一座山,谁搬了最后一座山谁输n); for(;) printf( 输入1:人机对战 2:人人对战n); scanf(%d,&p); if(p=1)renji(); if(p=2)renren(); if(p!=1&p!=2) printf(别闹,好好输入。n); continue; printf(再来一局?n); printf(输入1继续,其余结束n); scanf(%d,&q); if(q!=1)break; else printf(加油,少年!nn); printf(游戏结束。); return 0;精选word范本!
展开阅读全文