Colors in Mars (20分)
总结:
- 进制转换,10进制→13进制,只有两位数直接输出即可,num/13为高位,num%13为低位。
- 输出转换使用char数组。
- 因为1直接计算两位结果,所以不需要补齐0。单纯一提,控制输出可以用%02d,表示输出2位,不足用0补齐。
代码:
#include <cstdio>
char c[14]={"0123456789ABC"};
int main(){
/*第一次用了数组存R/G/B 后发现无需数组存储 边输入边处理即可
int color[3]; //0:R 1:G 2:B
scanf("%d %d %d", &color[0], &color[1], &color[2]);
*/
int num;
printf("#");
for(int i=0; i<3; i++){
//printf("%c%c", c[ color[i]/13 ], c[ color[i]%13 ]);
scanf("%d", &num);
printf("%c%c", c[ num/13 ], c[ num%13 ]);
}
return 0;
}