设计并编程实现一个猜数游戏
1. 编写一个“猜数”游戏程序
staticvoidMain(string[]args)
{
Randomr=newRandom();
intanwser=r.Next(0,10);
Console.WriteLine("1..");
Console.WriteLine("2..");
while(true)
{
stringinput=Console.ReadLine();
if(string.IsNullOrEmpty(input))
{
Console.WriteLine("Theanwseris:"+anwser);
Console.WriteLine("Pressentertoexit.");
Console.Read();
break;
}
else
{
intt;
if(int.TryParse(input,outt))
{
if(t==anwser)
{
Console.WriteLine("Youareright!");
Console.WriteLine("Pressentertoexit.");
Console.Read();
break;
}
elseif(t>anwser)
{
Console.WriteLine("Youranwseritgreater,pleasetryagain");
}
elseif(t<anwser)
{
Console.WriteLine("Youranwseritless,pleasetryagain");
}
}
else
{
Console.WriteLine("Don'tkidmeplease...");
}
}
}
}
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>
void main()/*主函数*/
{
int a,b,times=0,i,j,guess=0,answer[5],g[5];
for(i=0;i<5;i++)/*随即产生5个数*/
{
srand((unsigned int)time(NULL));/*以当前时间为种子*/
answer[i]=rand()%9+1;/*保证为1-9的数,rand产生随即0-65535的数,对9取余为0-8,都加1就是1-9了*/
for(j=0;j<i;j++)
while(answer[i]==answer[j])/*检查有没有重复的数据,有就重新生成*/
{
answer[i]=rand()%9+1;
j=-1;/*新生成的数要重新检查,此步后马上执行j++*/
}
}
printf("随即的5个数是:");
for(i=0;i<5;i++)
printf("%d",answer[i]);/*输出结果到屏幕,便于测试*/
printf("\n");
printf("请输入猜测数字:\n%");
a=0;
while(a!=5)/*a记录位置对并且数也对的,如果5个都对就是猜对了*/
{
a=0;
b=0;/*b记录数是有的,但位置不对的个数*/
times++;
printf("第 %d 次猜测:\t",times);
scanf("%d",&guess);
while(guess<12345||guess>99999)/*如果猜的数超过这个范围就是瞎猜的,肯定不对,再来一次*/
{
printf("你输入了一个非常规数据,请重新输入:\t");
scanf("%d",&guess);
}
for(i=4;i>-1;i--)/*把玩家猜的5个数放到数组中,便于检查对错*/
{
g[i]=guess%10;
guess=(guess-g[i])/10;
}
for(i=0;i<5;i++)/*检查数据对错*/
{
for(j=0;j<5;j++)
{
if(g[i]==answer[j])/*如果猜得的数与结果的某个数一样就把b加1*/
{
b++;
if(i==j)/*如果位置也对,那就是a加1了,对应的b已经加过,应该减1*/
{
a++;
b--;
}
}
}
}
printf("猜测结果:%dA%dB\n",a,b);
if(a==5)
printf("\t答案正确\n"); /*如果a=5就是猜对了*/
}
}
3. 设计一个猜数游戏程序
猜数字游戏
程序设计的逻辑思维
#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)
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 = 0; i < index; ++i)
{
if(chNum[i] == chNum[index])
--index;
}
++index;
}while(index < 4);
Guess(chNum);
return 0;
}
4. c语言,编写一个猜数字游戏
源码如下:
/*File:guess.c*/
#include<stdio.h>/*standardinput&outputsupport*/
#include<stdlib.h>/*srand()rand()*/
#include<time.h>/*time()*/
/*宏定义*/
#defineNUMBER_LENGTH5/*随机数长度*/
#defineNUMBER_LIMIT10/*随机数限制,每一位0-9*/
#defineINPUT_LENTH128/*输入缓冲区大小*/
chargoal[NUMBER_LENGTH]={0};/*保存随机数*/
charflag[NUMBER_LIMIT]={0};/*保存随机数标志,保证不重复*/
charinput[INPUT_LENTH]={0};/*保存输入*/
/*初始化用于保存数据的数组*/
voidinitData()
{
inti=0;
while(i<NUMBER_LENGTH)
goal[i++]=0;
i=0;
while(i<NUMBER_LIMIT)
{
flag[i++]=0;
}
}
/*初始化用于保存缓冲区的数组*/
voidinitBuffer()
{
inti=0;
while(i<INPUT_LENTH)
input[i++]=0;
}
/*显示猜测结果*/
voiddisplay()
{
intcount=0;
inti=0;
while(i<NUMBER_LENGTH)
{
if(input[i]==goal[i])
{
printf("%c",'o');
count++;
}
else
{
printf("%c",'x');
}
i++;
}
printf(" RIGHT:%dbit(s) ",count);
if(count==NUMBER_LENGTH)
{
printf("Youwin!Thenumberis%s. ",goal);
exit(0);
}
}
/*生成随机数*/
voidgeneral()
{
/*以时间作为时间种子保证生成的随机数真正具有随机性质*/
srand((unsignedint)time(NULL));
inti=0;
while(i<NUMBER_LENGTH)
{
chartmp;
do
{
tmp='0'+((i!=0)?(rand()%10):(1+rand()%9));
}while(flag[tmp]!=0);
flag[tmp]=1;
goal[i++]=tmp;
}
}
/*输入方法,用于猜测*/
voidguess()
{
printf(": ");
scanf("%s",input);
display();
initBuffer();
}
/*主函数,程序主框架*/
intmain(intargc,constchar*argv[])
{
initData();
initBuffer();
general();
while(1)guess();
return0;
}
==============================================
运行结果见附图,希望我的回答能够对你有所帮助。

