思路:这是一道进制转换题,读懂题意就知道,只需把输入转化成13进制数就行。但要注意第一位没有数要输出0,以及怎么输出A,B,C。
代码:(开始学C++了,代码风格可能是C和C++混搭,会慢慢调整的)
#include<iostream>
using namespace std;
void output(int n){
char n1;
if(n/13 == 0){ //第一位没有数,输出0
cout << 0;
if(n%13>9){
n1 = 'A'+n%13-10; //如何输出A,B,C,只需令字符型A+1/2/3即可
cout << n1;
}
else cout << n%13;
}
else{
if(n/13>9){
n1 = 'A'+n/13-10;
cout << n1;
}
else cout << n/13;
if(n%13>9){
n1 = 'A'+n%13-10;
cout << n1;
}
else cout << n%13;
}
}
int main(){
int r,g,b;
cin >> r >> g >> b;
cout << "#";
//red
output(r);
//green
output(g);
//blue
output(b);
return 0;
}
版权声明:本文为博主原创文章,如有错误,恳请大家在评论区指出,在下不胜感激~如要转载注明出处即可~