gpt4 book ai didi

c++ - 遇到 while 循环问题

转载 作者:搜寻专家 更新时间:2023-10-31 00:33:20 26 4
gpt4 key购买 nike

我不明白为什么我运行这个小程序时屏幕上没有任何显示? while 循环甚至开始了吗?

#include <stdio.h>
#include <string.h>

int main()
{
char word[20];
char TryAgain[20] = "y";
int WordLength = 0;

while (strcmp(TryAgain, "y"))
{
printf("\t\t\t Word \n\n");
printf("What is your word, bird?\n");
scanf("%s", word);
getchar();

WordLength = strlen(word);

printf("Result: ");
for (int i = 0; i < WordLength; ++i)
{
printf("%c*", word[i]);
}
printf("\nWould you like to try another word? [y/n]\n");
scanf("%s", TryAgain);
}

getchar();
return 0;
}

最佳答案

strcmp 如果参数相同则返回 0,因此在第一次迭代时您的 while 循环正在检查 while(0)。 0 等同于 bool 检查中的 false,因此会跳过 while 循环。尝试 while(!strcmp(TryAgain, "y"))

关于c++ - 遇到 while 循环问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28999586/

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