请用C语言让一段句子中的单词颠倒过来。
时间: 2023-12-10 15:41:23 浏览: 140
可以使用 C 语言的字符串操作函数 `strtok` 和 `strrev`,代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char sentence[1000];
printf("请输入一句话:");
fgets(sentence, sizeof(sentence), stdin);
char *word = strtok(sentence, " \n"); // 分割出第一个单词
while (word != NULL) {
strrev(word); // 颠倒单词
printf("%s ", word);
word = strtok(NULL, " \n"); // 分割出下一个单词
}
printf("\n");
return 0;
}
```
这个程序会要求用户输入一句话,然后将其中的每个单词颠倒过来并输出。函数 `strtok` 用于分割字符串,每次调用返回下一个分割出来的子串。函数 `strrev` 用于颠倒一个字符串。注意,`strrev` 函数不是标准 C 函数,不是所有的编译器都支持,如果编译器不支持的话可以手动实现一个颠倒字符串的函数。另外,为了避免缓冲区溢出,我们使用了 `fgets` 函数读取用户输入的一句话,并指定了缓冲区大小。
阅读全文