① 怎样用c语言实现猜字游戏
//电脑随机生成一个50以内的整数,然后从键盘输入一个整数猜系统生成的数,直到猜对为止,并输出所猜次数。
#include<stdio.h>
#include
<stdlib.h>
#include<time.h>
void
main()
{
int
count=0;
int
flag=1;
do
{
srand(time(NULL));
int
num1,num=rand()%51;
printf("请输入您要猜的数(0-50):");
scanf("%d",&num1);
if(num1>50)
{
printf("输入有误,请重新输入\n");
continue;
}
printf("随机数为:%d\n",num);
count++;
if(num1==num)
{
flag=0;
}
printf("猜错了!3请继续\n\n\n");
}while(flag);
printf("%d",count);
}
② C语言用循环猜字游戏:使用随机数生成一个三位数作为谜底进行猜字游戏,每次猜的时候给出提示,
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int a,b,c=10;
srand(time(NULL));
a=rand()%1000;
printf("系统已经给出了一个0-999的数,请输入一个数。\n");
while(1)
{ c--;
scanf("%d",&b);
if(b>a)
printf("猜大了,还剩%d次机会,请继续\n",c);
if(b<a)
printf("猜小了,还剩%d次机会,请继续\n",c);
if(b==a)
{ printf("恭喜你答对了\n");
printf("系统给的数是:%d",a);
break;}
if(c==0)
{ printf("你已经没有机会了,请重新开始吧!\n");break;}
}
}
③ 设计一个猜字游戏的C语言程序
把下面的cout是输出。
用c语言的输出就行。
#include
<time.h>
#include
<stdlib.h>
int
main()
{
int
x;
cout<<"输入任意数字开始。"<<endl;
//使用
输入是否为
数字来判断是否继续猜
scanf("%d",&x);
while(x)
{
srand((int)time(0));
int
m
=
rand()%100+1;//生成随机数m范围1到100
int
i
=0,n;
for
(;i<10;i++)//判断是否才对,10次为限,i用来计算才对次数
{
cout<<"input
the
number
you
guess:"<<endl;
scanf("%d",&n);
if(
n
>
m
)
cout<<"wrong,too
high!"<<endl;
if(
n
<
m
)
cout<<"wrong,too
low!"<<endl;
if(
n
==
m)
{cout<<"right,and
the
times
you
have
guessed
is"<<i<<"."<<endl;break;}
}
cout<<"输入任意数字继续。"<<endl;
scanf("%d",&x);
}
return
0;
}
④ C语言写猜字游戏
/*你说的功能基本达到了,但是样式没有怎么调整,你自己看下吧*/
#include<stdio.h>
#include<stdlib.h>
void getNum(int a[]) /*产生随机数*/
{int i,j;
randomize();
a[0]=random(10);
for(i=1;i<4;i++)
{
a[i]=random(10);
for(j=i-1;j>=0;j--)
if(a[i]==a[j])
{i--;
break;
}
}
}
void inputNum(int b[]) /*输入数字,并保证没有重复数字*/
{int i,j;
puts("Input number:");
laber:;
scanf("%d%d%d%d",&b[0],&b[1],&b[2],&b[3]);
for(i=3;i>0;i--)
for(j=0;j<i;j++)
if(b[j]==b[i])
{puts("Input again:");
goto laber;
}
}
main()
{int a[4],b[4],c[10][4],A=0,B=0,correct[10][2],count=0,i,j;
char ch;
laber:;
system("cls");
getNum(a);
while(count<10) /*最多猜10次*/
{puts("Browse the historic document?(Y/N)"); /*是否查看历史记录*/
ch=getchar();
if(ch=='Y'||ch=='y')
for(i=0;i<count;i++)
{printf("%d:",i+1);
for(j=0;j<4;j++)
printf("%d\t",c[i][j]);
printf("%dA %dB",correct[i][0],correct[i][1]);
putchar('\n');
}
putchar('\n');
inputNum(b);
for(i=0;i<4;i++)
c[count][i]=b[i];
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{if(a[i]==b[j]&&i==j)
A++;
else if(a[i]==b[j]&&i!=j)
B++;
}
if(A==4)
{puts("Congratulations!!");
getch();
break;
}
else
printf("%dA %dB\n",A,B);
correct[count][0]=A;
correct[count][1]=B;
count++;
A=0;B=0;
getchar();
}
getchar(); /*是否再猜一次*/
puts("Guess again?");
ch=getchar();
if(ch=='Y'||ch=='y')
goto laber;
}
⑤ 用C语言编写一个猜数字游戏的程序(最好附带说明)
有偿,先程序后cash ,有意加我
⑥ C语言编写一个猜字游戏,,,遇到了问题· 请教高人
把这句话放循环外。
printf("很遗憾,你没猜中本次中奖号码,谢谢你的参与:!\n");
另外,新定义个flag,表示被猜中了。初始化为false。
如果猜中,就在恭喜那个程序块中设置为true。
然后在很遗憾那句前面加上对这个flag的判断,如果=false,则输出很遗憾这句话
⑦ 如何用c语言写一个猜数字游戏,我输入正确数字,让电脑自动去猜
网页链接
与上述引用同一种问题。
//二分法查找数据,1-100内查找一个数据,查找一次需要判断一下YesorNo.
#include<stdio.h>
intmain()
{
//初始化
intlow=1,high=100,guess,mid=low,k=0;
chara='n';
//主体
printf("Pleaseinputintegerfrom1to100,Iwilltrytoguessit. ");
scanf("%d",&guess);
printf("Ifiguesstrueinput'y',elseinput'n'. ");
while(1)
{
printf("测试循环了%d次 ",k++);
mid=(low+high)/2;
printf("Um...isyournumberis%d? ",mid);
getchar();//作用:“吃掉”‘ ’,否则下一行的scanf函数会读入回车符号。
scanf("%c/n",&a);
if(a!='y')
{
if(mid<guess)//猜测数在mid--high之间
{
low=mid;
}
elseif(mid>guess)//猜测数在low--mid之间
{
high=mid;
}
}
elsebreak;
}
return0;
}
⑧ 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;
}
==============================================
运行结果见附图,希望我的回答能够对你有所帮助。
⑨ C语言编写猜数字游戏
#include <stdlib.h>
#include <stdio.h>
//#include <iostream>
unsigned char Num[4] = {0},getNum[4] = {0x20,0x20,0x20,0x20};
void help(void)
{
char i =0,j = 0;
for(i =0;i<4;i++)
{
for(j = 0;j<4;j++)
if(Num[j] == getNum[i])
{
if(i==j)
printf("%dth is correct!\r\n",i);
else
{
printf("%d is a correct data\r\n",getNum[i]);
}
}
else
{
if(i == 3&&j==3)
{printf("/********************small game*****************/\
input 4 data gess the random data,input h can get help\
");}
}
}
}
void main( void )
{
int orginal = 0,getdata = 0,i = 0,j = 0;
// { int a;a = 878*101;cout<<a<<endl}
//first = 0,second = 0,third = 0,fourth = 0;
/* Seed the random-number generator with GetTickCount so that
the numbers will be different every time we run.
*/
srand( (unsigned)time( NULL ) );
orginal = rand();
Num[3] = orginal%10000/1000;
Num[2] = orginal%1000/100;
Num[1] = orginal%1000%100/10;
Num[0] = orginal%10;
// printf(" %d",orginal);
for(i = 0;i<4;)
{
for(j = i+1;j<4;j++)
{
if(Num[i]==Num[j])
{ Num[i]++;if(Num[i]>9) Num[i] = 0;i=0;break;}
}
if(j == 4)i++;
}
get: for(i = 0;i<4;)
{
printf("input Num %d ",i);
scanf("%s",&getNum[i]);
if(getNum[i]-0x30>9||getNum[i]-0x30<0)
{
if (getNum[i] == 'H'||getNum[i] =='h')
{
help();
}
else
printf("input one num\r\n");
//if(i>0)i--;
}
else
{
getNum[i] -=0x30;
for(j = 0;j<i;j++)
{
if(getNum[i] == getNum[j])
{printf("have a same data,please input another\r\n"); break;}
}
if(j==i)
i++;
}
}
printf("you input num %d%d%d%d Y or N?\r\n",getNum[0],getNum[1],getNum[2],getNum[3]);
do{
scanf("%c",&j);
printf("%c",j);
if((j == 'N') || (j == 'n'))goto get;
}while( !((j == 'Y') || (j == 'y')));
printf("over");
}