语言c++
例如要输出一个数据表到控制台,表头的标题只用输出一次,例如:“姓名”、“年龄”、“性别”、“联系电话”,具体数据为每个对象的输出函数“对象名.display()”在控制台输出,例如“张三”、“男”、“13812345678”,在控制台输出的格式如图,
在控制台输出效果类似于以上截图,左对齐或者右对齐,每个列设置固定的显示宽度,例如姓名列设置宽度为三个字符,年龄列的宽度为二个字符,联系电话的宽度设置为20个字符。
#include <string>
struct StudentInfo
{
std::string Name;
std::string Age;
std::string Sex;
std::string Number;
void display()
{
std::string strName = "姓名";
std::string strAge = "年龄";
std::string strSex = "性别";
std::string strNumber = "电话";
printf("\n%-6s%-5s%-5s%-20s\n", strName.c_str(), strAge.c_str(), strSex.c_str(), strNumber.c_str());
printf("%-6s%-5s%-5s%-20s\n", Name.c_str(), Age.c_str(), Sex.c_str(), Number.c_str());
}
};
int _tmain(int argc, _TCHAR* argv[])
{
StudentInfo student_zhangsan;
student_zhangsan.Name = "张三";
student_zhangsan.Age = "20";
student_zhangsan.Sex = "男";
student_zhangsan.Number = "13889334010";
student_zhangsan.display();
return 0;
}
lz可以去参考一下string.format的用法~
自己好好设计下输出格式就行,像%-5d这样的
用setw函数就可以实现了。