十进制转二进制数:跟列竖式差不多,一直除二取余,正确记录,反序输出(转换为8进制数,就除8取余) 即:十进制转n进制数规律(2<=n<=10)除基取余,逆序输出
#include<stdio.h>
#define n 100
int main()
{
int N,a[n],i,j;
scanf("%d",&N);
for(i=0;N!=0;i++)
{
a[i]=N%2;
N/=2;
}
for(j=i-1;j>=0;j--)
printf("%d",a[j]);
printf("\n");
}
十进制转十六进制数:和十进制转二进制类似,多了一个要注意的点就是有字母了
代码如下:
#include<stdio.h>
#define n 100
int main()
{
int N,i,j,a[n];
char ch[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
scanf("%d",&N);
for(i=0;N!=0;i++)
{
a[i]=N%16;
N/=16;
}
for(j=i-1;j>=0;j--)
{
printf("%c",ch[a[j]]);
}
printf("\n");
return 0;
}
运行结果如下:
76
4C
请按任意键继续. . .