#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> int reverse(char *begin, char *end) { char temp; if (begin == NULL || end == NULL) { return 0; } while (begin < end) { temp = *begin; *begin = *end; *end = temp; begin++; end --; } return 0; } int reverse_process(char *data) { char *begin; char *end; begin = end = data; while (*end != ‘\0‘) { end++; } end--; reverse(begin, end); begin = end = data; while (*begin != ‘\0‘) { if (*begin == ‘ ‘) { end++; begin++; continue; } else if (*end == ‘ ‘||*end == ‘\0‘) { reverse(begin, --end); begin =++end; } else end++; } } int main() { char data[] = "i am a teacher"; reverse_process(data); printf("%s", data); }
原文:https://www.cnblogs.com/cyyz-le/p/11215833.html