gpt4 book ai didi

c - 当我扫描一个数组时,它会更改另一个数组吗?

转载 作者:行者123 更新时间:2023-11-30 19:41:24 24 4
gpt4 key购买 nike

int main()
{

char word[]="elephant";
char display[]="********";
int size;
int chance=10;
char choice[1]="a";
int i=0;
int indic=0;
char choice_1;


size=strlen(word);


printf("Would you like to guess the word [w] or guess a letter [l]:");
scanf("%c", &choice_1);

while(chance>0)
{


i=0;

if(choice_1=='w')
{

printf("Enter the word:");
scanf(" %s", choice);

if(strlen(choice)!=size)
{

printf("Enter a word with the correct number of letters\n");

}

if(strlen(choice)==size)

{

while(i<size)
{

if(choice[i]==word[i])
{

indic++;

}

i++;

}



if(indic==size)
{
printf("You have guessed the word!\n");
break;
}

if(indic!=size)
{
printf("You have incorrectly guessed the word\n");
chance=chance-1;
}

}

}

i=0;

if(choice_1=='l')
{

printf("Enter a letter:");
scanf(" %s", choice);

i=0;
indic=0;

while(i<=size)
{

if(choice[0]==word[i])
{

display[i]=word[i];
indic=1;

}

i++;

}

i=0;

if(indic==0)
{

printf("BAD CHOICE!\n");
chance=chance-1;

while(i<=size)
{

if(i==size)
{
printf("%c\n", display[i]);
}

printf("%c", display[i]);
i++;

}

}

if(indic==1)
{

printf("GOOD CHOICE!\n");

while(i<=size)
{

if(i==size)
{
printf("%c\n", display[i]);
}

printf("%c", display[i]);
i++;

}

}

}



printf("You have %d chances left\n", chance);

printf("Would you like to guess the word [w] or guess a letter [l]:");
scanf(" %c", &choice_1);

}

return 0;

}

我正在尝试为大学构建一个刽子手程序,我今年才开始编程。但我遇到了这个问题。当我将输入放入数组“choice[]”时,它也会由于某种原因更改数组“display[]”。例如,如果我为“choice_1”输入“w”,为“choice[]”输入“elephank” "(应该是大象)数组“display[]”更改为“lephank”。为什么要这样做?我什至不使用该循环中的显示数组来检查该单词是否正确。我知道这是一大段代码,但因为我不知道发生了什么我不知道还能做什么。任何帮助是极大的赞赏。

最佳答案

I put in 'w' for "choice_1" and 'elephank' for " choice[]"

那是你的问题。 choice 是一个 char(大小为 1 的“数组”),因此只能存储一个字符。每个进一步的字符都存储在选择旁边,其中内存被保留用于显示

关于c - 当我扫描一个数组时,它会更改另一个数组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33596617/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com