设计一个猜数游戏程序?

设计一个猜数游戏程序?,第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 = 0i <4++i)

{

if(src[i] == one)

{

if(i == 0)

++A_num

else

++B_num

}

else if(src[i] == two)

{

if(i == 1)

else

}

else if(src[i] == three)

{

if(i == 2)

else

}

else if(src[i] == four)

{

if(i == 3)

else

}

}

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 = 0i <index++i)

{

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

--index

}

++index

}while(index <4)

Guess(chNum)

return 0

}

今天给大家分享的案例是 猜数字。

当程序开始运行时 会生成1-100之间的随机数,如55,我们在输入框中输入猜的数字。如输入88,提示“猜大了”,如输入33,则提示“猜小了”。

①新建一个变量,用来表示我们要猜的数字。

②从1-100之间生成一个随机数,赋值给我们的变量。

③通过询问来获取答案。

④判断输入的答案和我们要猜的数是否一致,如果一致,则说猜对了,如果大于,则说猜大了,如果 小于,则说猜小了。

⑤整体解析:

是不是很简单,你学会了吗?

-end

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

#include<string.h>

main()

{

int n[4],a,b,c,d,yes=0,meble=0

int times=10,y=0

srand(time(NULL))

int x[10]

memset(x, 0, sizeof(int)*10)

int i = 0

while (1)

{

if(i == 4)

break

int k = rand() % 10

if(x[k] == 0)

{

x[k] = 1

n[i] = k

i++

}

}

// printf("%d %d %d %d\n",n[0],n[1],n[2],n[3])

printf("猜数游戏:四个数0-9,按一定顺序排列,你需要在\n")

printf("10次机会内,猜中数字而且数的顺序要正确\n")

while(times!=0)

{

printf("请输入4个数(0-9)\n")

printf("数与数之间一个空格分开\n")

scanf("%d %d %d %d",&a,&b,&c,&d)

yes=0meble=0

if(n[0]==a)yes++

if(n[1]==b)yes++

if(n[2]==c)yes++

if(n[3]==d)yes++

if(a==n[1]||a==n[2]||a==n[3])meble++

if(b==n[0]||b==n[2]||b==n[3])meble++

if(c==n[0]||c==n[1]||c==n[3])meble++

if(d==n[0]||d==n[1]||d==n[2])meble++

printf("%d 个数完全正确, %d 个数值对但位置错了 \n",yes,meble)

y=y+1

printf("第 %d 次机会",y)

printf("\n")printf("\n")printf("\n")

times--

if(a==n[0]&&b==n[1]&&c==n[2]&&d==n[3])

{printf("恭喜 - -。 猪竟然都能赢\n")break}

if(times==0)

{printf("game over 了\n")break}

}

system("pause")

}

思路:随机产生4个不同的数(0-9),然后你输入4个数做比较,输出结果。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11066774.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存