程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 十進制轉換2-16進制(c語言算法實現)

十進制轉換2-16進制(c語言算法實現)

編輯:關於C語言

今天第五天堅持寫算法了,由於從前沒學過c語言,加上用的mircrosoft c++6.0,太不好用了,太愁人了。經過一些列測試,終於把數制轉化完成了。還是有一定的成就感,嘿嘿。

閒話少說,代碼奉上。

#include "stdio.h"
#include "math.h"
void main(){
int q,m,k,p,s[50];
double n;
m=0;
printf("\n 請輸入十進制數n:");
scanf("%lf",&n); //這個一定要輸入%lf
printf("\n 請輸入轉換進制數p(2-16):");
scanf("%d",&p);
printf(" (%f)10=(",n);
while(n!=0){
q=fmod(n,p);
n=floor(n/p);
m++;
s[m]=q;
}
for(k=m;k>=1;k--){
if(s[k]>9){
printf("%c",s[k]+55);
}
else{
printf("%d",s[k]);
}


}
printf(")%d\n",p);//位置要放到for循環後面,不然結果不在一塊輸出
}

今天學數據結構,可以用棧完成,一會試一試。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved