大資料進製轉換,先轉出十六進製制(參考網上例子),再轉成二進位制,再轉成32進製;
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
const char s32bit_const[32] = ;
char* strrev(char* s)
; t--; /* 與t++抵消 */
t--; /* 回跳過結束符'\0' */
/* 當h和t未重合時,交換它們所指向的字元 */
while(h < t)
return(s);
}/*
* dec 十進位制陣列
* _s32bit 32進製
*/int hexchangeto32bit(char* dec,char* _s32bit)
}hex[t]=(a[0]+a[1]*10+a[2]*100+a[3]*1000)/625;//求餘數
for(i=0;i0;t--);//去掉前導零
//十六進製制轉2進製
char bt[500];
memset(bt,0,sizeof(bt));
//1000 : hex=3e8; a0~hex(8) a4~hex(e)
for(i=0,j=0; j < t+1; j++)
else if(hex[j] <= 0x0f)
else}}
//2進製轉32進製
int binlen=0;
unsigned char bin[200];
memset(bin,0,sizeof(bin));
for(j=0,k=0; i > 0 ;j++,i-=5,k+=5)
for(;!bin[binlen]&&binlen>0;binlen--);//去掉前導零
for(i=0;i <= binlen ; i++)
return binlen+1;
}int main(int argc, char** argv)
}
m進製轉十進位制
題目描述 description 將m進製數n轉化成乙個十進位制數 m 16 題目保證轉換後的十進位制數 100 輸入描述 input description 共一行n和m 輸出描述 output description 共乙個數 表示m進製的n化成十進位制的數 樣例輸入 sample input ...
進製轉換 十進位制大數轉二進位制
題目描述 將乙個長度最多為30位數字的十進位製非負整數轉換為二進位制數輸出。輸入描述 多組資料,每行為乙個長度不超過30位的十進位製非負整數。注意是10進製數字的個數可能有30個,而非30bits的整數 輸出描述 每行輸出對應的二進位制數。示例1 輸入01 38輸出01 111000 採用除k取餘法...
十六進製制轉十進位制
create function fn hextobinary hex varchar 8 returns varchar 255 asbegin declare base tinyint declare string varchar 255 declare return varchar 255 de...