日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

猜数字游戏(保姆式教程)

發布時間:2024/1/1 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 猜数字游戏(保姆式教程) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

🤞?1)生成菜單

?🤞2)玩家選擇玩游戲與不玩游戲

?🤞3) 猜數字游戲核心實現

🤞?4)玩家猜數字


💕創作不易,先贊后看養成習慣

哈哈哈哈哈哈

?

?1)生成菜單

玩這個游戲,菜單里無非包含兩個選擇 :一.就是玩游戲;二.就是不玩游戲。 而且如果我想玩多把就要運用循環,既然有循環就要想到終止,我們知道非0為真,0為假,所以不如我們選擇1和0來做我們的玩與不玩的條件,這樣后面會方便很多,kakaka 不管三七二十一,我們都要先來一次選擇的菜單來吧,代碼如下:

void menu() {printf("******************************\n");printf("********* 1.play *********\n"); //選擇1 玩游戲printf("********* 0.exit *********\n"); //選擇0 退出游戲printf("******************************\n"); }

打印完菜單我們肯定要調用到循環里,代碼如下:

int main() {do{menu(); //調用菜單,由于不管怎樣選擇都要至少用到一次菜單,所以用do while} while ();return 0; }

打印完菜單之后我們就要選擇玩與不玩對不對?

2)玩家選擇玩游戲與不玩游戲

根據菜單的提示,我們選擇玩游戲和不玩游戲,都要輸入一個數字來判斷玩或者不玩,所以我們就來定義一個變量input,代碼如下:

int main() {int input = 0;do{menu();printf("請選擇>(0/1):");scanf("%d", &input); //要玩多次所以放在循環里} while (input);return 0; }

我們輸入了,肯定就要來接受從而判斷玩與不玩,兩個選擇,我們用 switchcase?分支語句去選擇,選擇1 就進行猜數字游戲,0就退出嘛,選擇其它的,我們就報一個選擇錯誤重新選擇,代碼如下:

int main() {int input = 0;srand((unsigned int)time(NULL));do{menu();printf("請選擇>(0/1):");scanf("%d", &input);switch (input){case 1 :game();break;case 0 :printf("退出游戲\n");break;default :printf("選擇錯誤,請重新選擇\n");}} while (input); //循環條件也是input 輸入0 就退出循環了return 0; }

3) 猜數字游戲核心實現

首先為了玩猜數字我們要先讓電腦生成一個隨機數字,隨機數字的生成要運用到函數 rand()?我們來看一下這個函數的返回類型和原型

?

上面說調用函數rand() 前必須再調用 srand()? 接下來我又把這個函數的原型和返回類型給大家看

?

?srand()里需要一個一直改變的數,這我們怎么辦呢,在生活中存在一直改變的數就是時間了,所以不妨我們用時間來滿足我們的條件(引用一個time的函數實現)看代碼:

?time()函數 它的返回類型是整型,由于不需要用到它的任何操作,就將NULL放在time里

void game() {srand((unsigned int)time(NULL));int ret = rand() % 100 +1; //我們假設猜1-100的數字 }

4)玩家猜數字

玩家猜數字,首先我們需要輸入一個數字,來判斷我們與電腦生成的數字作比較,如果大于電腦的我們就提示說 “猜大了”,小于電腦的提示 “猜小了”,在我們猜的過程中一般不能是一次就猜對了,所以我們這里要多次輸入并判斷,因此這些要放在循環當中,猜對了就跳出循環,代碼如下:

void game() {int ret = rand() % 100 +1;int guess = 0;while (1){printf("\n請輸入你要猜的數字:");scanf("%d", &guess);if (guess < ret){printf("\n猜小了\n");}else if (guess > ret){printf("\n猜大了\n");}else{printf("\n恭喜你,猜對了\n"); //如果猜對就跳出循環break;}} }

以上就是全部的分解代碼,以下是全部代碼:特別要注意我們生成隨機數并不一次游戲只需生成一次所以我們將srand()函數放在我們的主函數里面

#include <stdio.h> #include <stdlib.h> #include <time.h> void menu() {printf("*****************************\n");printf("********* 1.play ********\n");printf("********* 0.exit ********\n");printf("*****************************\n"); } void game() {int ret = rand() % 100 +1;int guess = 0;while (1){printf("\n請輸入你要猜的數字:");scanf("%d", &guess);if (guess < ret){printf("\n猜小了\n");}else if (guess > ret){printf("\n猜大了\n");}else{printf("\n恭喜你,猜對了\n");break;}} } int main() {int input = 0;srand((unsigned int)time(NULL));do{menu();printf("請選擇>(0/1):");scanf("%d", &input);switch (input){case 1 :game();break;case 0 :printf("退出游戲\n");break;default :printf("選擇錯誤,請重新選擇\n");}} while (input);return 0; }

??

?

總結

以上是生活随笔為你收集整理的猜数字游戏(保姆式教程)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。