将一个十进制数n转化为B进制数。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/John_Wang7/article/details/62244114

将一个十进制数n转化为B进制数。
步骤:重复执行以下步骤(1)和步骤(2),知道n为0.
(1)取B进制数的个位:求雨运算n%B,把结果存入数组。
(2)讲B进制数降一阶:整除运算n=n/B。
(3)从后往前输出数组元素。如果数组元素小于10,照原样输出;如果数组元素大于等于10,输出其相应的符号,例如,10输出a,11输出b,......

#include<stdio.h>
void number_system_conversion(long n,int B);//数制转换函数声明
int main()
{
	int number,sys;
	printf("Input an integer:");
	scanf("%d",&number);
	printf("Input a number system:");
	scanf("%d",&sys);
	number_system_conversion(number,sys);
	return 0;
 } 
 
 void number_system_conversion(long n,int B)
 {
 	int m,i=0,a[32];
 	while(n!=0)
 	{
 		a[i++]=n%B;      //1)
 		
 		n=n/B;        //2)
	 }
	while(i>0)
	{
		m=a[--i];
		if(m<10)
			printf("%d",m);
		else
			printf("%c",m+87);
	}
	printf("\n");
  } 

展开阅读全文

没有更多推荐了,返回首页