最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

用c語言實現(xiàn)《狼人殺》游戲發(fā)牌系統(tǒng)

 更新時間:2022年01月23日 10:26:55   作者:Wccyy883  
大家好,本篇文章主要講的是用c語言實現(xiàn)《狼人殺》游戲發(fā)牌系統(tǒng),感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下

1.前言

新年將至,親戚朋友在家中免不了玩一下桌游,狼人殺確實是一個不錯選擇。那么針對正常的狼人殺玩法(8人局和12人局),博主利用一上午時間做了一個《狼人殺自動發(fā)牌系統(tǒng)》(可查看游戲教程和人物屬性)。接下來就直接看程序效果和完整代碼吧! 

2.程序效果

3.完整代碼

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<windows.h>
 
void charability();
 
void gamerule8();
 
void gamerule12();
 
void sortplayer(int x);
 
void giveplayer8();
 
void giveplayer12();
 
int main()
{
	while(1)
	{
	
	int number; 
	printf("-----------------------------------輸入“1”選擇發(fā)牌模式(8人局 or 12人局)--------------------------------------------\n");
	printf("------------------------------------------輸入“2”查看游戲規(guī)則--------------------------------------------------------\n"); 
	printf("------------------------------------------輸入“3”查看角色技能-------------------------------------------------------\n");
	printf("------------------------------------------輸入“4”退出游戲------------------------------------------------------------\n");
	printf("請輸入:\n");
	scanf("%d",&number);
	if(number==1)
	{
    int number2; 
    system("cls");
	printf("------------------------------------------輸入“1”為8人局模式發(fā)牌-----------------------------------------------------\n");
	printf("------------------------------------------輸入“2”為12人局模式發(fā)牌----------------------------------------------------\n");
	printf("請輸入:\n");
	scanf("%d",&number2);
	system("cls");
	if(number2==1)
	{
	giveplayer8();
	}else if(number2==2)
	{
	giveplayer12();	
	}else{
		
		goto start;
	}
	
	}else if(number==2)
	{
	system("cls");
	int number4;
	printf("----------------------------------------輸入“1”查看8人局規(guī)則-----------------------------------------------------\n");
	printf("----------------------------------------輸入“2”查看12人局規(guī)則-----------------------------------------------------\n");	
	printf("請輸入:\n");
	scanf("%d",&number4);
	system("cls");
	if(number4==1)
	{
		gamerule8();
	}else if(number4==2){
		gamerule12();
	}else{
		
		goto start;
	}
	
	}else if(number==3){
		charability();
	}else if(number==4)
	{
		break;
	}else{
	start:
	printf("----------------------------------------請重新輸入正確的指令--------------------------------------------------\n\n");
	}
}
   system("cls");
   printf("-------------------------------------------游戲結(jié)束--------------------------------------------------------------------\n");
   printf("-------------------------------------------游戲結(jié)束--------------------------------------------------------------------\n");
   printf("-------------------------------------------游戲結(jié)束--------------------------------------------------------------------\n");
   printf("--------------------------------------MADE BY CSDN: Wccyy883-----------------------------------------------------------\n");
   system("pause");
   return 0;
}
void charability()
{
	system("cls");
	printf("1.普通村民:\n本身沒有任何能力,一覺睡到天亮卻要考慮很多事情。平民會接收到真假混雜的信息,需要從中分辨和判斷出正確的信息。\n");
	printf("2.狼人:\n每天晚上會殘忍地殺害一個村民,到了白天,狼人要假扮村民隱藏自己的身份,故意誤導(dǎo)或陷害其他村民。\n") ;
	printf("3.預(yù)言家:\n每晚預(yù)言家可以窺視一個玩家的真實身份,是村莊里的靈魂人物,帶領(lǐng)好人走向勝利。\n"); 
	printf("4.女巫:\n女巫擁有兩瓶藥,解藥可以救活一名當(dāng)晚被狼人殺害的玩家,毒藥可以毒殺一名玩家,女巫在每天晚上最多使用一瓶藥,女巫不可自救.\n");
	printf("5.獵人:\n當(dāng)獵人被狼人殺害或被村民處決時,他可以射殺任意一個玩家。但當(dāng)獵人由于意外死亡(如女巫的毒藥或者被殉情而死)他不可在死前射出子彈\n");
	printf("6.警長:\n附加身份牌,游戲開始后第一天從所有玩家中通過投票選舉出一名玩家授予警長。警長在白天最后發(fā)言并且投票時有1.5 票。\n");
	printf("7.白癡:\n好人陣營,隱神牌,白癡平時與普通村民無異,但當(dāng)他被村民票死的時候,他可以翻牌亮出身份,若如此做就能免死。在所有玩家發(fā)言結(jié)束后,多一次發(fā)言機會,但是翻牌以后的白癡不能投票。\n");
}
void gamerule8()
{
    printf("8人狼人殺的配置一般為:3個狼、2個平民、1個預(yù)言家、1個獵人和1個女巫,這也是能湊成一局狼人殺最基本的搭配\n"); 
    printf("因為正常情況下一局狼人殺無論人數(shù)多少都需要3個狼人和3個神職人員,否則游戲很難進行下去,平民人數(shù)則根據(jù)你們現(xiàn)實的人數(shù)進行調(diào)整\n"); 
    
}
void gamerule12()
{
	printf("(標(biāo)準(zhǔn)12人局包括:4個平民,4個狼人,1個預(yù)言家,1個女巫,1個獵人,1個白癡) 法官:天黑請閉眼,狼人請睜眼。 假如你手牌是狼人(即12號玩家):\n");
	printf("法官:天黑請閉眼,狼人請睜眼。 假如你手牌是狼人(即12號玩家): 你需要睜開眼睛,此時會看見另外3個睜眼玩家,沒錯,他們就是你的狼同伴了,你的任務(wù)就是和他們一起,攜手把好人殺掉。\n");
	printf("你無需比劃任何手勢,也不需要努力去參透伙伴中所謂的高玩在比劃的任何手勢,靜靜的看著他們即可,僅僅只需要記住伙伴們最終向法官出示的選擇殺掉的那個號碼。 然后閉眼,等待。 法官:狼人請閉眼,女巫請睜眼。\n");
	printf("假如你手牌是女巫(即11號玩家): 整局游戲女巫手上有 一瓶救藥 和 一瓶毒藥,分別用來 救一個人 和 毒死一個人。 每一個晚上最多使用一瓶。\n");
 
}   
 
