2017-09-26 58 views
0

对于我的实验室,我们需要在一个列中显示输出值,然后显示值的用途。将列中每个值的最左边字符对齐

我需要的例子。

Amount of adult tickets:      16 
Amount of children tickets:     12 
Revenue from ticket sales:     $140.22 

我试图用运输及工务局局长像

cout << "Amount of adult tickets: " << setw(15) << ticketsAdult` << endl; 
cout << "Amount of children tickets: " << setw(15) < ticketsChildren << endl; 

我假设或者运输及工务局局长就是用这种错误的东西或我使用它错了,因为它通常会导致类似

Amount of adult tickets:     16 
Amount of children tickets:     12 

我可以使用什么来使值右对齐,就像他们在示例中所做的一样,无论每个元素之前的“Amount of ...”语句的长度如何?

+0

说https://stackoverflow.com/questions/14765155/how-can-i-easily-format-my-data-table-in-c –

+0

在字符串上使用'std :: setw',而不是值。结束为错字。 – LogicStuff

+0

查看调整修饰符[std :: left,std :: right](http://en.cppreference.com/w/cpp/io/manip/left)。 –

回答

0

它看起来也有左右对齐。除此之外,它看起来像使用一个痛苦。

C++ iomanip Alignment

0

结合在一起的一切

#include <iostream> 
#include <iomanip> 

int main() 
{ 
    int ticketsAdult = 16; 
    int ticketsChildren = 12; 
    double rev =140.22; 
    std::cout << std::setw(35) << std::left << "Amount of adult tickets: " << ticketsAdult << '\n'; 
    std::cout << std::setw(35) << std::left << "Amount of children tickets: " << ticketsChildren << '\n'; 
    std::cout << std::setw(35) << std::left << "Revenue from ticket sales: " << '$' << rev << '\n'; 
    return 0; 
} 
相关问题