gpt4 book ai didi

比较 c 上的字符(字母)

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

我正在制作这个程序来比较字母。这样做的目标是制作一款刽子手游戏。但我无法进行字母比较工作

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

int c=0,x;
char a[50],b[50],n[50],j,h;
char a1[50],b1[50],y;
main()
{
printf("Player 1:enter a word\n");
gets(n);
x=strlen(n);
printf("%d letters\n",x);

puts("now enter the word letter by letter");
do
{
gets(a);
strcat(b,a);
c++;

}
while(c!=x);
printf("%s",b);
getch();
system("cls");

c=0;

puts("Player 2:try to guess the word letter by letter");
do
{
gets(a1);
y=strcmp(a,a1);
printf("%d",y);
strcat(b1,a1);
c++;
}
while(c!=x);

printf("%s",b1);


getch();
return 0;

}

我遇到了问题,尤其是播放器 2 部分。这不应该是整个比较字母程序;这只是将字母与播放器 1 部分中的任何内容进行比较(但它不断地拖拽 1 和 -1 并且不知道如何解决这个问题)。

我确信只要多一点编程知识,我应该能够解决这个问题,但我是一个初学者,几乎想自学。任何提示都会非常有帮助:)

最佳答案

在您的代码中,a 存储了 Player1 输入的临时值,因此如果 Player1 输入“abide”,则 Plyaer1 循环后的结果将为 a = "e" 。在 Player2 的循环中,您始终将“e”与用户的输入进行比较。

解决方案可能是比较第一个字符而不是使用 strcmp

y = b[c] - a1[0];

关于比较 c 上的字符(字母),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30565351/

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