• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    c語言如何忽略前導零

    C說話是一門功能壯大的專業化編程說話,普遍應用于各個行業。在這里我將分享一下若何在反轉數字時忽略前導零的方式。

    東西/原料

    • 電腦
    • 編譯器
    • 編纂器

    方式/步調

    1. 1

      先確定相關策略息爭決法子,然后打開編纂器起頭編寫法式。我一般利用Vim編纂器。在反轉數字的時辰,有時末從頭至尾的數字會有0,在反轉后,不該當將它們保留。

    2. 2

      末從頭至尾為零時,可以操縱除法和求模運算的特征來處置。在這里,求模運算可以理解為求余數。在整型的運算中,會忽略小數部門。好比,一個三位數反轉可以如許操作:

      先操縱求模運算,求10的余數,就可以獲得個位的數字。然后操縱除法,每次除以10,商就是原數字去失落個位的部門,再操縱求模運算,依次如許就可以取得列位數字。

      因為末從頭至尾會有零,還得進一步處置,這里可以操縱0的性質,它與任何數相乘都為零。上一個步調中取得了列位數字,以三位數為例,這里可以如許構成反轉數字:

      反轉數字=原個位數字x100+原十位數字x10+原百位數字

      也就是說,從首位到個位數,依次從1到10的總位數次冪相乘,然后再相加,就是反轉后的數字。

      下圖中的代碼中“tmp”指原數字,“pow”指的就是10的次冪,好比1、10、100……

    3. 3

      但在那之前,需要一些籌辦工作,需要確定命字的位數。同上方異曲同工,原數字自身依次除以10,直到變為0,總次數就是數字位數。

      下圖中,“num”指原數字。

    4. 4

      以下是整段代碼。當然,你也可以操縱字符組,將數字視為字符串,然后再依次處置。但我為了可以把反轉后的數字看成變量,而不僅僅只是輸出,是以選擇以這種體例進行反轉。

    5. 5

      然后進行編譯。我一般利用gcc編譯器。因為這段代碼中,利用了C說話新尺度的一些內容(好比注釋),是以添加了參數-std=c11。以下是我的編譯號令:

      gcc -std=c11 reverse.c -o reverse.out

    6. 6

      下面是運行成果,年夜體上還算可以。會發現若是數字過年夜,會溢出,導致錯誤的成果。是以,為了可以利用更年夜的數字,可以改用long long、unsigned long long等整型變量類型。

    • 發表于 2018-07-30 00:00
    • 閱讀 ( 1821 )
    • 分類:其他類型

    你可能感興趣的文章

    相關問題

    0 條評論

    請先 登錄 后評論
    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