/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 分数类中的运算符重载
* 作 者: 张传新
* 完成日期: 2012 年 04 月 10 日
* 版 本 号: V.1.0
* 对任务及求解方法的描述部分
* 问题描述:
* 程序头部的注释结束
#include <iostream>
#include <iomanip>
using namespace std;
void main()
{
cout<<setw(25)<<" "<<"英寸向米的转换表";//输出表头
cout<<endl;
cout<<endl;
cout<<setw(3)<<" "<<setw(3)<<" ";//setw作用于其后紧挨着的语句
int a;
for(a = 0;a<=9;a++)
{
cout << setw(6) << a;//a为第几列
}
cout << endl;
double s;//英尺
int n = 1,m = 120,d = 0,i = 0,j = 0;//i输出第几行
cout << setprecision(1) << setiosflags(ios::left) << setiosflags(ios::fixed);//浮点数的精度为1;左对齐;固定的小数位数显示
while(n<=m)
{
if(n == 12*d+1)
{
cout << setw(3) << " ";
n++;
}
if(n==12*d+2)
{
cout << " " << i << setw(3) << " ";
i++;
d++;
n++;
}
s = ((i - 1) * 10 + j) / (3.28);
cout << setw(6) << s;
j++;
if(j % 10 == 0)//换行设置
{
cout << endl;
j = 0;//注意j的归零
}
n++;
}
system("pause");
}
运行结果:
感言:这个程序需要的数学思想比较高,必须要弄清英尺与米的关系
才能做好,第二次做也花费了不少时间啊!!!但毕竟进步了!