用C語言編寫猜數字遊戲
阿新 • • 發佈:2019-02-12
在編寫一個猜數字遊戲之前,我們來做一些鋪墊工作:
1.函式鋪墊
(1)rand:該函式是用來產生一個隨機數(每次產生的隨機數相同)。如:rand()%100相當於產生一個0~99之間的隨機數;
(2)srand:該函式作用是在呼叫rand函式之前,去設定隨機數 產生器,使得每次產生的隨機數不同。(在一個程式內部被呼叫一次即可);
(3)time:該函式返回一個從當前時間點到計算機起始時間(1970年1月1日0點)之間的差值(隨著時間的變化,差值在變)。
2.程式設計鋪墊:
有了以上的鋪墊之後,我們來編寫猜數字遊戲吧!#include<stdio.h> #include<stdlib.h> #include<time.h> int main() { srand((unsigned int)time(NULL));//在呼叫rand函式之前設定隨機數產生器 printf("%d\n", rand() % 100);//產生0-99之間的隨機數 return 0; }
執行結果:#include<stdio.h> #include<time.h> #include<stdlib.h> void menu()//編寫目錄 { printf("*************************\n"); printf("*****1.paly***0.exit*****\n"); printf("*************************\n"); } void paly_game() { int rand_num = rand() % 100;//產生0--99之間的隨機數 int tmp = 0; while (1)//選擇“1”開始遊戲 { printf("請輸入你要猜的數字:<"); scanf_s("%d", &tmp); if (tmp > rand_num) { printf("猜大了!\n"); } else if (tmp < rand_num) { printf("猜小了!\n"); } else { printf("恭喜你,猜對了!"); } } } int main() { int input = 0; srand((unsigned int)time(NULL));//srand函式設定隨機數產生器 do{ menu(); printf("請選擇:<\n"); scanf_s("%d", &input); switch (input) { case 1: paly_game(); break; case 0: exit(0); break; default: printf("選擇的錯誤!\n"); } } while (input); return 0; }