输偶数有结果,奇数没有结果
如果把第一个for循环里改成i+=1,则奇偶都无结果,求解答
第68行,循环条件设置问题,修改如下,供参考:
#include <stdio.h>
#include <string.h>
int main()
{
char str[1000],t;
int i,j,k;
gets(str);
k=strlen(str);
for(i=0;i< k - 2;i++) //修改
{
for(j = 0;j < k - 2 - i; j++){
if (j % 2){ //奇数位
if(str[j]>str[j+2])
{t=str[j];str[j]=str[j+2];str[j+2]=t;}
}
else{ //偶数位
if(str[j]<str[j+2])
{t=str[j];str[j]=str[j+2];str[j+2]=t;}
}
}
}
printf("%s",str);
return 0;
}