void sortplayer(int x)
{
	if(x==1)printf("普通平民\n");
	else if(x==2)printf("普通平民\n");
	else if(x==3)printf("狼\n");
	else if(x==4)printf("狼\n");
	else if(x==5)printf("狼\n");
	else if(x==6)printf("女巫\n");
	else if(x==7)printf("預(yù)言家\n");
	else if(x==8)printf("獵人\n"); 
	else if(x==9)printf("普通平民\n");
	else if(x==10)printf("普通平民\n");
	else if(x==11)printf("狼\n");
	else if(x==12)printf("白癡\n");
}
void giveplayer8()
{
	srand(time(NULL));
	int a[8]={0};
	int i;
	int all;
	for(i=0;i<8;i++)
	{
		while(1){
		 all=rand()%8+1;
		int j,t;
		t=0;
		for(j=0;j<8;j++)
		{
			if(a[j]==all)
			{
				t=1;
			}
		}
		if(t==0)
		{
			break;
		}
	}
	a[i]=all;
	}
	printf("\n");
   for(i=0;i<8;i++)
	{
		printf("%d號玩家身份:\n",i+1);
		sortplayer(a[i]);
	}
	
}
 
void giveplayer12()
{
	srand(time(NULL));
	int a[12]={0};
	int i;
	int all;
	for(i=0;i<12;i++)
	{
		while(1){
		 all=rand()%12+1;
		int j,t;
		t=0;
		for(j=0;j<12;j++)
		{
			if(a[j]==all)
			{
				t=1;
			}
		}
		if(t==0)
		{
			break;
		}
	}
	a[i]=all;
	}
	printf("\n");
   for(i=0;i<12;i++)
	{
		printf("%d號玩家身份:\n",i+1);
		sortplayer(a[i]);
	}
}

