c语言程序设计填空题

1.给定程序中,函数fun的功能是把形参3所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(字符串的长度大于等于2)。例如,形参3所指的字符串为abcdefgh,执行结果为ahcbedgf。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!给定源程序如下。#include<stdio.h>
void fun(char*s)
{int i,n,k;char c;n=0;
for(i=0;s[i]!=‘\0‘;i++)n++;
if(n%2==0)k=n-1;
else k=n-2;
c=s[k];
for(i=k-2;i>=1;i=i-2)
s[i+2]=s[i];
s[1]=c;}
main(){char s[80]="abcdefgh";printf("\nThe originalstring is:%s\n",s);fun(s);printf("\nThe resultis:%s\n",s);}
if…else语句中,else k=n-2;为什么不是else k=n;

看不懂,你的代码的格式有歧义,else 后面的2句有不同的表达,建议把你的代码弄弄格式在帖出来吧。