#includestdio.h
成都創(chuàng)新互聯(lián)是一家專業(yè)提供崆峒企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站建設(shè)、HTML5、小程序制作等業(yè)務(wù)。10年已為崆峒眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計公司優(yōu)惠進行中。
voidmain()
{
//進制轉(zhuǎn)換函數(shù)的聲明
inttransfer(intx);
intx;
printf("請輸入一個十進制數(shù):");
scanf("%d",x);
printf("轉(zhuǎn)換成二進制數(shù)是:%d\n",transfer(x));
}
inttransfer(intx)
{
intp=1,y=0,yushu;
while(1)
{
yushu=x%2;
x/=2;
y+=yushu*p;
p*=10;
if(x2)
{
y+=x*p;
break;
}
}
returny;
}
擴展資料
C語言:整數(shù)轉(zhuǎn)換十六進制數(shù)和八進制
#includestdio.h
voidmain()
{
inti;
printf("請輸入一個十進制數(shù):");
scanf("%d",i);
printf("這個數(shù)轉(zhuǎn)換為十六進制數(shù):%x\n\n",i);
printf("這個數(shù)轉(zhuǎn)換為八進制數(shù):%o\n",i);
getch();
return0;
}
C++的,如果要TC的將中文改為English就行了
#includestdio.h
#includemath.h
void ten_two()
{
int num, i;
int arr[20];
printf("請輸入一個十進制數(shù):");
scanf("%d",num);
for( i = 0 ; 1 ; i++)
{ //轉(zhuǎn)換為二進制并存入數(shù)組
arr[i] = num % 2;
num = num / 2;
if(num == 0)
{
break;
}
}
printf("轉(zhuǎn)換為二進制:"); //打印
for(; i = 0 ; i-- ){
printf("%d",arr[i]);
}
printf("\n");
}
void ten_eight()
{
int num, i;
int arr[20];
printf("請輸入一個十進制數(shù):");
scanf("%d",num);
for( i = 0 ; 1 ; i++){//轉(zhuǎn)換為八進制并存入數(shù)組
arr[i] = num % 8;
num = num / 8;
if(num == 0){
break;
}
}
printf("轉(zhuǎn)換為八進制:"); //打印
for(; i = 0 ; i-- ){
printf("%d",arr[i]);
}
printf("\n");
}
void ten_sixteen()
{
int num, i;
int arr[20];
printf("請輸入一個十進制數(shù):");
scanf("%d",num);
for( i = 0 ; 1 ; i++){ //轉(zhuǎn)換為二進制并存入數(shù)組
arr[i] = num % 16;
num = num / 16;
if(num == 0){
break;
}
}
printf("轉(zhuǎn)換為十六進制:"); //打印
for(; i = 0 ; i-- ){
switch(arr[i]){
case 10 : printf("A");break;
case 11 :printf("B");break;
case 12 :printf("C");break;
case 13 :printf("D");break;
case 14 :printf("E");break;
case 15 :printf("F");break;
default :printf("%d",arr[i]);
}
}
printf("\n");
}
void two_ten()
{
long num;
int b,TheTen=0,Total=0;
printf("請輸入一個二進制數(shù)(只包含0或1):");
scanf("%ld",num);
while(num)
{
b=num-(int)(num/10)*10;
TheTen+=b*pow(2,Total);;
Total++;
num=(int)(num/10);
}
printf("轉(zhuǎn)換為十進制:"); //打印
printf("%d",TheTen);
printf("\n");
}
void eight_ten()
{
int num, i;
int arr[20];
printf("請輸入一個八進制數(shù)(只由0~7之前的數(shù)組成):");
scanf("%o",num);
printf("轉(zhuǎn)換為十進制:"); //打印
printf("%d",num);
printf("\n");
}
void sixteen_ten()
{
int num, i;
int arr[20];
printf("請輸入一個十六進制數(shù)(只由0~9和A~F之前的數(shù)組成):");
scanf("%X",num);
printf("轉(zhuǎn)換為十進制:"); //打印
printf("%d",num);
printf("\n");
}
void main()
{
int select;
do{
printf("0 - 退出,1 - 十進制轉(zhuǎn)二進制,2 - 十進制轉(zhuǎn)八進制,3 - 十進制轉(zhuǎn)十六進制,4 - 二進制轉(zhuǎn)十進制,5 - 八進制轉(zhuǎn)十進制,6 - 十六進制轉(zhuǎn)十進制\n");
scanf("%d",select);
switch(select){
case 1 : ten_two(); break; //十進制轉(zhuǎn)二進制
case 2 : ten_eight(); break; //十進制轉(zhuǎn)八進制
case 3 : ten_sixteen(); break; //十進制轉(zhuǎn)十六進制
case 4 : two_ten(); break; //二進制轉(zhuǎn)十進制
case 5 : eight_ten(); break; //八進制轉(zhuǎn)十進制
case 6 : sixteen_ten(); break; //六十進制轉(zhuǎn)十進制
default : printf("您的輸入有誤,請重新輸入!"); break;
}
if(select == 0)
{break;}
}while(1);
}
#include stdio.h
int main()
{
int x,s,n=0;
printf("Please input a decimalism number:\n");
scanf("%d",x);
if(x8){
s=x/9;
n=x%9;
printf("%d%d",s,n);
}else{
printf("%d",x);
}
getch();
}
#includestdio.h
void P(int a,int n){
int i,p[30]={0};
p[0]=a;
for(i=1;i30;i++){
p[i]=p[i-1]/n;
p[i-1]%=n;}
for(i=29;i=0;i--)if(p[i]!=0)break;
for(;i=0;i--)printf("%d ",p[i]);}
int main(){
int a,n;
printf("輸入一個整數(shù)\n");
scanf("%d",a);
printf("輸入要轉(zhuǎn)換的進制\n");
scanf("%d",n);
P(a,n);
return 0;}
將任意進制的整數(shù)化成十進制整數(shù)
一、目的和要求
1.應(yīng)用循環(huán)進行冪運算。
2.掌握其它進制的數(shù)化成十進制數(shù)的計算方法。
3.轉(zhuǎn)換的結(jié)果正確。
二、實驗內(nèi)容
1.鍵盤上任意輸入一個任意進制的整數(shù)及它的進制。
2.根據(jù)其它進制的數(shù)化成十進制數(shù)的計算方法,編寫程序?qū)⑵滢D(zhuǎn)換成十進
制的數(shù)。
三、算法
設(shè)輸入的數(shù)為:a0a1a2…an
其進制為:base
則
mun=a0×basen-1+an-1×basen-2+…a1×base1+a0×base0
本文標(biāo)題:十進制轉(zhuǎn)9進制函數(shù)c語言,十進制轉(zhuǎn)九進制c語言
網(wǎng)頁地址:http://chinadenli.net/article6/hesgog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、定制開發(fā)、云服務(wù)器、做網(wǎng)站、電子商務(wù)、品牌網(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)