编程题#3: 整数的输出格式
来源: POJ (http://cxsjsxmooc.openjudge.cn/test/G/)
注意: 总时间限制: 1000ms 内存限制: 1000kB
描述
利用流操纵算子实现: 输入一个整数,先将该整数以十六进制输出,然后再将该整数以10个字符的宽度输出,宽度不足时在左边补0。
注意:在不同系统、编译器上的输出格式略有不同,但保证在程序中采用默认格式设置一定能在OJ平台上得到正确结果。
输入
一个正整数,保证可以用int类型存储。
输出
第一行:以十六进制输出该整数;
第二行:以10个字符的宽度输出该整数。
样例输入
23
样例输出
17
0000000023
程序解答:
#include <iostream>
//#include <iomanip> 这是使用控制符控制输出格式
using namespace std;
int main()
{
int a;
cin >> a;
//用流对象的成员函数控制输出格式
//cout.setf(ios::showbase); //强制输出整数的基数(八进制数以0开头,十六进制数以0x开头)
cout.unsetf(ios::dec); //清除默认10进制输出格式
cout.setf(ios::hex);
cout << a << endl;
cout.unsetf(ios::hex); //清除16进制输出格式
cout.width(10);
cout.fill('0');
cout << a << endl;
return 0;
}
// 参考网址:http://arachnoid.com/cpptutor/student3.html