C语言字符串反转: 输入一个英文句子如this is a dog 将句子反转输出 dog a is this
时间: 2024-02-07 10:04:19 浏览: 95
C语言指针实现字符串的反转
好的,这是一个经典的C语言字符串问题。以下是一个简单的实现,可以实现你所需的功能:
```
#include <stdio.h>
#include <string.h>
void reverseWords(char *str)
{
char *word_begin = str;
char *temp = str;
while (*temp) {
temp++;
if (*temp == '\0') {
reverse(word_begin, temp - 1);
}
else if (*temp == ' ') {
reverse(word_begin, temp - 1);
word_begin = temp + 1;
}
}
reverse(str, temp - 1);
}
void reverse(char *begin, char *end)
{
char temp;
while (begin < end) {
temp = *begin;
*begin++ = *end;
*end-- = temp;
}
}
int main()
{
char str[] = "this is a dog";
reverseWords(str);
printf("%s", str);
return 0;
}
```
这个程序通过遍历输入字符串,将每个单词反转,并最终将整个字符串反转。希望能对你有所帮助!
阅读全文