第一个for循坏有点多余,应只判断是否全为’a’,全为则最后一位改为’b’
#define f(i, a, b) for (int i = a; i <= b; i++)
char * breakPalindrome(char * palindrome){
if(strlen(palindrome)==1)
return "";
f(i,'a','z'){
f(j,0,strlen(palindrome)/2-1){
if(palindrome[j]>i){
palindrome[j]=i;
return palindrome;
}
else if(palindrome[j]!=i){
palindrome[strlen(palindrome)-j-1]=i;
return palindrome;
}
}
}
return "";
}