t’t汉字码
蓝桥杯的一道题目:
由此总结一下各个进制的输出形式:
printf("%05o\n",n); //按八进制格式输出,保留5位高位补零
printf("%03d\n",n); //按十进制格式输出,保留3位高位补零
printf("%05x\n",n); //按十六进制格式输出,保留5位
二进制我没查到,或许没有?
但还有另一种方式输出二进制
#include<bitset> //必须要有的头文件
bitset<8> t; //将t转为占八个字节的二进制
t=n;
cout<<t<<endl;
所以蓝桥杯的题目代码如下:
#include<stdio.h>
#include<iostream>
#include<bitset> //必须要有的头文件
using namespace std;
int str[170][2];
int main()
{
for(int i=0;i<160;i++)
{
for(int j=0;j<2;j++)
scanf("%d",&str[i][j]);
}
for(int i=0;i<160;i++)
{
for(int j=0;j<2;j++)
{
bitset<8> t;
t=str[i][j];
cout<<t;
}
printf("\n");
}
return 0;
}
由运行结果得,题目让求的是9的九次方等于多少,然后一计算就行。
此题关键就在于要会把十进制的数字转换为占8的字节的二进制数。