|
|
|
|
Bonjour,
J'ai un petit programme pour afficher un tableau de caractere 20*20 vide dont le contour est fait de #.
Je le compile tout va bien, mais quand la fenetre dos me l'affiche, j'ai une représentation en ligne du tableau.
Comment je peux lui donner un forme de carre? D'ou vient mon problème?
En esperant que je suis assez clair. Merci d'avance
#include <stdio.h>
#include <stdlib.h>
void main (void)
{
int i;
int j;
char tableau[22][22];
for(i=0; i<22; i++)
{
for(j=0; j<22; j++)
{
tableau[i][j] = ' ';
}
}
for(i=0; i<22; i++)
{
tableau[i][0] = '#';
tableau[i][21] = '#';
}
for(j=0; j<22; j++)
{
tableau[0][j] = '#';
tableau[21][j] = '#';
}
for(i=0; i<22; i++)
{
for(j=0; j<22; j++)
{
printf("%c", tableau[i][j]);
}
}
}
Exact. Tu peux améliorer encore ton programme :
#include <stdio.h>
#include <stdlib.h>
int main()
{
unsigned int i;
unsigned int j;
const unsigned int imax=22,jmax=22;
char tableau[imax][jmax];
for(i=0; i<imax; ++i){
for(j=0; j<jmax; ++j){
tableau[i][j] = ' ';
}
}
for(i=0; i<imax; ++i){
tableau[i][0] = '#';
tableau[i][jmax-1] = '#';
}
for(j=0; j<jmax; ++j){
tableau[0][j] = '#';
tableau[imax-1][j] = '#';
}
for(i=0; i<imax; ++i){
for(j=0; j<jmax; ++j){
printf("%c", tableau[i][j]);
}
printf("\n");
}
return 0;
}
Le imax et jmax rendent plus lisible le programme et permette de changer facilement les dimensions du tableau. Actuellement tu alloues de manière statique ton tableau 22*22 mais avec des malloc tu verras qu'il est facile de spécifier dynamiquement ses dimensions. Attention à ne pas oublier les headers et à bien retourner le code d'éexecution dans ton main pour être standard. Bonne chance |
Salut,
|