今天我通过做一个刽子手游戏来练习矩阵。
到目前为止,我已经设法让程序比较用户插入的字母,如果发现它等于单词的字母之一,它将给出该字母在数字中的位置(0 、1、2、3 等)。
void hangman(char word[],int size){
int counter=0;
while(counter<=7){
printf("\nInsert a letter: ");
char letter;
scanf("%c",&letter);
fflush(stdin);
if(letter==word[counter++]){
printf("\nThe letters position is %d\n",counter-1);
}else{
if(letter!=word[counter++]){
imprimirMatriz(y,4,7);
printf("\nThat letter is not part of the word!\n");
printf("Try again.\n");
}
}
}
}
现在,到目前为止,一切都很好。它给出了字母的位置,这非常棒,但是,我制作了一个一行八列的矩阵,我想做的是让程序显示字母在该矩阵上的位置。例如,如果单词是“although”并且索引字母是“a”,则必须将矩阵打印为“a _ _ _ _ _ _ _”。
如果你们能为我提供任何帮助,我将不胜感激!
最佳答案
您可以使用数组作为屏蔽字符串。 示例:
given string = 'abcd'
array1 = ['a']['b']['c']['d']
array2 = ['_']['_']['_']['_']
当玩家猜测给定字符串中存在某个字母时,您可以将屏蔽字符串的值分配给正确的字母或给定字符串的相应值。现在很容易返回屏蔽字符串。
示例: 玩家猜出字母“a”-> true array1 中“a”的索引为 0 -> array2[0] = 'a' -> 以字符串形式返回 array2:'a _ _ _'
关于c - 如何显示字母在矩阵中的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55912937/