總結(jié)

到此這篇關(guān)于用c語言實現(xiàn)《狼人殺》游戲發(fā)牌系統(tǒng)的文章就介紹到這了,更多相關(guān)c語言狼人殺內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解C語言解決經(jīng)典問題之兔子產(chǎn)子

    詳解C語言解決經(jīng)典問題之兔子產(chǎn)子

    有一對兔子,從出生后的第 3 個月起每個月都生一對兔子。小兔子長到第 3 個月后每個月又生一對兔子,假設(shè)所有的兔子都不死,問 30 個月內(nèi)每個月的兔子總數(shù)為多少?本文將用C語言解決這一經(jīng)典問題,需要的可以參考一下
    2022-03-03
  • C++詳解Primer文本查詢程序的實現(xiàn)

    C++詳解Primer文本查詢程序的實現(xiàn)

    這個程序還是比較復(fù)雜的,把這句話作為文章的開頭可以看出它的真實性.....這篇文章主要介紹了文本查詢程序的實現(xiàn),下面我們一起來看看
    2022-06-06
  • C++實現(xiàn)LeetCode(27.移除元素)

    C++實現(xiàn)LeetCode(27.移除元素)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(27.移除元素),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C語言實現(xiàn)打印數(shù)字金字塔

    C語言實現(xiàn)打印數(shù)字金字塔

    這篇文章主要介紹了C語言實現(xiàn)打印數(shù)字金字塔方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • C程序中唯一序列號的生成實例詳解

    C程序中唯一序列號的生成實例詳解

    這篇文章主要介紹了C程序中唯一序列號的生成實例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • C++實現(xiàn)LeetCode(5.最長回文子串)

    C++實現(xiàn)LeetCode(5.最長回文子串)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(5.最長回文子串),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C++?棧和隊列的實現(xiàn)超詳細解析

    C++?棧和隊列的實現(xiàn)超詳細解析

    棧和隊列,嚴(yán)格意義上來說,也屬于線性表,因為它們也都用于存儲邏輯關(guān)系為?"一對一"?的數(shù)據(jù),但由于它們比較特殊,因此將其單獨作為一章,做重點講解
    2022-03-03
  • C++實現(xiàn)簡單FTP客戶端軟件開發(fā)

    C++實現(xiàn)簡單FTP客戶端軟件開發(fā)

    這篇文章主要為大家詳細介紹了C++實現(xiàn)簡單FTP客戶端軟件開發(fā),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C++中的const限定符的使用和作用

    C++中的const限定符的使用和作用

    C++ 中的 const 限定符用于聲明不可變量,即在變量聲明時指定該變量的值不可修改。它的使用可以幫助程序員避免一些常見的編程錯誤,如誤修改不應(yīng)該被修改的變量的值等
    2023-05-05
  • C語言中用棧+隊列實現(xiàn)隊列中的元素逆置

    C語言中用棧+隊列實現(xiàn)隊列中的元素逆置

    這篇文章主要介紹了C語言中用利用棧和隊列實現(xiàn)隊列中的元素逆置的相關(guān)資料,對正在學(xué)習(xí)的小伙伴有一定的參考價值,需要的可以參考一下,希望對你有所幫助
    2022-02-02

最新評論

红桥区| 独山县| 临沂市| 屏边| 麻栗坡县| 钟山县| 蓬安县| 大田县| 桐庐县| 关岭| 松潘县| 嵊州市| 桦川县| 凤城市| 灵川县| 富平县| 阳曲县| 东丰县| 新平| 会理县| 祁阳县| 武功县| 平远县| 麦盖提县| 涟水县| 海伦市| 普安县| 朝阳县| 东乡族自治县| 海阳市| 密山市| 收藏| 义马市| 绥阳县| 高碑店市| 五家渠市| 名山县| 开化县| 澎湖县| 淮南市| 武山县|