一、判斷乙個數是不是對稱數
思路:根據引數構造乙個新的數(實現從低位到高位逆轉),這個數是將原數的高低位對稱交換,例如:123---->321, 12321----->12321。使用while迴圈實現
/*data是要實現的函式接收到的引數*/
int temp = data;
int new_data = 0;//作為新的data與原來的data比較
while(temp)//通過迴圈一次取出data的低位至高位,並生成new_data
然後實現函式的其他部分:
/**
判斷乙個數是不是對稱數(回文數),是的話返回1,不是的話返回0
*/#include int ispalindromenum(int data)
if(data == new_data)
return 0;
}void main()
二、判斷字串是不是回文(對稱)
採用逐個字元比較的方法。當然,上面的對於對稱數的判斷也可以先將該數轉化成字串,然後採用下面的方法比較,不過好像有點繞。。。
//判斷是不是回文,是返回1,不是返回0,出錯返回-1
#include #include int palindrome(char *p)
} return 1; //遍歷字串的一半後沒有發現不同的字元,說明字串是回文
} return -1;//字串指標為空
}
判斷回文字串
遞迴入門 所謂回文字串,就是乙個字串,從左到右讀和從右到左讀是完全一樣的。比如 level aaabbaaa 題目 判斷乙個字串是否為回文 解法 遞迴 遞迴的作用在於把問題的規模不斷縮少,直到問題縮少到能簡單地解決 問 如何縮少問題規模?答 通過觀察可以知道,乙個回文字串其中內部也是回文。所以,我們...
判斷回文字串
本題要求編寫函式,判斷給定的一串字元是否為 回文 所謂 回文 是指順讀和倒讀都一樣的字串。如 xyzyx 和 xyzzyx 都是回文。bool palindrome char s 函式palindrome判斷輸入字串char s是否為回文。若是則返回true,否則返回false。include in...
回文字串判斷
問題描述 回文字串指的是乙個順著讀和反過來讀都一樣的字串,比如 abcba poop 等,判斷乙個字串是否是回文字串。這裡提供兩種解法 解法一 同時從字串頭尾開始向中間掃瞄字串,如果所有頭尾字元都一樣,那麼這個字串就是乙個回文字串。採用這種方法,只需要維護頭部和尾部兩個掃瞄指標即可,終止條件是尾指標...