发布时间:2025-12-10 23:06:55 浏览次数:1
#include<stdio.h>#include<string.h>#defineMAX_LENGTH50//最大长度char*String_Invertion(char*str);intmain(){charstring[MAX_LENGTH];printf("请输入一个字符串\n");scanf("%s",string);String_Invertion(string);printf("反转后的字符串为%s\n",string);return0;}/***@brief字符串反转函数*@paramstr目标字符串*@return反转后的字符串(str)*/char*String_Invertion(char*str){if(str==NULL)returnNULL;intlen=strlen(str);inti=0;for(i=0;i<len/2;i++)//替换len/2次{/*(按位)异或交换法,其他交换法参考day27*/str[i]=str[i]^str[len-1-i];str[len-1-i]=str[i]^str[len-1-i];str[i]=str[i]^str[len-1-i];}returnstr;}运行结果
//Createdbywww.runoob.comon15/11/9.//Copyright©2015年菜鸟教程.Allrightsreserved.//#include<stdio.h>voidreverse(char*s){//获取字符串长度intlen=0;char*p=s;while(*p!=0){len++;p++;}//交换...inti=0;charc;while(i<=len/2-1){c=*(s+i);*(s+i)=*(s+len-1-i);*(s+len-1-i)=c;i++;}}intmain(){chars[]="www.runoob.com";printf("'%s'=>\n",s);reverse(s);//反转字符串printf("'%s'\n",s);return0;}