5. C语言编程:编写一个猜数的游戏,系统自动产生一个随机数,你来猜,程序给出提示,直到猜对为止。
import java.util.*;
class Assignment8{
public static void main(String[]args){
Scanner sc=new Scanner(System.in);
int x=(int)(Math.random()*100);//生成一个0~100的随机数
int y=-1;
System.out.println("已生成0~100的随机整数,请输入您所猜的数:");
while(x!=y)
{
y=sc.nextInt();
if(y>x)
{
System.out.println("输入的数过大");
}
else if(y<x)
{
System.out.println("输入的数过小");
}
}
System.out.println("正确!该随机数是"+x);
sc.close();
}
}

(5)设计并编程实现一个猜数游戏扩展阅读:
while循环的格式:while(表达式){语句;}
while循环的执行顺序:当表达式为真,则执行下面的语句,语句执行完之后再判断表达式是否为真,如果为真,再次执行下面的语句,然后再判断表达式是否为真??就这样一直循环下去,直到表达式为假,跳出循环。
例:
int a=NULL;
while(a<10){
a++;//自加
if(a>5)//不等while退出循环,直接判断循环
{break;//跳出循环}
}
结果:结束后a的值为6。
6. 编程实现猜数游戏。 要求:设定一个目标值N,根据提示语来猜测N是多少,并记录游戏者猜测的次数
我刚学Python ,用简单的代码可以实现你的这个问题

a= input("请输入设定值N的值:")
i=1while True:
i +=1
b=input("请输入你要猜的数字:")
if b > a:
print("您猜的数字大了,再小点")
if b < a:
print("您猜的数字小了,再大点")
if b == a:
print("恭喜你猜对了,您总共猜了",i,"次")
break
7. 一道C语言猜数游戏编程题
#include "stdio.h"
#include<time.h>
#include<stdlib.h>
void Guess(int magic, int guess)
{
static int c = 0;
c++;
if (magic == guess)
{
printf("\n你猜对了!\n你一共猜了%d次!", c);
exit(0);
}
if (magic < guess)
{
printf("\n太大了!\n");
}
else
{
printf("\n太小了!\n");
}
}
int main()
{
int m, n, i;
srand((int)time(0));
n=(rand() % 100) + 1;
//printf("n=%d\n",n);
for (i = 0; i < 10; i++) {
printf("请输入你猜测的数:");
scanf("%d", &m);
Guess(n, m);
}
return 0;
}
8. 编写程序,实现猜数小游戏。随机生成一个0~99(包括0和99)的数字。程序要有注释,代码要规范。
int number = (int) (Math.random() * 100);
Scanner scn = new Scanner(System.in);
System.out.println("请输出你猜测的数字:");
int a = scn.nextInt();
int temp = 1;
while (number != a) {
if (a > number) {
System.out.println("太大");
} else {
System.out.println("太小");
}
a = scn.nextInt();
temp++;
}
if (temp == 1) {
System.out.println("你太聪明了! ");
} else if (temp > 1 && temp < 6) {
System.out.println("不错,再接再厉! ");
} else if (temp >= 6) {
System.out.println("要努力啊! ");
}
