回文:就是第一個(gè)字符與最后一個(gè)字符相等,第二個(gè)字符與倒數(shù)第二個(gè)相等,以此類推,直到中間的字符。以下講解兩種方式:
方法一:
int fun(char *str)
{
int i, j;
for (i = strlen(str); i ; i--) { ? //獲取字符串的長(zhǎng)度大小
for (j = 0; j < i - 1; j++) { ? ?//遍歷字符串,從0開始,則最后一位-1
if (str[j] == str[i-1-j])
return str;
else return 0;
}
}
}
方法二:
int fun(char *str)
{
int i, n = 0, fg = 1;
char *p = str;
while (*p)/*將指針p置位到字符串末尾,并統(tǒng)一字符數(shù)*/
{
n++;
p++;
}
for (i = 0; i < n / 2; i++) /*循環(huán)比較字符*/
if (str[i] == str[n - 1 - i]);/*相同,什么都不做*/
else /*不同,直接跳出循環(huán)*/ {
fg = 0;
break;
}
return fg;
}
以上兩種方法都可以,讀者可以選擇使用。