| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 457 人关注过本帖
标题:数字转换问题
只看楼主 加入收藏
lixingxing52
Rank: 2
来 自:重庆
等 级:论坛游民
帖 子:31
专家分:33
注 册:2009-11-2
结帖率:91.67%
收藏
已结贴  问题点数:20 回复次数:4 
数字转换问题
输入一个10进制的数将其转换为16进制的字符。
搜索更多相关主题的帖子: 数字 
2009-11-22 14:39
modesiyu
Rank: 1
等 级:新手上路
帖 子:2
专家分:3
注 册:2009-10-19
收藏
得分:0 
#include<iostream>
#include<vector>
using namespace std;
int main()
{
    int a;
    cin>>a;
    int i,j;
    vector <int> b;
    if(a<16)
            b.push_back(a);
    while(a>=16)
    {
        b.push_back(a%16);
        a=a/16;
        if(a<16)
            b.push_back(a);
    }

   
    for(j=b.size()-1;j>=0;j--)  
    {
   
        switch(b[j])
        {
        case 0:
            cout<<'0';break;
        case 1:
            cout<<'1';break;
        case 2:
            cout<<'2';break;
        case 3:
            cout<<'3';break;
        case 4:
            cout<<'4';break;
        case 5:
            cout<<'5';break;
        case 6:
            cout<<'6';break;
        case 7:
            cout<<'7';break;
        case 8:
            cout<<'8';break;
        case 9:
            cout<<'9';break;
        case 10:
            cout<<'A';break;
        case 11:
            cout<<'B';break;
        case 12:
            cout<<'C';break;
        case 13:
            cout<<'D';break;
        case 14:
            cout<<'E';break;
        case 15:
            cout<<'F';break;
        }
    }
        return 0;
}
2009-11-22 17:29
ivanjoysky
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:22
专家分:137
注 册:2009-11-22
收藏
得分:0 
#include<iostream.h>
#include<vector.h>
int main()
{
    int a;
    cin>>a;
    int i,j;
    vector <int> b;
    if(a<16)
            b.push_back(a);
    while(a>=16)
    {
        b.push_back(a%16);
        a=a/16;
        if(a<16)
            b.push_back(a);
    }

   
    for(j=b.size()-1;j>=0;j--)  
    {
   
        switch(b[j])
        {
        case 0:
            cout<<'0';break;
        case 1:
            cout<<'1';break;
        case 2:
            cout<<'2';break;
        case 3:
            cout<<'3';break;
        case 4:
            cout<<'4';break;
        case 5:
            cout<<'5';break;
        case 6:
            cout<<'6';break;
        case 7:
            cout<<'7';break;
        case 8:
            cout<<'8';break;
        case 9:
            cout<<'9';break;
        case 10:
            cout<<'A';break;
        case 11:
            cout<<'B';break;
        case 12:
            cout<<'C';break;
        case 13:
            cout<<'D';break;
        case 14:
            cout<<'E';break;
        case 15:
            cout<<'F';break;
        }
    }
        return 0;
}
2009-11-23 00:13
无诲今生
Rank: 8Rank: 8
来 自:桂林理工大学
等 级:蝙蝠侠
威 望:2
帖 子:373
专家分:726
注 册:2009-5-11
收藏
得分:0 
#include<stdlib.h>
#include<iostream.h>
void main()
{
char str[10];
int number;
cin>>number;
itoa(number,str,16);
cout<<str<<endl;
}

顺境逆境切莫止境,得意失意切莫在意。
2009-11-23 09:00
无诲今生
Rank: 8Rank: 8
来 自:桂林理工大学
等 级:蝙蝠侠
威 望:2
帖 子:373
专家分:726
注 册:2009-5-11
收藏
得分:20 
#include<iostream.h>
#include<stdio.h>
#include<stack>
void main()
{
    int number;
    int n;
    std::stack<int> sta;
    cin>>number;
    while(number)
    {
        n=number%16;
        sta.push(n);
        number=number/16;
    }
    for(int i=0;i<=sta.size();i++)
    {
        if(sta.top()>=0&&sta.top()<=9)
            printf("%d",sta.top());
        else
            printf("%c",sta.top()+55);
        sta.pop();
    }
    cout<<endl;

}

顺境逆境切莫止境,得意失意切莫在意。
2009-11-23 09:19
快速回复:数字转换问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018592 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved