第一種:用來(lái)糊弄老師的,輸入一個(gè)數(shù)采用16進(jìn)制格式輸出
#include
intmain()
{
intnum=0;
scanf("%d",&num);
printf("%x",num);
return0;
}
第二種:
#include
#include
charoNumTable[6]={'A','B','C','D','E','F'};
voiddToO(int,char*);
intmain()
{
intdNum;
charoNum[100]={0};
//輸入一個(gè)十進(jìn)制數(shù)
scanf("%d",&dNum);
//調(diào)用轉(zhuǎn)換函數(shù),將十進(jìn)制轉(zhuǎn)換成以字符串表示的十六進(jìn)制
dToO(dNum,oNum);
//輸出以字符串表示的16進(jìn)制數(shù)據(jù)
printf("%s\n",oNum);
return0;
}
voiddToO(intdNum,char*oNum)
{
chartemp[100]={0};
for(inti=0;(dNum)&&(i
temp[i]=(dNum%16);
if(temp[i]>9){
temp[i]=oNumTable[temp[i]-10];
}
else{
temp[i]+='0';
}
dNum/=16;
}
char*p=temp;
while(*(p+1))p++;
for(inti=0;p!=temp-1;i++,p--){
oNum[i]=*p;
}
}
//下面是10進(jìn)制轉(zhuǎn)換成任意進(jìn)制數(shù)
#include"stdio.h"
main()
{
inti=0,m,n,r,a[40];
charstr[16]="0123456789ABCDEF";
printf("\n請(qǐng)輸入一個(gè)整數(shù)和要轉(zhuǎn)換成的進(jìn)制數(shù)\n");
scanf("%d%d",&m,&r);/*r代表進(jìn)制數(shù)*/
if(m<0)
{printf("%c",'-');
m=-m;}/*判斷是否輸入的是負(fù)數(shù)*/
do{
a[i++]=m%r;
m=m/r;}while(m>0);/*m對(duì)r取余數(shù),再除以r*/
printf("轉(zhuǎn)換結(jié)果是:\n");
for(n=i-1;n>=0;n--)
printf("%c",str[a[n]]);
}
//夠簡(jiǎn)單吧!