如何判斷C語言的迴文數?

2020-12-14 麥丘省錢幫

迴文數意指一個整數其各位數字按照正反順序讀完全相同,例如12321。判斷給出的整數是否是迴文數。若是,則輸出該整數各位數字之和,否則輸出no。

原理大致為:任何一個數除以10的餘數就是該數最後一位;任何一個數除以10的商就是排除掉最後一位後的數;所以 ,一個數1234 就可以通過這種方法得到 123 和 4;接下來對 123 進行同樣的操作,就得到 12 和 3;接下來得到 1 和 2;接著得到 0 和 1;整個過程是個循環,當商不是 0 的時候就一直如此;每次拿到一個餘數,都用來構造新數,新數=新數*10+餘數;所以經過四次循環後,我們得到新數 4321 ,如果是回文,那麼新數應該等於原數,否則,說明不是回文。

判斷迴文數的程序應為:

#include<stdio.h>int main(void){int a;scanf("%d",&a);//舉個例子a=1234int m;int sum = 0;m = a;//m=1234while(m)//m在第四次為0,循環的條件為m不等於0,所以循環四次結束{sum = sum*10 + m%10;//第一次等式為sum=0*10+1234%10(其實值就是4)=4,第二次等式為sum=4*10+123%10(其實值為3)=43,第三次等式為sum=43*10+12%10(其實值為2)=432,第四次sum=432*10+1%10(其實為1)=4321m /= 10; // m = m/10,第一次等式為m=1234/10=123,第二次m=123/10=12,第三次m=12/10=1,第四次m=1/10=0;}if( sum == a)printf("是迴文數! ");elseprintf("不是迴文數 ");//1234!=4321所以不是迴文數return 0;}

以上便是小編對:「如何判斷C語言的迴文數?」的大致介紹,希望對您有所幫助!

