标签:
例:输入 “I Love you”,输出“you Love I”;在不使用库函数,不使用sizeof()的情况下:
#include<stdio.h> #include<stdlib.h> void reverse_str(char *p,int len) //定义一个反转函数 { char *left = p; char *right = p + len-1; while (left <right) { char tmp = *left; *left = *right; *right = tmp; left++; right--; } } char *reverse(char *p) //将这个字符串中的单词先反转,再将整体反转 { int n = 0; char *arr = p; int count=0; char *p2 = arr; while (*arr) //单词反转 { n++; if (*arr ==‘ ‘) { reverse_str(p2,count); //传递单词的首地址和长度 count = -1; p2 =arr+1; } count++; arr++; } reverse_str(p2, count); reverse_str(p, n); //字符串反转 return p; } int main() { char arr[81]; gets(arr); char *ret = reverse(arr); printf("%s\n", ret); system("pause"); return 0; }
标签:
原文地址:http://blog.csdn.net/lf_2016/article/details/51388525