#include<stdio.h>
int main() {
char b[]="0123456789ABCDEF";//b用来存放16进制的各个数字
int n;
int i,a[100];//数组a用来存放进位
scanf("%d",&n);//输入要转化的十进制数
i=0;
if(n>0){//这个if仅仅用来输出特殊情况0;
while(n>0) {
a[i]=n%16;
n=n/16;
i++;
}
i--;//while结束后i是数组大小,i-1指向数组的最后一个元素,即最高进位
while(i>=0) {
printf("%c",b[a[i]]);//输出各个位
i--;
}
}
else printf("0");
}
https://oj.gxu.icu/contest/323/problem/00004
这个题是看的别人的,多思考思考叭