设计C语言程序,游戏规则:21根火柴,一次只能拿走1或2或3或4根,不能不拿不能弃权,人与电脑比赛。

[复制链接]
查看11 | 回复3 | 2007-6-2 00:45:48 | 显示全部楼层 |阅读模式
#include int f(int n){ switch(n){ case 0:return 4; case 4:return 3; case 3:return 2; case 2:return 1; } return 0; } void main(){ int m=21,n; do{ scanf("%d",&n); m-=n; n=f(m%5); printf ("%d\n",n); m-=n; }while(m>1); } 其实有更简单的,如下: #include void main(){ int n; do{ scanf("%d",&n); printf ("%d\n",5-n); }while(1); }
回复

使用道具 举报

千问 | 2007-6-2 00:45:48 | 显示全部楼层
你的意思是拿到最后一根的算输吧,要看顺序的,先拿的就一定输。——————————————int match=21;int finish=0;//结束标志int err//错误标志do{if(match==1){cout>num;if(num!='1'&&num!='2'&&num!='3'&&num!='4'){cout<<"你的输入不对!!请重新输入!"<<endl;err=1;}else{switch(num);case'1':case'2':case'3':case'4':defalt:match=match-5;break;}}while(err)}}while(!finish)
回复

使用道具 举报

千问 | 2007-6-2 00:45:48 | 显示全部楼层
,kkk
回复

使用道具 举报

千问 | 2007-6-2 00:45:48 | 显示全部楼层
你的问题没说明白,怎么就算赢了呢???
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行