comment se débarrasser des ordures dans le tableau de caractères?

Je suis en train d'écrire un programme en C, mais je continue à avoir des problèmes avec mon tableau de caractères. Je reçois des poubelles quand je l'imprimer à l'aide de prinf. voici un exemple de ce que je reçois quand je l'imprimer:

char à t.le symbole est Aôÿ¿

char à tabl[0].le symbole est Un

char à tabl[1].le symbole est un

char à tabl[2].le symbole est un

char à tabl[3].symbole d

char à tabl[4].le symbole est e

char à tabl[5].symbole f

char à tabl[6].symbole g

char à tabl[7].symbole h

char à tabl[8].le symbole est je

char à tabl[9].symbole x

char à t[0].le symbole est a0AÃ

char à t[1].le symbole est b)@Ã4

char t[2].le symbole est ckU*

char t[3].le symbole est Aôÿ¿

char t[4].le symbole est

quelqu'un pourrait-il me dire comment se débarrasser des ordures dans le tableau de caractères?

voici mon code

#define MAX 100
#ifndef SYMBSIZE
#define SYMBSIZE 1
#endif    
typedef struct tableme 
{
char symbol[SYMBSIZE];
int value;
int casenmbr;
int otherinfo;
}tabletype;
int main(int argc, char **argv)
{
tabletype t[MAX];
t[3].symbol[0] = 'A';
t[0].value=1;  
t[0].casenmbr = 7;
t[0].otherinfo = 682;
tabletype tabl[MAX];
tabl[0].value = 1;
tabl[0].symbol[0] = 'A';
tabl[1].value = 11;
tabl[1].symbol[0]= 'a';
tabl[2].value = 12;
tabl[2].symbol[0] = 'a';
tabl[3].value = 13;
tabl[3].symbol[0] = 'd';
tabl[4].value = 14;
tabl[4].symbol[0] = 'e';
tabl[5].value = 15;
tabl[5].symbol[0] = 'f';
tabl[6].value = 16;  
tabl[6].symbol[0] = 'g';
tabl[7].value = 17;
tabl[7].symbol[0] = 'h';
tabl[8].symbol[0] = 'i';
tabl[9].symbol[0] = 'x';
t[1].symbol[0] = 'b';
t[0].symbol[0]= 'a';
t[2].symbol[0]= 'c';
t[4].symbol[0]= 'g';
printf("char at t.symbol is %s \n", t[3].symbol);
for( x=0;x<10;x++)
{
printf("char at tabl[%d].symbol is %s \n",x, tabl[x].symbol);
}
int j;
for(j = 0; j<5;j++)  
{
printf("char at t[%d].symbol is %s \n",j, t[j].symbol);
}
return 0;
}

OriginalL'auteur fang_dejavu | 2010-03-19