蓝桥杯 基础练习 十进制转十六进制

水题,但是我数学不好,逻辑错误花了不少时间,,还有想问道友们一个问题,dev cpp 编译一下2秒多正常吗,感觉是不是有点慢啊,,算了不管了

怕是我电脑不行了喔


满分代码如下


#include
using namespace std;
int i=0;
char a[1000];


void fun(int n){
if(n<=9)a[i++]=char(n+48);
switch(n){
case 10:{
a[i++]='A';
n/=16;
break;
}
case 11:{
a[i++]='B';
n/=16;
break;
}
case 12:{
a[i++]='C';
n/=16;
break;
}
case 13:{
a[i++]='D';
n/=16;
break;
}
case 14:{
a[i++]='E';
n/=16;
break;
}
case 15:{
a[i++]='F';
n/=16;
break;
}
}
}


int main()
{
long int n;
cin>>n;
if(n==0)cout<<0;
while(n){  
if(n>=16){
fun(n%16);
n/=16;
}
else{
fun(n);
n/=16;
}
}
for(int j=i-1;j>=0;j--)
cout<return 0;
 } 

你可能感兴趣的:(蓝桥杯,基础练习)