C語言初學者(自學)做的一個猜數字小遊戲

她丨也曾來過發表於2021-01-02

學習c語言有15天左右了,我自己是自學的,學習了一些基本的一些基本的迴圈和分支語句,也就是while,do while,if else,switch case語句,以及自定義函式和庫函式的呼叫,還有一些改變字型顏色和字型背景的命令,就可以實現這個猜數字的小遊戲,話不多說,下面直接放程式碼和執行結果。
下面的程式碼註釋都很詳細,

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <time.h>

void caidan()
{
	printf("****************************\n");
	printf("******** 1:開始遊戲 ********\n");
	printf("****************************\n");
	printf("******** 2:退出遊戲 ********\n");
	printf("****************************\n");
	printf("******** 3:遊戲介紹 ********\n");
	printf("****************************\n");
}

void play()//遊戲函式
{
	int cai=0;
	int suiji = rand()%100+1;//生成隨機數
	system("color b5");//改變背景顏色和字型顏色
	printf("隨機數字生成中...\n");
	Sleep(2000); //暫停2000ms
	printf ("\n\n隨機數字已經生成\n輸入你猜測:\n\t");
	while(1)//實現判斷
	{	
		scanf ("%d",&cai);
		if (cai > suiji)
		{
			printf ("猜大了,請再次猜測:\n");
		}
		else if (cai < suiji)
		{
			printf ("猜小了,請再次猜測:\n");
		}
		else
		{
			system("color f5");
			system("cls");//清除螢幕
			printf ("恭喜你,猜測正確,結果就是%d\n【遊戲結束】\n獎勵一個QQ好友:2639962274\n",suiji);
			printf("再次遊戲請按1\n結束遊戲請按2\n");
			break;
		}
	}
 } 
int main()
{
	int xuanze=0;
	srand((unsigned int)time(NULL));//獲取計算機當前時間戳,提供給rand()以便生成隨機值
	caidan();//列印選單
	do
	{
		printf("\t請輸入你的選擇:\n");
		scanf("%d",&xuanze);//接受選擇
		switch(xuanze)//選單的選擇判斷
		{
			case 1:
				system("cls");
				play();
				break; 
			case 2:
				system("cls");
				system("color f3");
				printf("【遊戲結束】\n歡迎下次遊戲\n");
				break;
			case 3:
				system("color b3");
				printf("【遊戲名】:猜數字\n【遊戲規則】:計算機隨機生成一個1-100的整數,\n\t玩家將去猜測,直到猜測正確,遊戲結束\n");
				break;
			default:
				printf("【輸入錯誤】\n請重新選擇!\n");
				break;
		}
	}
	while(xuanze!=2);//只要不是選擇退出遊戲,則再次進入迴圈
	return 0;
 } 

下面是實際執行效果:
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

在這裡插入圖片描述
很簡陋的一個遊戲,不過做出來的那一刻,蠻有成就感的,黑乎乎的命令框裡能做這些事,讓我一個野生自學者很興奮。

相關文章