簡單的猜數字遊戲(C語言)
阿新 • • 發佈:2021-08-14
猜數字遊戲
1.系統分析
在本遊戲中,電腦會給出1~100之間的一個隨機數,玩家通過鍵盤輸入猜測的數字,電腦會判斷輸入的數字是否為生成的隨機數,並做出相應的提示(猜大了,猜小了,答對了)。
2.概要設計
此係統可分為以下幾個功能模組:選單模組;隨機數生成模組;判斷及提示模組;主函式模組。
3.詳細設計
3.1 選單模組
void menu() { printf("********************\n"); printf("** 1.play 0.exit **\n"); printf("********************\n"); }
3.2 隨機數生成模組
ret=rand()%100+1;//生成1~100之間的隨機數 srand((unsigned int)time(NULL));//拿時間戳來設定隨機數的生成起始點
3.3 判斷及提示模組
while(1) { printf("請猜數字:"); scanf("%d",&guess); if(guess>ret) printf("猜大了\n"); else if(guess<ret) printf("猜小了\n"); else { printf("恭喜你,猜對了!\n"); break; } }
3.4 主函式模組
int main() { int input; srand((unsigned int)time(NULL));//拿時間戳來設定隨機數的生成起始點 do { menu(); printf("請選擇:"); scanf("%d",&input); switch(input) { case 1: game();break; case 0: printf("退出遊戲\n"); break; default: printf("選擇錯誤\n"); break; } } while(input); return 0; }
4.源程式程式碼
#include<stdio.h> #include<time.h>//time() #include<stdlib.h>//rand();srand() void menu() { printf("********************\n"); printf("** 1.play 0.exit **\n"); printf("********************\n"); } void game() { int ret; int guess; 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; } } } int main() { int input; srand((unsigned int)time(NULL));//拿時間戳來設定隨機數的生成起始點 do { menu(); printf("請選擇:"); scanf("%d",&input); switch(input) { case 1: game(); break; case 0: printf("退出遊戲\n"); break; default: printf("選擇錯誤\n"); break; } } while(input); return 0; }