1. 代码部分
#include <stdio.h> #include <string.h> //反转字符串中单词的字符顺序 void reverseWords(char *s) { int start = 0; //遍历字符串 for(int i = 0; i <= strlen(s); i++) { if(s[i] == ' ' || s[i] == '\0') //遇到空格或字符串结束符,反转当前单词 { int end = i - 1; while(start < end) { //交换字符 char temp = s[start]; s[start] = s[end]; s[end] = temp; start++; end--; } //更新下一个单词起始位置 start = i + 1; } } } int main() { char input[] = "This is a test program"; printf("Input : %s\n", input); reverseWords(input); printf("Output : %s\n", input); return 0; }