進制轉換c語言代碼
1. c語言如何把11位16進制字元串轉成16進制數
#include<stdio.h>
#include<stdlib.h>
voidmain()
{
char*p="0x1b";
char*str;
longi=strtol(p,&str,16);
printf("%d ",i);
}
//輸出值為27
參數base代表採用的進制方式,如base值為10則採用10進制,若base值為16則採用16進制等。當base值為0時則是採用10進製做轉換,但遇到如』0x』前置字元則會使用16進製做轉換、遇到』0』前置字元而不是』0x』的時候會使用8進製做轉換。
(1)進制轉換c語言代碼擴展閱讀
C語言十進制轉2~16進制
#include<stdio.h>
voidtrans(intdata,intbase)
{
intx[64],k,i=0;
while(data)
{
x[i]=data%base;
data/=base;
i++;
}
for(k=i-1;k>=0;k--)
if(x[k]<10)
printf("%d",x[k]);
elseif(x[k]<=16)
printf("%c",'A'+x[k]-10);
}
intmain(void)
{
intnum,base;
scanf("%d%d",&num,&base);
if(base<=0||base>16)
{
printf("dataerror ");
return;
}
printf("number=%dbase=%d ",num,base);
trans(num,base);
printf(" ");
return0;
}
2. c語言 十進制轉換為十六進制
在C語言中,可以使用`printf()`函數的格式控制符將態渣十進制數轉換為十六進制。具體來說,可以使用 `%x` 格式控制符。例如:
```c
int decimal_number = 255;
printf("%x", decimal_number);
```
上述代碼將十進制數255轉換為十六數春進制形式,並輸出結果ff。
需要注意的是,在使用 `%x` 格式控制符時,輸出的十六進制數字母會自動轉換為小寫形式。如帆畢悄果需要輸出大寫形式的字母,可以使用 `%X` 格式控制符。
3. C語言編程:八進制轉換為十進制
#include<stdio.h>
void main()
{
char *p,s[6];int n;
p=s;
gets(p);
n=0;
while(*(p)!='