目錄
一.實作該小游戲所用到的知識點
1.分支與回圈陳述句
2.函式
二.游戲的實作思路
三.游戲主體的實作
1.游戲選單的實作
2.主函式必不可少
3.游戲內容
四.該游戲全部的代碼
五.游戲運行實況
一.實作該小游戲所用到的知識點
1.分支與回圈陳述句
if switch選擇陳述句的使用
while do while回圈陳述句的使用
2.函式
會用time時間戳來設定隨機值
//time()中不要()中的引數,而這個引數需要指標,所以可以NULL(空指標),不讓它產生實際效果
//time()是long(長整型),需要我們通過unsigned強制型別轉換為int型別
srand((unsigned int)time(NULL));
上述創建后,接下來就可以使用rand()來生成亂數
ret = rand() % 100 + 1;
二.游戲的實作思路
1.我們應該讓這個小游戲可以反復的去玩,并且應該做一個選單(根據選單可以玩完一把再來一把),因此我們可以用一個函式做一個選單,并把這個選單放入一個回圈中,以便于再次去玩,
2.這個猜數字小游戲應該有一些提示,比如:猜大了,應該告訴我們猜大了;猜小了,應該告訴我們猜小了;猜對了,則應該告訴我們猜對了,
3.每次游玩這個小游戲的時候,都應該生成一個隨機的數,來讓我們猜,
三.游戲主體的實作
1.游戲選單的實作
void menu()
{
printf("**************************\n");
printf("******* 0.exit *******\n");
printf("******* 1.play *******\n");
printf("**************************\n");
}
2.主函式必不可少
在主函式中我們應該完成選單函式的回圈,這里我們可以用do while回圈,因為do while回圈第一次進入回圈時無需條件,因此只要我們運行,就會列印出選單,然后再根據我們的選擇去判斷是否繼續執行該回圈,同時創建srand,來為接下來的rand生成亂數做準備,
int main()
{
int input = 0;
srand((unsigned int)time(NULL));//時間戳
do
{
menu();
printf("請選擇>:");
scanf("%d", &input);
//根據輸入的數,來執行不同的操作
switch (input)
{
case 0:
printf("退出游戲\n");
break;
case 1:
game();
break;
default:
printf("選擇錯誤,請重新選擇\n");
break;
}
} while (input);
return 0;
}
3.游戲內容
void game()
{
int ret = 0;
int guess = 0;
ret = rand() % 100 + 1;//讓生成的亂數在1-100之間,否則生成的數過大,就比較難猜到
while (1)
{
printf("請猜數字>:");
scanf("%d", &guess);
if (guess > ret)
{
printf("猜大了\n");
}
else if (guess < ret)
{
printf("猜小了\n");
}
else
{
printf("恭喜你,猜對了\n");
break;
}
}
}
四.該游戲全部的代碼
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void menu()
{
printf("**************************\n");
printf("******* 0.exit *******\n");
printf("******* 1.play *******\n");
printf("**************************\n");
}
void game()
{
int ret = 0;
int guess = 0;
ret = rand() % 100 + 1;
while (1)
{
printf("請猜數字>:");
scanf("%d", &guess);
if (guess > ret)
{
printf("猜大了\n");
}
else if (guess < ret)
{
printf("猜小了\n");
}
else
{
printf("恭喜你,猜對了\n");
break;
}
}
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
do
{
menu();
printf("請選擇>:");
scanf("%d", &input);
switch (input)
{
case 0:
printf("退出游戲\n");
break;
case 1:
game();
break;
default:
printf("選擇錯誤,請重新選擇\n");
break;
}
} while (input);
return 0;
}
五.游戲運行實況

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/354770.html
標籤:其他
