C++编程

程序设计的逻辑思维-猜数字游戏

2019-05-12  本文已影响1人  某某呆

猜数字游戏

程序设计的逻辑思维

#include <stdio.h>

#include <time.h>

#include <stdlib.h>

void Guess(const char src[])

{

int i;

int count = 1;//猜次数的次数

int A_num;//猜中的A的个数

int B_num;//猜中的B的个数

char one, two, three, four;//分别表示我们所输入的四个数字

while(1)

{

A_num = B_num = 0;

fflush(stdin);

printf("请输入你第%d次猜测的数字(4位不重复):", count++);

scanf(" %c %c %c %c", &one, &two, &three, &four);

for(i = 0; i < 4; ++i)

{

if(src[i] == one)

{

if(i == 0)

++A_num;

else

++B_num;

}

else if(src[i] == two)

{

if(i == 1)

++A_num;

else

++B_num;

}

else if(src[i] == three)

{

if(i == 2)

++A_num;

else

++B_num;

}

else if(src[i] == four)

{

if(i == 3)

++A_num;

else

++B_num;

}

}

printf("------------------------------------------ ");

if(A_num == 4)

{

printf("恭喜你,全部猜对了! ");

break;

}

else

{

printf("你猜测的结果是:%dA%dB ", A_num, B_num);

}

}

}

int main()

{

char chNum[4];//用于存放系统产生的随机4位数字

int i, index;

srand((unsigned)time(0));//初始化随机种子

index = 0;

//system("color F0");

//使用do...while循环让系统产生一个随机的4位数字

do

{

chNum[index] = rand() % 10 + '0';

//判断一下这个数字是否和前面产生的字符相同

for(i = 0; i < index; ++i)

{

if(chNum[i] == chNum[index])

--index;

}

++index;

}while(index < 4);

Guess(chNum);

return 0;

}

上一篇 下一篇

猜你喜欢

热点阅读