C - Mise en page sous forme de tableaux
Résolu
Ben
-
Ben -
Ben -
Bonjour,
J'ai un souci de mise en page en C. Voilà ce que je souhaiterai afficher dans la console.
Nom1 | Prenom1
Nom2 | Prenom2
etc
A priori rien de bien compliqué mais selon la taille du nom les informations ne sont pas nécessairement alignées. Y a-t-il un moyen simple d'afficher un bon alignement quelques soit la longueur du nom (j'ai essayé de bidouiller avec des tabulations mais c'est pas fameux j'ai toujours un souci avec les noms trop longs)?
Je précise que les informations sont extraites d'un fichier et sont affichés grâce à une boucle while donc je n'ai pas la possibilité de gérer l'affichage ligne par ligne (il y a plus d'une centaine de noms à afficher).
Je me doute que ça peut paraître assez dérisoire comme problème mais c'est pour un projet noté où la présentation ne peut pas être négligée.
Merci d'avance pour vos réponses.
J'ai un souci de mise en page en C. Voilà ce que je souhaiterai afficher dans la console.
Nom1 | Prenom1
Nom2 | Prenom2
etc
A priori rien de bien compliqué mais selon la taille du nom les informations ne sont pas nécessairement alignées. Y a-t-il un moyen simple d'afficher un bon alignement quelques soit la longueur du nom (j'ai essayé de bidouiller avec des tabulations mais c'est pas fameux j'ai toujours un souci avec les noms trop longs)?
Je précise que les informations sont extraites d'un fichier et sont affichés grâce à une boucle while donc je n'ai pas la possibilité de gérer l'affichage ligne par ligne (il y a plus d'une centaine de noms à afficher).
Je me doute que ça peut paraître assez dérisoire comme problème mais c'est pour un projet noté où la présentation ne peut pas être négligée.
Merci d'avance pour vos réponses.
A voir également:
- C - Mise en page sous forme de tableaux
- Mise en forme conditionnelle excel - Guide
- Mise en forme tableau word - Guide
- Impossible de supprimer une page word - Guide
- Mise en forme tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
4 réponses
utilise le \t
exemple:
exemple:
#include "stdio.h" main() { printf("aaaaaa\t|bbbb\n"); printf("cc\t|ddd\n"); }
Salut,
Utilise tout simplement la largeur de champ avec printf.
Par exemple : printf("%10s",toto); affichera la variable toto et l'alignera sur 10 caractères.
Cdlt
Utilise tout simplement la largeur de champ avec printf.
Par exemple : printf("%10s",toto); affichera la variable toto et l'alignera sur 10 caractères.
Cdlt
0x0syscall ta solution ne fonctionne que si les chaines ne sont pas trop longues. En l'occurence avec ton exemple si tu mets genre 15 a à la suite cela ne fonctionne plus.
En revanche, en combinant les tabulations avec la solution de fiddy j'obtiens quelque chose d'un peu plus satisfaisant; par encore ce que j'attends exactement parce les noms sont "alignes" a droite. C'est toujours mieux que ce que j'avais avant.
Merci à vous deux pour vos réponses.
J'attends un peu avant de mettre le sujet comme résolu, si jamais quelqu'un me donne une autre façon de faire...
En revanche, en combinant les tabulations avec la solution de fiddy j'obtiens quelque chose d'un peu plus satisfaisant; par encore ce que j'attends exactement parce les noms sont "alignes" a droite. C'est toujours mieux que ce que j'avais avant.
Merci à vous deux pour vos réponses.
J'attends un peu avant de mettre le sujet comme résolu, si jamais quelqu'un me donne une autre façon de faire...