十进制转十六进制(C语言)

十进制转十六进制(C语言),第1张

十进制转十六进制(C语言)

首先要注意输入非负整数的范围:这里用long表示;

long 取值 -2147483648~2147483647

#include
int main(){
	long n;
	int i=0,j;
	char a[11];
	scanf("%d",&n);
	do{
		 if(n%16==10)a[i]='A';
		 else if(n%16==11)a[i]='B';
		 else if(n%16==12)a[i]='C';
		 else if(n%16==13)a[i]='D';
		 else if(n%16==14)a[i]='E';
		 else if(n%16==15)a[i]='F';
		 else a[i]=(n%16)+'0';
		 i++;
		 n=n/16;
	}while(n!=0);//相比于while,用do-while可以解决n=0的情况
	for(j=i-1;j>=0;j--){
		printf("%c",a[j]);
	}
	return 0;
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5702701.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存