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

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

C++ 十進(jìn)制轉(zhuǎn)換為二進(jìn)制的實例代碼

2020-01-26 15:43:07
字體:
供稿:網(wǎng)友

題目內(nèi)容:將十進(jìn)制整數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)。

輸入描述:輸入數(shù)據(jù)中含有不多于50個的整數(shù)n(-231<n<231)。

輸出描述:對于每個n,以11位的寬度右對齊輸入n值,然后輸出“-->”,再然后輸出二進(jìn)制數(shù)。每個整數(shù)n的輸出,獨(dú)立占一行。

題目分析:將某個數(shù)從十進(jìn)制轉(zhuǎn)為二進(jìn)制的具體方法是,該數(shù)對2取余,結(jié)果要么為1要么為0,此為該數(shù)對應(yīng)二進(jìn)制的末位;然后該數(shù)除以二,得到的商再次對2取余,結(jié)果為對應(yīng)二進(jìn)制的倒數(shù)第二位……以此類推,知道除以2的結(jié)果為0。

參考代碼:

復(fù)制代碼 代碼如下:

#include <iostream>
#include <fstream>
#include <string>
#include <algorithm>
using namespace std;

string s;
int main(int argc,char * argv[])
{
    int n;
    while(cin>>n)
    {
        if(n==0)
        {
                cout<<"          0-->0/n";
                continue;
        }
        s=" ";
        for(int a=n;a;a=a/2)
        {
                s=s+(a%2?'1':'0');
        }
        std::reverse(s.begin(),s.end());
        const char *sss=s.c_str();
        cout.width(11);
        cout<<n<<(n<0?"-->-":"-->")<<sss<<"/n";
    }
    system("pause");
    return 0;
}

效果如圖:

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 乌鲁木齐县| 逊克县| 定兴县| 积石山| 万荣县| 如东县| 吉隆县| 泸水县| 万州区| 固镇县| 凤城市| 高淳县| 合阳县| 武陟县| 鄂托克旗| 麦盖提县| 龙川县| 肃南| 安平县| 南城县| 峨眉山市| 常山县| 新郑市| 邵阳县| 仁怀市| 灵川县| 百色市| 襄城县| 高淳县| 扬中市| 勃利县| 廊坊市| 舒兰市| 松潘县| 中西区| 兴仁县| 桃园市| 桐庐县| 翁源县| 桃园市| 宣化县|