void change(){

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供新田網(wǎng)站建設(shè)、新田做網(wǎng)站、新田網(wǎng)站設(shè)計、新田網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、新田企業(yè)網(wǎng)站模板建站服務(wù),十年新田做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
int n;//n就是你要轉(zhuǎn)換的十進(jìn)制數(shù)
char ch[10]={'\0'};
while(i10){
if(n%16==0)
ch[i]=0;
else
ch[i]=n%16;
i++;
}
int len=char.length();
for(int i=len-1;i=0;i--)
sprintf("%c",ch[i]);
}
#includestdio.h
#define n 20
void change2(int t)
{ //將十進(jìn)制數(shù)轉(zhuǎn)換到存放二進(jìn)制的數(shù)組中
int i;
int b[n]={0};
for(i=0;i20;i++)
{
b[i]=t%2;
t=t/2;
}
for(i=n-1;i=0;i--)
{
printf("%d",b[i]);
}
printf("\n");
}
void main(){
int demo;
printf("請輸入一個十進(jìn)制數(shù):");
scanf("%d",demo);
change2(demo);
}
遞歸實現(xiàn) 符合你的要求
/////////////////////////////////////////
//????????C-Free?4.1
//????????MinGW??3.4.5
//????????veket的小號
/////////////////////////////////////////
#include?stdio.h
void?fun(int?n)
{
if(n10)
printf("%c",?n+'0');
if(n=10??n=15)
printf("%c",?n-10+'A');
}
void?RecurrenceDecToHex(int?x)
{
if(x=16)
{
RecurrenceDecToHex(x/16);
}
fun(x%16);
}
int?main()
{
RecurrenceDecToHex(45036);
return?0;
}
#include "stdafx.h"
#include stdlib.h
#include stdio.h
#include string.h
int converN(int p,int m, int n);
int conver10(char *pold, int m);
int power(int m, int pow);
int main( )
{
int old,fresh,oldv=0;
char cold[100];
printf("輸入的數(shù)制不能超過16,按q退出,按回車?yán)^續(xù)。");
while(getchar() != 'q')
{
printf("請輸入原數(shù)制:");
scanf("%d",old);
printf("請輸入新數(shù)制:");
scanf("%d",fresh);
printf("請輸入要轉(zhuǎn)換數(shù)字:");
scanf("%s",cold);
printf("轉(zhuǎn)換后數(shù)字為:");
converN(conver10(cold, old),old,fresh);
putchar('\n');
printf("輸入的數(shù)制不能超過16,按q退出,按回車?yán)^續(xù)。");
while(getchar() != '\n')
continue;
}
return 1;
}
int power(int m, int pow)
{
if(pow == 0)
return 1;
if(pow 0)
return m*power(m,pow-1);
}
int conver10(char *pold, int m)
{
int len = strlen(pold);
int res=0;
for(int i=0; ilen; i++)
{
switch(tolower(pold[i]))
{
case 'a':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'b':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'c':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'd':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'e':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'f':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
default:
res += (pold[i]-'0') * power(m,len-i-1);
}
}
return res;
}
int converN(int p,int m, int n)
{
int i=0;
if(p/n != 0)
converN(p/n,m,n);
if((i=p%n) 10)
putchar('0' + i);
else
putchar('a' + i - 10);
return 1;
}
#include
stdio.h
#include
string.h
void
dtob(char
*
pre,
int
l,
int
n)
{
if
(n
0)
//終止條件
{
pre[l++]
=
(n%2)
+
'0';
//每次取1個最低位
pre[l]
=
'\0';
dtob(pre,
l,
n/2);
//然后n=n/2,
字符位置l增1,迭代
}
}
int
main()
{
int
n;
char
b[33];
scanf("%d",
n);
dtob(b,
0,
n);
strrev(b);
//結(jié)果是倒著的,翻過來
printf("%s\n",
b);
return
0;
}
本文名稱:c語言遞歸函數(shù)數(shù)制轉(zhuǎn)換,c語言遞歸函數(shù)的概念及用法
瀏覽路徑:http://chinadenli.net/article36/dsgessg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、品牌網(wǎng)站制作、網(wǎng)站制作、網(wǎng)站內(nèi)鏈、靜態(tài)網(wǎng)站、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)