相關焦點

  • 怎麼用它判斷一個整數或迴文數?
    C++是一種面向對象高級語言,這相對與C語言面向過程來說確實不同。面向過程,這個很好理解,就是按照程序整個過程來設計,事情從頭到尾一目了然。這才以前的計算機編程,特別是DOS年代,是非常適合的。面向對象由此誕生,由於程序要幹很多的事情,界面還要響應用戶的不同輸入並同時進行輸出,以每個對象為設計單位就顯得更加合理,因為面向對象語言從此誕生。C++邊是其中一種比較經典的面向對象語言,我們可以把,屏幕、鍵盤、窗口和通訊單元都看成不同的對象來完成程序任務。C++核心三要素:抽象,封裝,繼承,多態。
  • 如何使用python語言代碼實現判斷是否為回文
    工具Visual Studio 2019python運行環境技術python回文回文,是按照中心對稱,從左到右或從右到左,字符串都一樣的。如果想要python語言代碼實現回文判斷,若為回文,列印回文,否則列印不是回文。
  • C語言試題及答案
    新思路 2020年秋季大一招新機試試題<C語言>一、選擇題(每題 5 分,共 20 分)1.以下說法正確的是( )A._9cpp 是正確的變量名 B. k=++n 與 k=n,n=n+1 完全等價 C.程序在執行了 int a=1,*b=&a,**c=&
  • LeetCode刷題實戰5:判斷回文子串
    今天和大家聊的問題叫做判斷回文子串,這道題很有意思,我們先來看題面:我們在暴力枚舉的時候,並不需要枚舉所有的起始位置,再判斷這個子串是否回文。實際上我們可以利用回文串兩邊相等的性質,直接枚舉回文串的中心位置,如果兩邊相等就往兩邊延伸。這樣我們最多需要枚舉n個回文中心,每次枚舉最多遍歷n次。所以最終的複雜度是O(n²)。有經驗的同學看到這個複雜度就能反應過來,這明顯不是最優解法。
  • C 語言經典算法
    C語言作為多數工科學校編程入門的教學工具語言,是很多朋友開啟編程世界大門的鑰匙。
  • 問題有點燒腦,趣談迴文數
    迴文數的內涵一個自然數,如果從左向右看和從右向左看數字都一樣,換句話說,就是「數字排列左右對稱」,就把它叫做「迴文數」。比如121、5335、6084806都是迴文數。當然,由同一個數字組成的數,如11,999也是迴文數。迴文數還要一個比較文藝的名字。
  • C語言編程實例講解
    C語言判斷三角形的類型C語言水仙花數,阿姆斯特朗數C語言最大公約數和最小公倍數C語言求自然底數e,求自然對數的底eC語言小寫轉大寫,小寫字母轉換成大寫字母C語言求回文素數C語言判斷閏年,即判斷年份是否為閏年C語言矩陣轉置C語言兔子生兔子問題C語言狼追兔子問題
  • AK leetcode 流浪計劃 - 回文串
    本文重點介紹O(n)複雜度下判斷回文子串的算法。對於判斷回文串的方法,主要有單次判斷和多次判斷。單次查詢可以使用對撞指針法進行判斷。多次查詢的方法有雙指針動態規劃,中心擴展法,Manacher(馬拉車)算法。
  • 在學C語言的人,怎能不了解這些經典算法問題?
    程序分析:判斷素數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除,則表明此數不是素數,反之是素數。\n",c); } 四、輸出9*9乘法口訣。begin = *end; *end = temp; begin++; end--; } return str; //返回結果 } 八、輸入一個字符串,判斷其是否為回文
  • C語言、Python、Scratch語言比較三個數大小的方法
    首先我們先來看一下C語言中如何比較三個數的大小:這是最容易理解的方法在之前判斷兩個數大小的基礎上,在if語句中嵌套一個if語句,經過多次判斷得出最大數。這樣可以再引用函數中將引用的函數變為max(a,b,c)或者在比較兩個數的函數在主程序裡變為max=max(max(a,b),c)下面介紹一個三元運算符,這個運算符會使程序進一步簡化,而且看起來更加的直觀。它的一般形式如下:表達式1?
  • 翻譯技巧 | 回文看英漢語言的差異
    回文是一個很有趣的文學現象,它是一種獨特的修辭手段,在詩歌或文章中巧妙地用上回文,可以使句子讀來趣味無窮。回文並不像大多數人認為的那樣只是漢語所獨有的,英語中也有不少回文的例子。在英漢兩種完全不同的語言當中,回文展現出了不同的魅力,而從它的特點可以發現英漢語言的差異。將相同的詞彙或句子在下文中調換位置或顛倒過來,產生首尾迴環的文體,叫做回文,也叫迴環。
  • C語言求回文素數代碼及解析
    兩位回文素數:11三位回文素數:101、131、151、181、191、313、353、373、383、727、757、787、 797、 919、 929本題要求解的問題是:求出所有不超過1000的回文素數。問題分析本題要使用判斷素數的方法,並且要解決如何求一個整數的迴文數。
  • 8個基礎且實用的C語言經典實例【附源碼】
    101-200之間有多少個素數,並輸出所有素數及素數的個數。程序分析:判斷素數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除,則表明此數不是素數,反之是素數。//// Created by 衝哥 on 2020/12/29.
  • 【面試現場】如何找到字符串中的最長回文子串?
    呂老師:比如cabadabae用中心擴展的算法,我已經知道了第三位為中心的aba和第5位為中心的abadaba是回文,那麼在判斷第7位為中心的回文串的時候,有什麼已知信息嗎?小史:已知第5位為中心的abadaba是回文,由回文的特性,就能夠知道2-4位和6-8位對稱,而又知道第3位為中心的aba是回文,所以2-4位是回文。這樣的話,6-8位肯定是回文。
  • LeetCode(7-整數反轉&&8-字符串轉換整數 (atoi)&&9-迴文數)
    既然我們無法直接判斷,那麼我們就退而求其次,「比較MAX/10以及MIN/10」,這樣我們就能直接判斷了,這裡我們只需要再注意一下判斷的條件就行了.在這裡插入圖片描述迴文數「題目描述」:給你一個整數 x ,如果 x 是一個回文整數,返回 ture ;否則,返回 false 。
  • C語言判斷一個數是否為整數
    C語言判斷一個數是否為整數,這是一個很常見但是又往往讓人感覺無從下手的一個問題,其實解決辦法很簡單。對於輸入的double a;使用floor(a+0.5) == a來判斷即可。
  • C語言 | 判斷是否素數
    「要成為絕世高手,並非一朝一夕,除非是天生武學奇才,但是這種人…萬中無一」這道理放在C語言學習上也一併受用
  • 透過數學檯曆看數學(2018.3.11) - 有趣的迴文數
    迴文數(Palindromic number)迴文數是指一個像14641這樣「對稱」的數,即:將這個數的數字按相反的順序重新排列後,所得到的數和原來的數一樣.這裡,「回文」是指像「媽媽愛我,我愛媽媽」這樣的,正讀反讀都相同的單詞或句子。
  • C語言面試54題
    在寫程序的時候會有很多語義錯誤,比如說,拼錯了命令,一個函數的參數個數錯了, 數據類型不匹配,等等。第4題, C語言中如何使用增加和減少語句?雙等號是等於條件判斷運算符。第12題,解釋一下c語言的原型函數。原型函數是對一個函數的聲明。它包含函數名,返回值和參數類型列表。
  • 回文問題終極篇:最小代價構造回文串
    回文串就是正著讀反著讀都一樣的字符串,面試筆試中經常出現回文相關的題目,我們之前有好幾篇講解回文問題的文章,是判斷回文串或者尋找最長回文串/子序列的:經典面試題:最長回文子串子序列解題模板:最長回文子序列如何高效判斷回文單鍊表?