广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 6531 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
satan0124
个人文章 个人相簿 个人日记 个人地图
路人甲
级别: 路人甲 该用户目前不上站
推文 x0 鲜花 x0
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[C/C++][范例] 与电脑猜拳的范例
本程式仅供参考之用,并未加上除错机制。
#include <time.h>
#include <stdlib.h>
#include <iostream>
using namespace std;

void main()
{
srand (time(0));
char a = {'a','b','c'};
char b;
int c = 0; // 暂时记录乱数值
int d = 0; // 暂时记录乱数值
int e = 0; // 交换两数所暂存的变数
int w = 0; // 记录赢的次数
int l = 0; // 记录输的次数

cout << "─◎─猜拳─◎─" << endl;
for(;;)
{
cout << "请选择您要出的拳(a.剪刀 b.石头 c.布.......q.离开): ";
cin >> b;

for(int i = 0; i <= 500; i++) // i <= 500 表对调次数,可自行修改想要进行几次的对调
{
c = rand()%3; // 乱数取得0,1,2三数
d = rand()%3;
e = a;
a = a; // 乱数将阵列里的三个字元对调
a = e;
}

if (a == b) // 每次猜完一次拳之后,程式会再次将字元给做对调
{
cout < ..

访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容




献花 x0 回到顶端 [楼 主] From:台湾 | Posted:2009-04-28 07:27 |
ronlain
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x1 鲜花 x11
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

一点点小意见
1. 只用到a[0]其实交换500次没有意义
2. 建议用switch写 程式可读性会比较好


献花 x0 回到顶端 [1 楼] From:台湾中华 | Posted:2009-05-09 09:08 |
海洋天使 手机
数位造型
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x35
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

用 a b c 程式可读性会降低不少

建议是用些有意义的句子啰^^


献花 x0 回到顶端 [2 楼] From:欧洲 | Posted:2009-05-25 10:21 |
kioko
数位造型
个人文章 个人相簿 个人日记 个人地图
路人甲
级别: 路人甲 该用户目前不上站
推文 x0 鲜花 x1
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

复制程式
#include <stdio.h>
#include <iostream> 
#include <stdlib.h> 
#include <conio.h>

using namespace std ; 

main ()
{
       int c_ai=0, c_select=0, c_count=0, c_win=0, c_lost=0, c_peace=0; 
       while(1){
              c_ai=rand()%3;
              printf("\n"); 
              printf("一@一 猜拳游戏 一@一");
              printf("\n"); 
              printf("目前游戏次数 %d 共获得 %d 次胜利 %d 次失败 %d 次平手\n",c_count,c_win,c_lost,c_peace);
              printf("\n");
              printf("请问您选择的是 (0).剪刀 (1).石头 (2).布 (3).离开游戏 ... ? "); 
              scanf("%d",&c_select);
              c_count++; 
              switch(c_select){
                     case 0:
                            printf("你 出的是 < 剪刀 > ...\n");
                            switch(c_ai){
                                   case 0:
                                          printf("电脑出的是 < 剪刀 > ...\n");
                                          printf("判决 \"平手\" ...\n");
                                          c_peace++; 
                                          break;
                                   case 1:
                                          printf("电脑出的是 < 石头 > ...\n");
                                          printf("判决 \"你输了\" ...\n");
                                          c_lost++; 
                                          break;
                                   case 2:
                                          printf("电脑出的是 < 布 > ...\n");
                                          printf("判决 \"你胜利了\" ...\n");
                                          c_win++; 
                                          break;       
                            }
                            break; 
                     case 1:
                            printf("你 出的是 < 石头 > ...\n");
                            switch(c_ai){
                                   case 0:
                                          printf("电脑出的是 < 剪刀 > ...\n");
                                          printf("判决 \"你胜利了\" ...\n");
                                          c_win++; 
                                          break;
                                   case 1:
                                          printf("电脑出的是 < 石头 > ...\n");
                                          printf("判决 \"平手\" ...\n");
                                          c_peace++; 
                                          break;
                                   case 2:
                                          printf("电脑出的是 < 布 > ...\n");
                                          printf("判决 \"你输了\" ...\n");
                                          c_lost++; 
                                          break;       
                            }
                            break; 
                     case 2:       
                            printf("你 出的是 < 布 > ...\n");
                            switch(c_ai){
                                   case 0:
                                          printf("电脑出的是 < 剪刀 > ...\n");
                                          printf("判决 \"你输了\" ...\n");
                                          c_lost++; 
                                          break;
                                   case 1:
                                          printf("电脑出的是 < 石头 > ...\n");
                                          printf("判决 \"你胜利了\" ...\n");
                                          c_win++; 
                                          break;
                                   case 2:
                                          printf("电脑出的是 < 布 > ...\n");
                                          printf("判决 \"平手\" ...\n");
                                          c_peace++; 
                                          break;       
                            }
                            break; 
                     case 3:
                            exit(1); 
                            break;
                     default:
                            printf("输入错误请重新选择 ...\n");
                            break; 
              } 
              getch();
              system("cls"); 
       } 
}

Switch版本


献花 x0 回到顶端 [3 楼] From:台湾 | Posted:2009-09-15 09:06 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.060587 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言