gpt4 book ai didi

c - 使用 scanf 且不使用字符串库函数的 C 语言回文

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

赋值是获取一个输入字符串,并使用没有字符串库函数能够处理该字符串。这段代码目前甚至没有打印出我输入的字符串。当我从 main 中删除函数时,它神奇地开始打印。任何帮助将不胜感激

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

#define SIZE 32

int isQuit(char str[]);
void isPalindrome(char str[]);


int main (){
int cont = 0;
char str[SIZE];
fflush(stdin);
printf("please enter a word:\n");
scanf("%s\n", str);
printf("%s\n", str);

while(cont == 0)
{
scanf("%s\n", str);
printf("%s\n", str);
cont = isQuit(str);
isPalindrome(str);
}
return 0;
}

最佳答案

您很可能在终端中遇到了行缓冲问题。在您写入换行符之前,不会显示任何写入的字符。

尝试在显示输入时添加换行符:

printf("%s\n", str);

对于您希望确保显示的任何其他 printf 调用也是如此。

顺便说一句,您的空终止测试不正确。转义字符是 \,而不是 /。将循环更改为:

while (str[h] != '\0')

或者简单地说:

while (str[h])

关于c - 使用 scanf 且不使用字符串库函数的 C 语言回文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54451905/

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