void fun(char * s)
{
int i,n,k;
char c;
n=0;
for(i=0;s[i]!='\0';i++) /*如果字符串沒有結束,也就是給的字符串沒有到結尾就執行循環,壹個字符串的末尾會有壹個 '\0'的結束標誌的*/
n++; /*這個for循環結束後n裏面是這個字符串***有多少個字符*/
if(n%2==0) /*如果n對二取余等於0,即字符個數是偶數*/
k=n-1;
else
k=n-2;/*if之後,如果***十個字符,那麽k是9,如果9個字符k是7,即最後壹個下標是奇數的下標,這是為了把最後壹個放到第壹位*/
c=s[k]; //臨時變量,用於存放最後壹個下標為奇數的字符
for(i=k-2;i>=1;i=i-2) //字數下標字符後移2個,不包括最後壹位
s[i+2]=s[i];
s[1]=c; //最後壹個奇數移到s[1]
}
void main()
{
char s[80]="abcdefgh";
printf("\nThe original string is:%s\n",s);
fun(s);
printf("\nThe result is:%s\n",s);
}