逆序輸出整數

2021-10-25 05:14:58 字數 837 閱讀 8051

描述

將乙個整數逆序輸出。整數的範圍0到10000,不會超出int表示範圍

關於輸入

輸入僅一行,整數n

關於輸出

輸出也僅一行,整數的逆序形式

例子輸入

例子輸出

個人方法

簡單粗暴的分類討論,不過這裡程式設計網格的測試資料出了一點問題,題幹裡說的是不超過10000的整數,但是實際上第六個測試資料是五位的超過10000的整數,如果使用這種方法分類討論而不寫出10000-100000之間的情況(附加ten_thos_pos變數),最後乙個測試資料會無法輸出(輸出case6:empty)

這是程式設計網格的題目的鍋,雖然我們的老師堅稱所有題目都是已經經過很多帶學生測試的,但是實際上我最後打表了才發現.

#include

intmain()

else

if(n <

1000

)else

if(n <

10000

)else

if(n <

100000

)return0;

}

"%05d"表示在整數前面用0補位,直到補足成為乙個5位的數並且輸出.

更優秀的方法

除了上面那種簡單粗暴拆解,還有一種更好的辦法,可以避免程式設計網格的資料問題,實際上可以計算所有範圍內的整數逆序.

#include

intmain()

}return0;

}

做迴圈直到num變成一位數為止.此方法不需要用0補位,每一位數是單獨輸出的,也不需要分類討論.

LeetCode 整數逆序輸出

7.reverse integer 題目 將輸入整數逆序輸出,保持正負號不變 思路 將負數先變正數 取反加1 進行統一處理,新建long型別變數,將輸入整數的每一位 10 加到該變數,每迴圈一次該變數 10,同時判斷該變數是否大於integer.max value或小於integer.min val...

1111 多個整數的逆序輸出

description 輸入n和n個整數,以與輸入順序相反的順序輸出這n個整數。要求不使用陣列,而使用遞迴函式實現。遞迴函式實現過程如下 void inverse int n if n 1 直接輸出num input 輸入有兩行,第一行是乙個正整數n,第二行有n個整數,整數之間由空格隔開。outpu...

PAT 1006 換個格式輸出整數 逆序輸出

時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 讓我們用字母b來表示 百 字母s表示 十 用 12.n 來表示個位數字n 10 換個格式來輸出任乙個不超過3位的正整數。例如234應該被輸出為bbsss1234,因為它有...