A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨拓磊 中级黑马   /  2016-2-25 21:26  /  1120 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

    八进制
/*进制*/
#include <stdio.h>
int main(){
    int a=010;
    printf("%d\n",a);
    return 0;
}

用八进制打印

/*进制*/
#include <stdio.h>
int main(){
    int a=010;
    printf("%o\n",a);
    return 0;
}


十六进制用十进制打印
/*进制*/
#include <stdio.h>
int main(){
    int a=010;
    printf("%o\n",a);
    int b=0xF;
    printf("%d\n",b);
    return 0;

1 个回复

倒序浏览
我不太会C,我用C++给你写的,提供一个思路。

#include <iostream>
using namespace std;
   int a[100];
   int b[100] ;
void func(int x)//x此处是10进制数,转化成十六进制
{
   int i=0; //i 为一个局部变量,在func函数中有用
   while(x!=0)
{
   a[i]=x%16;
   x/=16;
   i++;
}
for(int k=i-1;k>=0;k--)
{
   cout<<a[k];
}
   cout<<endl;
}
void func2(int y)
{
   int i=0; // i 为一个局部变量在func2中有用
   while(y!=0)
{
   a[i]=y%8;
   y/=8;
   i++;
}
for(int k=i-1;k>=0;k--)
{
   cout<<b[k];
}
   cout<<endl;
}

void main()
{
   int n;
   cout<<"输入10进制数:"<<endl;
   cin>>n;
   cout<<"转化成十六进制:"<<endl;
   cout<<"转化成八进制:"<<endl;
   func(n);
   func2(n);
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马