c语言 猜数字小游戏
?輸入格式:
輸入第一行中給出兩個(gè)不超過(guò)100的正整數(shù),一個(gè)是猜測(cè)的最大次數(shù)N,另一個(gè)自己猜測(cè)的隨機(jī)數(shù)。直到超過(guò)猜測(cè)最大數(shù)停止!
輸出格式:?
?在一行中輸出每次猜測(cè)相應(yīng)的結(jié)果,直到輸出猜對(duì)的結(jié)果或“Game Over”則結(jié)束
完整代碼如下:
完整做法如下下:?
#include <stdio.h> #include <stdlib.h> #include <math.h> int main() {int x,magic;int cnt = 0;int N;magic = rand()%100+1;//隨機(jī)生成數(shù)1-100;scanf("%d",&N);do{scanf("%d",&x);cnt++;if(x > magic){printf("Too big\n");}else if(x < magic){printf("Too small\n");}else if(x == magic&&cnt>3&&cnt<=N){printf("Good Guess!");break;}else if(x == magic&&cnt<=3&&cnt>=2){printf("Lucky You!");break;}else if (x == magic&&cnt == 1){printf("Bingo!");break;}}while(cnt<N);if (x < 0||cnt>N||x!=magic){printf("Game Over");}return 0; }?
代碼目錄
- 前言
- 一、產(chǎn)生隨機(jī)數(shù)
- 二、輸入兩個(gè)正整數(shù)
- 進(jìn)行比較
- 三、多次輸入猜測(cè)數(shù)
- 四、結(jié)束的條件
前言
猜數(shù)字游戲是令游戲機(jī)隨機(jī)產(chǎn)生一個(gè)100以內(nèi)的正整數(shù),用戶輸入一個(gè)數(shù)對(duì)其進(jìn)行猜測(cè)。
需要你編寫程序自動(dòng)對(duì)其與隨機(jī)產(chǎn)生的被猜數(shù)進(jìn)行比較,如果數(shù)大了提示(“Too big”),如果小了提示(“Too small”),如果猜到,則結(jié)束程序。
程序還要求統(tǒng)計(jì)猜的次數(shù),如果1次猜出該數(shù),提示“Bingo!”;如果3次以內(nèi)猜到該數(shù),則提示“Lucky You!”;如果超過(guò)3次但是在N(>3)次以內(nèi)(包括第N次)猜到該數(shù),則提示“Good Guess!”;
如果超過(guò)N次都沒(méi)有猜到,則提示“Game Over”,并結(jié)束程序。
一、游戲機(jī)自己產(chǎn)生一個(gè)隨機(jī)數(shù)。
magic = rand()%100+1;//隨機(jī)生成數(shù)1-100;用到這個(gè)函數(shù)需要數(shù)學(xué)文件?#include <math.h>!
?
二、輸入兩個(gè)正整數(shù)。
1.首先輸入 “猜測(cè)的最大次數(shù)N”
2.再輸入“自己猜測(cè)的數(shù)x”??
scanf("%d",,&N); scanf("%d",&x);?
接下來(lái)我們需要將我們猜測(cè)的數(shù)和隨機(jī)數(shù)進(jìn)行比較跟據(jù)題目的要求,不同的情況輸出不同的話語(yǔ)!2.用if else進(jìn)行判斷。
if(x > magic){printf("Too big\n");}else if(x < magic){printf("Too small\n");}else if(x == magic&&cnt>3&&cnt<=N){printf("Good Guess!");break;}else if(x == magic&&cnt<=3&&cnt>=2){printf("Lucky You!");break;}else if (x == magic&&cnt == 1){printf("Bingo!");break;} 需要注意的是:題目要求我們記錄次數(shù),因此我們用cnt來(lái)記錄輸入了多少次!?三.用do while進(jìn)行多次輸入,從而多次判斷你猜的數(shù)是否正確。
只需要添加do while 語(yǔ)句就行了,但是要注意 while語(yǔ)句出來(lái)的條件,即猜測(cè)的次數(shù)cnt應(yīng)小于設(shè)置猜測(cè)的最大次數(shù)N!
do{scanf("%d",&x);cnt++;if(x > magic){printf("Too big\n");}else if(x < magic){printf("Too small\n");}else if(x == magic&&cnt>3&&cnt<=N){printf("Good Guess!");break;}else if(x == magic&&cnt<=3&&cnt>=2){printf("Lucky You!");break;}else if (x == magic&&cnt == 1){printf("Bingo!");break;}}while(cnt<N);四.超過(guò)N次都沒(méi)有猜到,提示“Game Over”。
注意:猜對(duì)了不需要提示?Game Over,需要x不等于隨機(jī)數(shù)才會(huì)輸出!
if (cnt>N||x!=magic){printf("Game Over");}?
?
總結(jié):
c語(yǔ)言小游戲的程序是一步一步走過(guò)來(lái)的,需要什么我們就給它什么。c語(yǔ)言也需要我們多實(shí)踐多敲代碼,慢慢熟悉慢慢領(lǐng)悟!
如果你覺(jué)得這篇文章對(duì)你有幫助,就請(qǐng)給我點(diǎn)個(gè)贊關(guān)注一波,一起努力一起進(jìn)步!
總結(jié)
以上是生活随笔為你收集整理的c语言 猜数字小游戏的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【vue】纯前端登录验证码实现记录
- 下一篇: c语言停车场的收费管理系统,c语言停车场