编写C语言程序颠倒句子中单词的顺序:+Enter+a+sentence:+you+can+cage+a+swallow+can't+you?+++++++++++++++Reversal+of+sen
时间: 2023-12-14 19:32:34 浏览: 301
用C++实现,将一句话里的单词进行倒置的方法详解
以下是C语言程序颠倒句子中单词的顺序的代码和解释:
```c
#include <stdio.h>
#include <string.h>
void reverseWords(char *s) {
int i, j, len = strlen(s);
for (i = len - 1; i >= 0; i--) {
if (s[i] == ' ') {
s[i] = '\0';
printf("%s ", &(s[i]) + 1);
}
}
printf("%s", s);
}
int main() {
char s[1000];
printf("Enter a sentence: ");
fgets(s, 1000, stdin);
printf("Reversal of sen: ");
reverseWords(s);
return 0;
}
```
解释:
1. `reverseWords`函数用于颠倒句子中单词的顺序。它的参数`s`是一个指向字符数组的指针,表示输入的句子。
2. `strlen`函数用于获取字符串`s`的长度。
3. `for`循环从字符串`s`的末尾开始遍历,每当遇到一个空格时,就将其替换为字符串结束符`\0`,然后输出该空格后面的单词。
4. 最后输出整个字符串`s`,即第一个单词。
阅读全文