91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用C語言怎么實現一個猜拳小游戲

發布時間:2021-03-01 17:18:02 來源:億速云 閱讀:334 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關使用C語言怎么實現一個猜拳小游戲,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

具體內容如下

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<Windows.h>
int pcinput; //電腦輸入
int userinput; //用戶輸入
#define echo ">_ " //俺覺得好看
char case_win(int left, int right);//判斷哪邊贏了;left是玩家,right是電腦
int echoinput(int inputnum);//根據兩個全局變量輸出對應進行的操作
int main() {
 printf("規則\n\n");
 puts("1.石頭\n");
 puts("2.剪刀\n");
 puts("3.布 \n");
 printf("%s你的輸入:", echo);
 scanf_s("%d", &userinput);
 printf("\n");
 if (echoinput(userinput) == 1) {
 Sleep(1000);
 system("cls");
 main();
 }
 else {
 printf("\n");
 printf("\n");
 printf("%s等待電腦結果.\0", echo);
 Sleep(500);
 printf(".");
 Sleep(500);
 printf(".\n");
 srand(time(NULL));
 pcinput = rand() % 3 + 1;
 printf("\n");
 echoinput(pcinput);
 printf("\n");
 printf("\n");
 if (case_win(userinput,pcinput) == 'L') {
 printf("玩家勝利");
 }
 else if(case_win(userinput,pcinput)=='R'){
 printf("電腦勝利");
 }
 else {
 printf("雙方平局");
 }
 printf("\n");
 printf("\n");
 printf("--------------------");
 printf("\n");
 printf("\n");
 printf("三秒后繼續...");
 Sleep(1000);
 printf("二秒后繼續...");
 Sleep(1000);
 printf("一秒后繼續...");
 Sleep(1000);
 system("cls");
 main();
 }
 return 0;
}
char case_win(int left, int right) {
 char reslut;
 /*
 *聲明
 *石頭->1
 *剪刀->2
 * _布->3
 */
 /*
 * 規則:
 * 石頭->剪刀
 * 剪刀->布
 * 布->石頭
 */
 /*判斷,左邊是玩家*/
 if (left == right) {
 reslut = 'P';
 }
 else {
 if (left == 1) {
 if (right == 2) {
 reslut = 'L';
 }
 else if (right == 3) {
 reslut = 'R';
 }
 }
 else if (left == 2) {
 if (right == 1) {
 reslut = 'R';
 }
 else if (right == 3) {
 reslut = 'L';
 }
 }
 else if (left == 3) {
 if (right == 1) {
 reslut = 'L';
 }
 else if (right == 2) {
 reslut = 'R';
 }
 }
 }
 return reslut;
}
int echoinput(int inputnum) {
 int reslut = 0;
 switch (inputnum) {
 case 1:
 printf("(石頭)");
 break;
 case 2:
 printf("(剪刀)");
 break;

 case 3:
 printf("(布)");
 break;
 default:
 printf("(輸入有誤)");
 reslut = 1;
 break;
}
 return reslut;
}

全局變量

int pcinput; //電腦輸入
int userinput; //用戶輸入

函數定義

char case_win(int left, int right);//判斷哪邊贏了;left是玩家,right是電腦
int echoinput(int inputnum);//根據兩個全局變量輸出對應進行的操作

打印 規則和輸入提示

printf("規則\n\n");
puts("1.石頭\n");
puts("2.剪刀\n");
puts("3.布 \n");
printf("%s你的輸入:", echo);
scanf_s("%d", &userinput);
printf("\n");

Main方法中的主要邏輯

int main() {
 printf("規則\n\n");
 puts("1.石頭\n");
 puts("2.剪刀\n");
 puts("3.布 \n");
 printf("%s你的輸入:", echo);
 scanf_s("%d", &userinput);
 printf("\n");
 if (echoinput(userinput) == 1) {
 Sleep(1000);
 system("cls");
 main();
 }
 else {
 printf("\n");
 printf("\n");
 printf("%s等待電腦結果.\0", echo);
 Sleep(500);
 printf(".");
 Sleep(500);
 printf(".\n");
 srand(time(NULL));
 pcinput = rand() % 3 + 1;
 printf("\n");
 echoinput(pcinput);
 printf("\n");
 printf("\n");
 if (case_win(userinput,pcinput) == 'L') {
 printf("玩家勝利");
 }
 else if(case_win(userinput,pcinput)=='R'){
 printf("電腦勝利");
 }
 else {
 printf("雙方平局");
 }
 printf("\n");
 printf("\n");
 printf("--------------------");
 printf("\n");
 printf("\n");
 printf("三秒后繼續...");
 Sleep(1000);
 printf("二秒后繼續...");
 Sleep(1000);
 printf("一秒后繼續...");
 Sleep(1000);
 system("cls");
 main();
 }
 return 0;
}

函數實現-判斷輸入

當參數inputnum為1,2,3時,進行對應的打印操作,如果有誤在Main方法中清屏遞歸

int echoinput(int inputnum) {
 int reslut = 0;
 switch (inputnum) {
 case 1:
 printf("(石頭)");
 break;
 case 2:
 printf("(剪刀)");
 break;

 case 3:
 printf("(布)");
 break;
 default:
 printf("(輸入有誤)");
 reslut = 1;
 break;
}
 return reslut;
}

邏輯函數-判斷輸贏

char case_win(int left, int right) {
 char reslut;
 /*
 *聲明
 *石頭->1
 *剪刀->2
 * _布->3
 */
 /*
 * 規則:
 * 石頭->剪刀
 * 剪刀->布
 * 布->石頭
 */
 /*判斷,左邊是玩家*/
 if (left == right) {
 reslut = 'P';
 }
 else {
 if (left == 1) {
 if (right == 2) {
 reslut = 'L';
 }
 else if (right == 3) {
 reslut = 'R';
 }
 }
 else if (left == 2) {
 if (right == 1) {
 reslut = 'R';
 }
 else if (right == 3) {
 reslut = 'L';
 }
 }
 else if (left == 3) {
 if (right == 1) {
 reslut = 'L';
 }
 else if (right == 2) {
 reslut = 'R';
 }
 }
 }
 return reslut;
}

實現邏輯函數的返回值

/*
當返回值reslut為'L'時,玩家勝利
當返回值reslut為'R'時,電腦勝利
否則雙方平局
*/

以上就是使用C語言怎么實現一個猜拳小游戲,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

社会| 庄河市| 凤翔县| 牟定县| 县级市| 聂荣县| 桑植县| 葫芦岛市| 尼勒克县| 涟源市| 土默特右旗| 长武县| 上杭县| 同德县| 滨海县| 西充县| 灵丘县| 方正县| 平顶山市| 永寿县| 达孜县| 鸡泽县| 延寿县| 诸暨市| 北票市| 太和县| 金门县| 开鲁县| 白河县| 南郑县| 阳信县| 方山县| 如东县| 崇礼县| 湖南省| 普兰店市| 山东| 尤溪县| 德保县| 南投县| 莱芜市|