/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:
* 作 者: 赵桐辉
* 完成日期: 2012 年 05 月28 日
* 版 本 号:
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:
* 程序输出:
* 程序头部的注释结束
*/
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a;
cout << "input a:";
cin >> a;//输入40
cout << "dec:" << dec << a << endl; // 输出结果: dec: 40 原因:以十进制形式输出结果40。
cout << "hex:" << hex << a << endl; // 输出结果: hex: 28 原因:以十六进制形式输出结果28。
cout << "oct:" << setbase(8) << a << endl; // 输出结果:oct: 50 原因:以八进制形式输出结果50.
char *pt = "Jerryson";
cout << setw(10) << pt << endl; // 输出结果:Jerryson 原因:指定域宽为10.输出字符串
cout << setfill('*') << setw(10) << pt << endl; // 输出结果: **Jerryson 原因:指定域宽为10.输出字符串。空白处以‘*’填充。
double pi = 22.0 / 7.0; //计算pi的值
cout << setiosflags(ios::scientific) << setprecision(8);// 按指数形式输出8位小数。
cout << "pi=" << pi << endl; //输出结果:pi=3.14285714e+000 原因:按指数形式输出8位小数
cout << "pi=" << setprecision(4) << pi << endl; //输出结果:pi=3.1429e+000 原因:改为4位小数
cout << "pi=" << setiosflags(ios::fixed) << pi << endl;//输出结果:pi=0x1.9249p+1 原因:按小数形式输出
system("pause");
return 0;
}
运行结果:
input a:40
dec:40
hex:28
oct:50
Jerryson
**Jerryson
pi=3.14285714e+000
pi=3.1429e+000
pi=0x1.9249p+1
请按任意键继续. . .
3.2
#include <iostream>
using namespace std;
int main( )
{
int a=54;
cout.setf(ios::showbase);//输出结果:无 原因:设置输出时的基数符号。
cout<<"dec:"<<a<<endl; // 输出结果:dec:54 原因:默认以10进制形式输出a。
cout.unsetf(ios::dec); //输出结果: 无 原因:终止10进制的格式设置。
cout.setf(ios::hex); //输出结果:无 原因:设置以16进制的输出状态。
cout<<"hex:"<<a<<endl; //输出结果:hex:0x36 原因:以16进制形式输出a。
cout.unsetf(ios::hex); //输出结果:无 原因:终止16进制的格式设置。
cout.setf(ios::oct); //输出结果:无 原因:设置以8进制的输出状态。
cout<<"oct:"<<a<<endl; //输出结果:oct:066 原因:以8进制形式输出a。
cout.unsetf(ios::oct);//输出结果: 无 原因:终止以8进制输出的格式设置。
char *pt="Jerryson";
cout.width(10); //输出结果:无 原因:指定域宽为10。
cout<<pt<<endl; //输出结果:Jerryson 原因:按以上规定的格式输出字符串。
cout.width(10); //输出结果:无 原因:指定域宽为10。
cout.fill('*'); //输出结果:无 原因:指定空白处以‘*’填充。
cout<<pt<<endl; //输出结果:**Jerryson 原因:按以上规定的格式输出字符串。
double pi=22.0/7.0;
cout.setf(ios::scientific); //输出结果:无 原因:指定用科学计数法输出。
cout<<"pi="; //输出结果:pi= 原因:输出字符串。
cout.width(14); //输出结果:无 原因:指定域宽为14。
cout<<pi<<endl; //输出结果:*3.142857e+000 原因:按以上规定的格式输出pi值。
cout.unsetf(ios::scientific); //输出结果:无 原因:终止科学计数法的状态。
cout.setf(ios::fixed); //输出结果:无 原因指定用定点形式输出。
cout.width(12); //输出结果:无 原因:指定域宽为12。
cout.setf(ios::showpos); //输出结果:无 原因:在输出正数时显示输出“+”号。
cout.setf(ios::internal); //输出结果:无 原因数符出现在左侧。
cout.precision(6); //输出结果:无 原因:保留6位小数。
cout<<pi<<endl; //输出结果:+***3.142857 原因:输出pi,注意数符“+”的位置。
system("pause");
return 0;
}
运行结果:
dec:54
hex:0x36
oct:066
Jerryson
**Jerryson
pi=*3.142857e+000
+***3.142857
请按任意键继续. . .