gpt4 book ai didi

c - 在反转句子中的每个单词时如何考虑空格?

转载 作者:太空宇宙 更新时间:2023-11-04 00:28:49 26 4
gpt4 key购买 nike

基本上这个程序应该接受用户的输入并反转句子中的每个单词。所以如果我曾经“Hello World”应该打印“olleH dlroW”,但截至目前它打印“dlroW olleH”。所以我的程序颠倒了整个句子,而不仅仅是特定的单词。不太确定如何处理它。我尽力了。

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

void reverse(char *str, int start, int end)
{

char temp;
while (start < end)
{
if(isspace(str[start]))
{
printf("%s ", str);
start++;
}
else
{
temp = str[start];
str[start] = str[end];
str[end] = temp;
start++;
end--;
}
}
return;
}

int main()
{
char word[256];
int i=0, bound;
printf("Enter a string\n");
fgets(word, 256, stdin);
printf("%s", word);

bound = strlen(word);
reverse(word, i, bound-1);
printf("%s\n", word);



}

最佳答案

跟踪开始的点和找到空格的时间 - 都是整数。如果您找到一个空格,则获取从“开始”(第一个字母)到“结束”(空格)的子字符串。反转子字符串并将其放回原始字符串并继续。

关于c - 在反转句子中的每个单词时如何考虑空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42915023/

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