當前位置:首頁 » 編程語言 » c語言編程猜數字游戲文庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言編程猜數字游戲文庫

發布時間: 2022-07-28 08:41:18

❶ 請用c語言編寫猜數字游戲

沒時間來寫符合你題目的,這個是我以前寫過的一個猜數字游戲,系統會給出一個的1~99之間的隨機數,你來猜,看多少次可以猜中. 你看用得上不.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <sys/time.h>

int main (int argc, char **argv)
{
int d, c;
struct timeval tv;

gettimeofday (&tv, NULL);
srand (tv.tv_usec);
d = rand () % 100;

printf ("Please input a number:\n");
scanf ("%d", &c);
printf ("c=%d\n", c);
int min_num = 1;
int max_num = 99;
int num=1;
while (c != d)
{

if (c > d)
{
if( c < max_num )
max_num = c;

printf ("%d - %d\n", min_num ,max_num);
}

else if (c < d)
{
if( c > min_num )
min_num = c;
printf ("%d - %d\n", min_num ,max_num);
}
else
break;

scanf ("%d", &c);
num++;
printf("c = %d \n",c);
}
printf ("it's true:%d,num=%d\n", c,num);

return 0;
}

❷ C語言編程猜數字游戲

#include "stdio.h"
#include<stdlib.h>
#include"conio.h"
#include<time.h>
#include"math.h"

int main()
{
int inputnum,daan;
srand((unsigned long)time(0)); //生成種子
int times=5;
daan=rand()%10;
while(times--)
{
scanf("%d",&inputnum);
if(inputnum>daan)
{
printf("大了\n");
}
else if(inputnum<daan)
{
printf("小了\n");
}
else
{
printf("對了!");
break;
}

}
if(times==0)
printf("沒機會了");
return 0;
}

❸ 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&gt;x)

{

System.out.println("輸入的數過大");

}

else if(y&lt;x)

{

System.out.println("輸入的數過小");

}

}

System.out.println("正確!該隨機數是"+x);

sc.close();

}

}

(3)c語言編程猜數字游戲文庫擴展閱讀:

while循環的格式:while(表達式){語句;}

while循環的執行順序:當表達式為真,則執行下面的語句,語句執行完之後再判斷表達式是否為真,如果為真,再次執行下面的語句,然後再判斷表達式是否為真……就這樣一直循環下去,直到表達式為假,跳出循環。

例:

int a=NULL;

while(a&lt;10){

a++;//自加

if(a&gt;5)//不等while退出循環,直接判斷循環

{break;//跳出循環}

}

結果:結束後a的值為6。

❹ c語言編程,編譯猜數字游戲

#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就是猜對了*/
}
}

❺ C語言編程 猜數游戲

#include
#include
//用到了rand函數,所以要有這個頭文件
#include
//用到了time函數,所以要有這個頭文件
int
main()
{
int
number;
//number用於存儲隨機數
int
guess=0;
//guess用於存儲玩家猜的數
srand((unsigned)
time(null));//用系統時間作為rand函數使用的種子
number=rand()%100;
//隨機除以100,取余數
number++;
//余數加1
printf("猜數字游戲\n");
printf("該數字在1到100之間\n");
while(guess!=number)
{
printf("請輸入您所猜的數:");
scanf("%d",&guess);
//如果玩家猜的數較小,給予提示
if
(guess
number)
{
printf("大了\n");
}
}
//猜中則循環結束,輸出猜中的數字
printf("猜對了,這個數字就是:%d\n",number);
return
0;
}

❻ C語言編程 " 猜數字游戲" 各路高手幫忙啊!!!

#include
<stdio.h>
#include
<stdlib.h>
#include
<time.h>
#define
N
4/*隨機抽N個數*/
#define
NUM
8/*NUM次猜數的機會*/
void
detect(char
s[])
{
int
i,j,num;
int
a,b;
char
ch[N];
for(num=0;num<NUM;num++)
{
a=b=0;
printf("第%d次機會:",num+1);
for(i=0;i<N;i++)
{
ch[i]=getch();
if(ch[i]>='0'&&ch[i]<='9')
{
for(j=0;j<i;j++)
if(ch[i]==ch[j])
break;
if(j<i)
i--;
else
{
putchar(ch[i]);
for(j=0;j<N;j++)
{
if(ch[i]==s[j])
if(i==j)
a++;
else
b++;
}
}
}
else
i--;
}
printf("
%dA%dB\n",a,b);
if(a==N)
{
printf("恭喜你答對了!\n");
break;
}
}
if(num==NUM)
printf("很遺憾,正確答案為:%s\n",s);
}
main()
{
int
i,j;
char
s[N+1];
srand(time(0));
for(i=0;i<N;i++)
{
s[i]=rand()%10;
for(j=0;j<i;j++)
if(s[i]==s[j])
break;
if(j<i)
i--;
else
{
s[i]+='0';
putchar('*');
}
}
s[i]='\0';
printf("\n總共%d次機會\n",NUM);
detect(s);
}
_______________________
運行結果:
-----------------------
****
總共8次機會
第1次機會:1234
0A2B
第2次機會:2345
0A2B
第3次機會:3456
1A0B
第4次機會:4567
0A1B
第5次機會:5678
0A1B
第6次機會:6789
1A1B
第7次機會:3792
0A2B
第8次機會:9482
1A3B
很遺憾,正確答案為:8429
請按任意鍵繼續.
.
.

❼ 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");

}

❾ 猜數游戲c語言

#include <stdio.h>
#include <stdlib.h>
main()
{
int n,t,g;
char c;
while(1)
{
n = 1 + rand() % 100;
printf("請猜一個1~100的數字:");
scanf("%d",&g);
t=1;
while(g!=n)
{
if(t==10) break;
if(g<n) printf("猜小了哦\n");
else printf("猜大了哦\n");
scanf("%d",&g);
t++;
}
if(t==1) printf("太棒了,一次就猜對了!\n");
else if(t>2 && t<5) printf("猜了%d次,也不錯哦。\n",t);
else if(t>4 && t<8) printf("猜了%d次,還可以\n",t);
else if(t==8 || t==9) printf("猜了%d次才對,你亂猜的吧\n",t);
else if(t==10) printf("怎麼猜了10次還不對啊,算了,猜下一個吧。\n");
if((c=getchar())=='q') break;
}
}