gpt4 book ai didi

即使通过简单的方法也无法在 string 和指定的 char 中找到空格

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

我正在使用此方法来查找字符串中的空格或指定单词。但这个方法不起作用。我已经检查过多次流程。

#include <stdio.h>
int main()
{
char text[50], find;
int i = 0, sp = 0;
printf("Enter text: \n");
scanf("%s", text);
printf("Enter a char to find:\n");
scanf("%c", &find);
while ( text[i] != '\0') // to receive a value untill enter is pressed.
{
if (text[i] == find) // count if text[i] is the specified value.
{ sp++; }
i++;
}
printf("%d", sp); // prints 0 always. how to fix this.
}

最佳答案

代码中的 find 始终分配有 \n 或您在扫描字符串 text 时输入的换行符> .尝试在 findscanf 语句中给出空格:

scanf("%c",&find)

为什么要留出空间?

通过提供空格,编译器会省略前面 scanf 中的 '\n' 字符

Note: scanf("%s",string) ends scanning when it encounters white space i.e, '\n' or '\0' or '\t' but to account for spaces, try using this scanf("%[^\n]s",string")

关于即使通过简单的方法也无法在 string 和指定的 char 中找到空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37508715/

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