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

多次猜數游戲c語言

發布時間: 2023-04-03 10:27:55

c語言猜數題,怎麼修改程序,使得如果連續輸入十次都猜不對正確答案88,就結束游戲。

在c++後面,scanf前面,加一句:

if(c>10)break;

最後的printf改成:

if(b==88)橡猜printf("梁早型Right!用了%d次嘗試。",c);
elseprintf("Wrong!很遺憾,已睜斗經嘗試了10次,依然沒有猜中。");

Ⅱ C語言猜數游戲(高低游戲)

#include <stdio.h>
#include <stdlib.h>
void clear()
{
scanf("%*[^\n]");
scanf("%*c");
} //清除輸入緩沖區

void Inspect(int number,int cn)
{
int innum,flag=0;
while(cn<7 && flag==0){
printf("輸入猜測的數據(0~99):");
scanf("%d",&innum);
if(innum==number)
{
flag=1;
printf("恭喜,猜對了,共用了%d次!\n",cn);
}
else if(innum>number)
{
cn++;
printf("很遺憾,你猜錯了,是更小的數,你還有%d次機會!\n",7-cn);
}
else
{
cn++;
printf("很遺憾,你猜錯了,是更大的數,你還有%d次機會!\n",7-cn);
}
}
if(cn==7){
printf("你已經沒有機會嘗試了,請重新再來\n");
printf("%d\n",number);
}
} //游戲主體判斷函數

int main()
{
int number=rand()%100;
int cn=0;
char tp='y';
Inspect(number,cn);
while(tp=='y'){
printf("你還想繼續嘗試嗎?(y/n):");
clear(); //清除輸入緩沖區,防止之前的輸入影響後面的代碼執行
scanf("%c",&tp);
if(tp=='y') {cn=0;Inspect(number,cn);}
}
return 0;
}

Ⅲ 猜數,用函數,c語言,猜一個隨機數有三次機會

參考代碼:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
intmain()
{
inti,randomnum,yourguess;
randomize();
randomnum=random(101);
printf("請猜一個1-100間的數: ");
for(i=1;i<=3;i++)
{
scanf("%d",&yourguess);
if(yourguess==randomnum)

{
printf("這是第%d次猜數,恭喜猜對了! ",i);
printf("按任意鍵退出 ",i);
getch();

break;
}
elseif(yourguess<仔畝randomnum)
{
if(i<3)

侍戚拆{
老棗printf("這是第%d次猜數,猜小了!還剩%d次機會,請繼續... ",i,10-i);
continue;
}
else

printf("這是最後一次猜數,猜小了!很遺憾... ");

}
elseif(yourguess>randomnum)
{
if(i<3)

{
printf("這是第%d次猜數,猜大了!還剩%d次機會,請繼續... ",i,10-i);

continue;
}
else

printf("這是最後一次猜數,猜大了!很遺憾... ");

}
}
return0;

}

Ⅳ 如何猜數游戲C語言程序設計

編程如下:

#include

#include

#include

int main(int argc, char * argv[])

