C/C++制作人机猜拳小游戏
生活随笔
收集整理的這篇文章主要介紹了
C/C++制作人机猜拳小游戏
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C語言學完了之后總是感覺做不出什么有意思的東西,今天我們就來做一個好玩的小游戲試試。
#include<stdio.h> #include<time.h> #include<conio.h> #include?<windows.h>void win(int a, int b); void wait(); void softgame(); void lefttime(); void gamestart(); void readf(); void writef(); void startf(); void zhifen();struct game {int i;char name[10]; }; struct game machine[3] = { {1,"石頭"},{2,"剪刀"},{3,"布"} };char nname[] = ""; // write int zfen; // 積分write char name[18]; // read int zhif; // 積分readint main() {srand((unsigned)time(0));startf();return 0; }void zhifen()//名字積分 {printf("游戲前請輸入名字(不能空格)和積分\n");printf("輸入名:");scanf("%s", &nname);printf("輸入積分:");scanf("%d", &zfen); }void readf()//read文件 {FILE *file;file = fopen("user.txt", "r");if (file == NULL){printf("沒文件,已建,請重新打開一次");FILE *fp;fp = fopen("user.txt", "w");fclose(fp);getch();return;}if (fscanf(file, "%s %d", &name, &zhif) != EOF){fscanf(file, "%s %d", &name, &zhif);printf("\n");printf("名:%s 積分:%d", name, zhif);printf("\n");}else {printf("文檔為空\n");zhifen();writef();readf();gamestart();return;}if (zhif < 10){printf("任意鍵繼續\n");getch();system("cls");printf("積分為0\n");zhifen();writef();readf();gamestart();return;}fclose(file);gamestart(); }void writef()//write {FILE *file;file = fopen("user.txt", "w");if (file == NULL){printf("不能打開文件!");return;}fprintf(file, "%s %d", nname, zfen);fclose(file); }void startf() {//writef();readf(); } void gamestart()//游戲開始 {while (1){//wait();printf("--------------------------------------\n");printf("和\"C語言狗\"玩石頭、剪刀、布游戲\n\n");softgame();} }void softgame()//玩家選出 {char k;int mycard;int num;printf("你選擇出1石頭2剪刀3布:");scanf("%s", &k);switch (k){case '1':mycard = 7;printf("你出了:石頭!\n");break;case '2':mycard = 6;printf("你出了:剪刀!\n");break;case '3':mycard = 5;printf("你出了:布!\n");break;default:system("cls");lefttime();/* return; */gamestart();break;}num = rand() % 3;printf("電腦出了:%s\n", machine[num].name);win(machine[num].i, mycard);/*printf("\n\n");printf("......按任意鍵進行下一次對決......\n");getch();system("cls");*/ }void wait() {printf("\n\n");printf("......按任意鍵進行下一次對決......\n");getch();// system("cls"); }void?win(int?a,?int?b)//判定勝負 {int sum;sum = a + b;if (sum == 8){printf("***竟然是平局!***");readf();}elseif (sum == 7 || sum == 10){printf("***很遺憾,\"C語言狗\"勝了!***");zfen = zhif - 10;strcpy(nname, name);writef();readf();}else{printf("***恭喜,你勝了!***");zfen = zhif + 10;strcpy(nname, name);writef();readf();} } void lefttime() {int i = 3;for (int a = 0; a < 3; a++){printf("選擇錯誤,請輸入1或2或3選擇\n");printf("%d秒后繼續操作", i);i--;Sleep(1000);system("cls");}printf("\n");printf("名:%s 積分:%d", name, zhif);printf("\n"); }這個就可以玩了,大家可以試試看哦!!!
完
關注它,
你就可以得到
很多你想要的C/C++
開發工具及學習視頻資料
總結
以上是生活随笔為你收集整理的C/C++制作人机猜拳小游戏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果关机了闹钟还会响吗
- 下一篇: 诺基亚920上市时间(诺基亚8110什么