将char添加到输出列中的double

时间:2016-02-23 20:33:04

标签: c++

我有一个程序可以从文件中提取员工的名字,姓氏,工作小时数和薪水。然后计算总薪酬,税率和净工资,然后在列中列出控制台上的信息(暂时。)

我想知道的是我可以添加一个' $'到包含美元金额的列,这些列是正确对齐的,并且具有' $'就在金额旁边。 (比如将它们都添加到同一列中。)

即。 lastName,firstName,hours,$ payrate,$ grossPay,$ netpay

我知道如果我将列与它所使用的美元值左右对齐,就好像它紧挨着它,但是小数点后面没有排成一行并且它们正确对齐有一列' $'通过它的自我。

这就是我所拥有的:

  Last Name   First Name  Hours         Rate     Gross       Net
1.Wingert       Antone      35       $   15.70 $  585.50 $  500.05

这就是我想要的:

   Last Name    First Name    Hours       Rate    Gross      Net
 1.Wingert     Antone         35        $51.70  $585.50  $500.05

我有50个来自文件的输入。这是一个课程,我们不能使用我们在课堂上没有谈过的任何内容,所以没有printf和没有数组。

2 个答案:

答案 0 :(得分:0)

enter image description here这就是我现在这样做的方式     {cout<<右<< setw(kCountSet)<<计数<< “” <<左<< setw(kTableSet)<< lastName<< setw(kTableSet)<< firstName<< setw(kPayTable)<<小时<<对<< “$”<< setw(kPayTable)<< payRate<< “$”<< setw(kPayTable)<<总<< “$”<< setw(kPayTable)<< netPay<<结束;}

答案 1 :(得分:-1)

您始终可以使用gotoxy()函数来指示您希望' $'标志:

void gotoxy(int x, int y)
{
    COORD pos={x,y};
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);
}

如果您的编译器没有gotoxy,请在您的文件中添加此代码。你可以在网上找到更多关于gotoxy()的信息,或者自己尝试一下。

如果您愿意,可以通过创建自己的函数来编辑代码,该函数可以在任何位置添加任何字符,如下所示:

void addchar(int x, int y, char n)
{
    COORD pos={x,y};
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);
    cout<<n;
}