国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++ 數字的反轉實現實例

2020-01-26 14:02:39
字體:
來源:轉載
供稿:網友

數字的反轉

 (144)  (0)

Reverse digits of an integer.

Example1: x = 123, return 321Example2: x = -123, return -321

備注:當數字溢出時,則程序返回0。

解題思路:

1、用一個變量y(初始化為0)保存改變之后的值;

2、將x的個位取下來,并且y乘上10,然后對加上x;

3、判斷y-x的個位除以10,時候等于變量y(防止數字溢出),如果不等于則返回0;

4、將x等于x除以10,進一位;

5、當x存在時,循環2~4;

6、返回y;

可能大家看不懂3過程,我用一個簡單的例子來演示一下。

實現代碼如下:

#include<iostream> #include<windows.h> using namespace std;  int reverse(int x) {     int num = 0;     while (x != 0)     {       int tail = x % 10;       int newnum = num * 10 + tail;       if ((newnum - tail) / 10 != num)       {         return 0;       }       num = newnum;       x /= 10;     }     return num; } 

測試用例:

int main() {   cout << reverse(123) << endl;   cout << reverse(-123) << endl;   cout << reverse(1000000003) << endl;    system("pause");   return 0; } 

測試結果:

如果大家有更好的解法,歡迎大家積極討論。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 焦作市| 留坝县| 枣阳市| 福清市| 沭阳县| 巴林左旗| 石首市| 封丘县| 廉江市| 绥德县| 土默特左旗| 达州市| 镇康县| 定远县| 青海省| 剑阁县| 上蔡县| 石狮市| 通辽市| 青龙| 邹城市| 老河口市| 云龙县| 怀仁县| 莆田市| 衡阳市| 阿瓦提县| 开平市| 平度市| 山东省| 合肥市| 涞水县| 定安县| 天门市| 伊金霍洛旗| 洛扎县| 措勤县| 常宁市| 武陟县| 定南县| 九龙城区|