求c语言 翻纸牌游戏

有6张牌112233随机排序以后输入第几张牌电脑显示相对应的牌接着再输入一次如果第二次显示的牌和第一次相同则显示配对成功不对则那张牌然后显示不成功接着从新各输入2次牌3对... 有6张牌112233
随机排序以后 输入第几张牌 电脑显示相对应的牌 接着再输入一次 如果第二次显示的牌和第一次相同则显示配对成功 不对则那张牌然后显示不成功 接着从新各输入2次牌
3对全部配对成功程序运行完成显示你成功了
有6张牌112233
随机排序以后 输入第几张牌 电脑显示相对应的牌 接着再输入一次 如果第二次显示的牌和第一次相同则显示配对成功 不对则显示那张牌然后显示不成功 接着重新各输入2次牌
3对全部配对成功程序运行完成显示你成功了
展开
 我来答
jimmy14888888
2015-07-26 · TA获得超过1340个赞
知道小有建树答主
回答量:550
采纳率:80%
帮助的人:356万
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
int main()
{
int a, b;
int i, p;
int oc = 0;
int card[6] = { 0,0,0,0,0,0 };
int opened[6] = { 0,0,0,0,0,0 };
srand(time(0));
for (i = 1; i <= 6; i++)
{
p = rand() % 6;
while (card[p]) p = rand() % 6;
card[p] = (i + 1) / 2;
}
printf("按任意键开始");
getch();
while (oc < 3)
{
do
{
system("cls");
for (int i = 0; i < 6; i++)
if (opened[i])
printf("%d", card[i]);
else
printf("*");
printf("\n");
printf("输入你第一张牌的位置:");
scanf("%d", &a);
} while (!(0 < a && a <= 6 && !opened[a - 1]));

do
{
system("cls");
for (int i = 0; i < 6; i++)
if (opened[i] || i == a - 1)
printf("%d", card[i]);
else
printf("*");
printf("\n");
printf("输入你第二张牌的位置:");
scanf("%d", &b);
} while (!(0 < b && b <= 6 && !opened[b - 1] && b != a));

system("cls");
for (int i = 0; i < 6; i++)
if (opened[i] || i == a - 1 || i == b - 1)
printf("%d", card[i]);
else
printf("*");
printf("\n");
printf("按键继续");
getch();

if (card[a - 1] == card[b - 1])
{
oc++;
opened[a - 1] = 1;
opened[b - 1] = 1;
}
}
system("cls");
printf("恭喜你成功了");
return 0;
}

运行效果:

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式