TA的每日心情 | 开心 2014-6-18 08:29 |
---|
签到天数: 14 天 [LV.3]偶尔看看II
滴水大师
 
- 积分
- 2345
|
题目
解决代码及点评[cpp] view plaincopy![]() ![]()
- <pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"></pre><pre class="cpp" name="code" code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179"><pre class="cpp" name="code" code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"></pre><pre code_snippet_id="91880" snippet_file_name="blog_20131209_3_8083210" class="cpp" name="code">/************************************************************************/
- /*
- 54. 有N张牌,计算机和你轮流取牌,每次只能取 1─2张,谁最后取完谁胜利。编写完成此功能的程序。
- 要求:
- 1) 让计算机先取。
- 2) 你取的张数由键盘输入。
- 3) 计算机第一次取牌时由键盘输入来确定是取1还是取2,以后它再取牌时由程序判断来决定取几张牌。
-
-
-
- */
- /************************************************************************/
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- #include <string.h>
-
-
-
- void main()
- {//默认设置 N>2;
- const int N=10;
- printf("总共有牌%d\n",N);
- int num=N;
- if (num<=2)
- {
- printf("这有什么好玩的....");
- goto loop;
- }
- int who=0;
- printf("请选择游戏选项 1 代表计算机先取 2,代表玩家先取\n");
- scanf_s("%d",&who);
- if (who==1)
- {
- printf("请为电脑第一次选择张数 1 或2 \n");
- int temp=0;
- scanf_s("%d",&temp);
- if (temp!=1&&temp!=2)
- {
- printf("谁让你乱按的!!");
- return;
- }
- num-=temp;
- while(num>1)
- {
- scanf_s("%d",&temp);
- if (temp!=1&&temp!=2)
- {
- printf("谁让你乱按的!!");
- goto loop;
- }
- else
- {
- num-=temp;
- printf("现在还剩%d张牌",num);
- }
- if (num==0)
- {
- printf("玩家赢了\n");
- goto loop;
- }
- else if (num==1)
- {
- printf("电脑赢了");
- goto loop;
- }
- if (num>1)
- {
- int temp1=rand()%2+1;
- printf("电脑选择%d\n",temp1);
- num-=temp1;
- printf("现在还剩%d张牌",num);
- }
-
- }
- if (num==0)
- {
- printf("电脑赢了");
- goto loop;
- }
- else if (num==1)
- {
- printf("玩家赢了");
- goto loop;
- }
-
-
- }
- else if (who==2)
- {
- int temp;
- while(num>1)
- {
- scanf_s("%d",&temp);
- if (temp!=1&&temp!=2)
- {
- printf("谁让你乱按的!!");
- goto loop;
- }
- else
- {
- num-=temp;
- printf("现在还剩%d张牌",num);
- }
- if (num==0)
- {
- printf("玩家赢了");
- goto loop;
- }
- else if (num==1)
- {
- printf("电脑赢了");
- goto loop;
- }
- if (num>1)
- {
- int temp1=rand()%2+1;
- printf("电脑选择%d\n",temp1);
- num-=temp1;
- printf("现在还剩%d张牌",num);
- }
-
- }
- if (num==0)
- {
- printf("电脑赢了");
- goto loop;
- }
- else if (num==1)
- {
- printf("玩家赢了");
- goto loop;
- }
-
- }
- else
- {
- printf("谁让你乱按的!!");
- }
-
- loop: system("pause");
- }</pre><br><br></pre></pre></pre>
|
|