Sortie de colonnes alignés
Je suis en train d'apprendre le C++. J'ai un problème de formatage de la sortie de mon programme. Je voudrais imprimer il y a des colonnes parfaitement alignées, mais jusqu'à présent, je ne peut pas le faire, voici mon code:
int main()
{
employee employees[5];
employees[0].setEmployee("Stone", 35.75, 053);
employees[1].setEmployee("Rubble", 12, 163);
employees[2].setEmployee("Flintstone", 15.75, 97);
employees[3].setEmployee("Pebble", 10.25, 104);
employees[4].setEmployee("Rockwall", 22.75, 15);
printEmployees(employees, 5);
return 0;
}
//print the employees in my array
void printEmployees(employee employees[], int number)
{
int i;
for (i=0; i<number; i++) {
employees[i].printEmployee();//this is the method that give me problems
}
cout << "\n";
}
dans la classe employé j'ai l'impression employé méthode:
void printEmployee() const
{
cout << fixed;
cout << surname << setw(10) << empNumber << "\t" << setw(4) << hourlyRate << "\n";
}
Problème est lorsque j'imprime "les pierrafeu" ligne de l'emp nombre et les taux ne sont pas alignés. quelque chose comme ce qui se passe:
Pierre 43 35.750000 Décombres 163 12.000000 Flintstone 97 15.750000 Galets 104 10.250000 Rockwall 15 22.750000
Quelqu'un peut-il m'aider? (J'ai essayé d'ajouter des onglets.. mais il n'a pas aidé)
Vous devez vous connecter pour publier un commentaire.
Dans la classe employé d'impression employé la méthode:
L'utilisation de cette ligne à imprimer.
Vous avez oublié d'ajouter "
<< left
". Cela est nécessaire si vous voulez aligné à gauche.Espère que ça ll utile.
Vous devez définir une largeur avant vous imprimer le nom pour obtenir d'autres choses à la ligne d'après. Quelque chose dans cet ordre:
J'avais (du moins normalement) éviter d'essayer de le mélanger à largeur fixe de champs, avec des onglets ainsi. Il est généralement plus facile d'utiliser des largeurs d'aligner les objets.