您的位置:首页 > 其它

将参数字符串中的字符反向排列

2016-04-08 13:43 281 查看
//编写一个函数reverse_string(char * string)(递归实现)
//实现:将参数字符串中的字符反向排列。
//要求:不能使用C函数库中的字符串操作函数。

//第一种方法:递归法
#include <stdio.h>
int reverse_string(char * string)
{
if (*string != '\0')
{
string++;
reverse_string(string);
printf("%c", *(string-1));
}
}
int main()
{
char *string = "abcde";
printf("源字符串为:%s\n", string);
printf("反向排列后为:");
reverse_string(string);
printf("\n");
return 0;
}

//第二种方法:
#include <stdio.h>
#include <assert.h>
#include<string.h>
char *reverse(char *str,int len)
{
int i = 0;
char *start = str;
char *end = str + len - 1;
char tmp ;
assert(str);
while (start < end)
{
tmp = *start;
*start = *end;
*end = tmp;
start++;
end--;
}

return str;
}
int main()
{
char p[] = "abcdef";
int len = strlen(p);
printf("%s\n", reverse(p,len));
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  字符串 参数 排列