1
我正在尝试制作一个程序,它将给定数量的玩家放入给定数量的团队中。之后,他们应该随机选择(例如,你掷出“骰子”和第3队的选手42并与第4队的选手22进行战斗(所有队员都被随机放入不同的队伍中,这些队伍仅限于选择Gamemaster) )。团队和扑灭随机数在C
在我的代码中我有基本的输出和结构。它说是这样的:
1队现在拥有球员43 2队现在拥有球员12 队4现在拥有球员1 队3比现在拥有球员54
但我的问题是,如何 - 基础上代码 - 我可以保存这些信息,我如何(随后)让玩家随机战斗?同一队的成员不应该能够互相对抗,每场比赛之后,我希望球员能够以某种方式在“黑名单”上不能再滚动。
到目前为止我的代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
int mitglieder, teams, teameins = 0, teamzwei = 0, teamdrei = 0, teamvier = 0;
printf("Teamcreation\n");
printf("\nNumber of Players: ");
scanf("%d", &mitglieder);
printf("\nNumber of Teams: ");
scanf("%d", &teams);
printf("\nThere are ");
printf("%d", mitglieder);
printf(" Player in ");
printf("%d", teams);
printf(" Teams. \n");
int array[mitglieder];
for (int i = 0; i < mitglieder; i++)
{ // fill array
array[i] = i;
}
printf("The Player are in the following Teams: \n ");
for (int i = 0; i < mitglieder; i++)
{ // shuffle array
int temp = array[i];
int randomIndex = rand() % mitglieder;
array[i] = array[randomIndex];
array[randomIndex] = temp;
}
for (int i = 0; i < mitglieder; i++)
{ // print array
int random_number = rand() % teams + 1;
int tp = random_number;
if(tp == 1)
{
teameins+1;
}
else if(tp == 2)
{
teamzwei+1;
}
else if(tp == 3)
{
teamdrei+1;
}
else if(tp == 4)
{
teamvier+1;
}
printf("Team %d - Spieler: %d\n ",random_number,array[i] + 1);
}
if((teamvier == 0) && (teamdrei == 0))
{
printf("\n%d Mitglieder in Team 1 und %d Mitglieder in Team2",teameins,teamzwei);
}
else if((teamvier == 0) && (teamdrei < 0))
{
printf("\n%d Mitglieder in Team 1, %d Mitglieder in Team2 und %d Mitglieder in Team3.",teameins,teamzwei,teamdrei);
}
else if(teamvier < 0)
{
printf("\n%d Mitglieder in Team 1, %d Mitglieder in Team2, %d Mitglieder in Team 3 und %d Mitglieder in Team4.",teameins,teamzwei,teamdrei,teamvier);
}
return 0;
}
你不需要“美好的夜晚” - 这可能是人们阅读这一天的中间时间! –
对不起,这是我的一个坏习惯。感谢您的信息! –
“我如何保存这些信息”,您需要设计一个数据结构来存储生成的数据。例如,您可以拥有一组阵列,其中每个阵列条目都是玩家列表。 – kaylum