{

srand((unsigned)time(NULL));

int a = rand()%100;

a+=1;

int b,c;

c = 0;

while (c {

printf("Please enter a number: ");

if (scanf("%d", &b) == 0)

{

fprintf(stderr, "Invalid entry. ");

return EXIT_FAILURE;

}

else

{

if (b == a)

{

printf("You are correct, the number is %d! ", a);

printf("You used %d times to get the answer. ", c);

break;

}

else if (b >a)

printf("The number is bigger than it suppose to. ");

else

printf("The number is smaller than it suppose to. ");

c++;

}

if (c == 10)

{

printf("You used 10 times, please try again! ");

break;

}

}

return EXIT_SUCCESS;

}

Ⅳ C語言編寫猜數游戲

建議判斷部分改一下。
1 分成兩個循環判斷
2 第一個循環先判斷位置和值都正確的
3 第二個循環為嵌套循環,對於第一個循環判斷正確的情況,不再判斷。否則會出現錯誤結果。

另外一個建議,不要每次都去計算guess的各個位值,而是直接存到一個4位的數組中,對元素進行判斷,代碼會簡單清晰得多。

Ⅵ 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<string.h>
#include<time.h>

char*getHint(char*secret,char*guess)
{
inti,countA=0,countB=0;
intcount[10]={0};
char*result=(char*)malloc(strlen(secret));
if(strlen(secret)!=strlen(guess))
{
printf("UnequalLength!");
returnNULL;
}
for(i=0;i<4;i++)
{
if(secret[i]==guess[i])
countA++;
else
{
count[secret[i]-'0']++;
if(count[secret[i]-'0']<=0)
{
countB++;
}
count[guess[i]-'0']--;
if(count[guess[i]-'0']>=0)
{
countB++;
}
}
}
sprintf(result,"%d%c%d%c",countA,'A',countB,'B');
returnresult;
}

intmain()
{
inti=0,j=0;
charnum[4]={0},input[5]={0};

srand((unsigned)time(NULL));//初始化隨機數
for(i=0;i<4;i++)//生成4個隨機數
{
num[i]=(rand()%10)+48;
}
for(j=0;j<10;j++)
{
printf("pleaseinput4-digtalsnumber[%d]times:",j+1);
fgets(input,sizeof(input),stdin);
fflush(stdin);
if(strlen(input)!=4)
{
continue;
}
printf("input[%s] ",input);

strcpy(input,getHint(num,input));
printf("ret=[%s] ",input);
if(strcmp(input,"4A0B")==0)
{
printf("YouareWin! ");
break;
}
}

return0;
}

Ⅷ c語言設計猜數字游戲

基本實現功能,但菜單和計分慶塵腔自己實現!
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include <windows.h>

#define MAXTIMES 10
#define winer 1
#define loser 0

int main()
{
int aid[4],num[4],i,j,times,key,key2,A,B;
char ch;
time_t now;
Initialize:now=time(0);
srand(now);
aid[0]=(rand()+90)%10;/*生成目標數組*/
Sleep(20);
aid[1]=(rand()+90)%10;
Sleep(20);
aid[2]=(rand()+90)%10;
Sleep(20);
aid[3]=(rand()+90)%10;
for(i=0;i<4;i++) /*判斷是否產生相同的數字*/
{
for(j=0;j<4;j++)
{
if((i!=j)&&(aid[i]==aid[j]))
goto Initialize;
}
}
printf("\n");
times=1;
while(times<=MAXTIMES) /*程序主體部分*/
{
key=0;
key2=0;
printf("NO.%d:\n\tPlease input 4 different int numbers to play!\n\t",times);
scanf("%d,%d,%d,%d",&num[0],&num[1],&num[2],&num[3]);
for(i=0;i<4;i++) /*判斷所輸數字是否合法則*/
{
if(!((num[i]<=9)&&(num[i]>=0)))
{
printf("\tError!The numbers you input must be int numbers which from 0 to 9\n");
key=1;
break;
}
}
if(key==1)
continue;
for(i=0;i<4;i++) /*判斷是否輸入了相同的數字*/
{
for(j=i+1;j<4;j++)
{
if(num[i]==num[j])
{
printf("\tError!The numbers you input must be different!\n");
key2=1;
}
break;
}
}
if(key2==1)
continue;
A=0;
B=0;
for(i=0;i<4;i++) /兄罩*比較兩組數字*/
{
if(num[i]==aid[i])
A++;
}
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(num[i]==aid[j])
B++;
}
}
B=B-A;
printf("\tA%dB%d\n",A,B);
if(A==4) /*游戲成功,提示並返回*/
{
printf("Congratulations!\n");
printf("Press any key to exit.!\n");
getchar();
return(winer);
}
else /*這次不譽衫完全對,允許次數內重新猜*/
{
printf("\t\tPress ENTER to continue,or press A to see about answer and exit.\n"); /*選擇是否放棄,看答案*/
ch=getchar();
if(ch=='n')
{
continue;
}
if((ch=='a')||(ch=='A'))
{
printf("The four numbers:%d,%d,%d,%d\n",aid[0],aid[1],aid[2],aid[3]);
getchar();
return(loser);
}
}
times++;
}
printf("Sorry!You have lost all the chances!nPress any key to exit!\n");
getchar();
}

Ⅸ 用C語言編寫猜數游戲

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int main()
{
int n,g,i=10;
srand((unsigned)time(NULL));
n=rand()%100+1;//////////////////////////////隨機數
while(i--)
{
printf("Input A Number: ");////////////////////////提示輸入
scanf("%d",&g);
if(n==g)
break;
else if(g<n)
printf("Lower Than That\n");
else
printf("Higher Than That\n");
}
if(i==0)
printf("Game Over!\n");//////////////////////////////10次
else
printf("%d Times\n",10-i);///////////////////////////猜中
return 0;
}

Ⅹ 猜數游戲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;
}
}