使用c语言调换单词顺序
时间: 2024-05-13 20:16:52 浏览: 86
C语言的单词排序
可以使用C语言中的字符串处理函数来调换单词的顺序。以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
void reverseWords(char *s) {
int i, j, len = strlen(s);
for (i = 0, j = 0; i < len; i++) {
if (s[i] == ' ') {
// reverse word
for (int k = i - 1; j < k; j++, k--) {
char temp = s[j];
s[j] = s[k];
s[k] = temp;
}
// move j to next word
j = i + 1;
}
}
// reverse last word
for (int k = len - 1; j < k; j++, k--) {
char temp = s[j];
s[j] = s[k];
s[k] = temp;
}
// reverse whole string
for (int k = 0; k < len / 2; k++) {
char temp = s[k];
s[k] = s[len - k - 1];
s[len - k - 1] = temp;
}
}
int main() {
char s[] = "hello world";
printf("Before: %s\n", s);
reverseWords(s);
printf("After: %s\n", s);
return 0;
}
```
这个程序使用了三次循环来完成单词顺序的调换。首先,程序在第一个循环中找到每个单词的位置,并在第二个循环中反转每个单词。最后,在第三个循环中反转整个字符串。
阅读全文