It's WORK !

This commit is contained in:
Adrien Van 2017-02-04 20:20:27 +01:00
parent a5777da258
commit 87b42efe1f
2 changed files with 18 additions and 17 deletions

View File

@ -5,7 +5,7 @@
//D<>finition d'une constante N de valeur 10 (2 pts)
#define N 10
#define __DEBUG__
//#define __DEBUG__
//Prototypes des fonctions d<>finies par apr<70>s (7 pts)
FILE* OuvrirFichier ();
@ -58,7 +58,7 @@ int main()
//Affichage en binaire des N <20>l<EFBFBD>ments de tab (1 pt)
AfficherDonnees (tab);}
}
else printf("Au revoir!");
printf("Au revoir!");
getch();
return 0;
}
@ -149,7 +149,7 @@ char ChaineVersOctet(char chaine[9])
void LireDonnees (FILE *fichier, char *tab)
{
int i;
char donnee[9];
char donnee[10];
char *p;
for(i=0; i<N; i++)
{
@ -159,10 +159,11 @@ void LireDonnees (FILE *fichier, char *tab)
//Lecture d<>une cha<68>ne de caract<63>res dans le fichier et enregistrement
//dans donnee. On suppose que le fichier ne comporte que des mots de 8 caract<63>res
//0 ou 1 repr<70>sentant des octets binaires. (2 pts)
fgets(donnee, sizeof(donnee), fichier);
char * ptf = fgets(donnee, sizeof(donnee), fichier);
p = strchr(donnee, '\n');
if(p)
*p=0;
*p='\0';
#ifdef __DEBUG__
printf("DEBUG : I : %d\n",i);
@ -188,15 +189,15 @@ void LireDonnees (FILE *fichier, char *tab)
void AfficherDonnees(char tab[])
{//D<>claration et <20>ventuellement initialisation des variables locales (3 pts)
int i, j, m = 1;
char b[8]; //8 bit + \0 = 9
char b[9]; //8 bit + \0 = 9
for(i=0; i<N; i++) //parcour tab d'octet
{
m = 1;
printf("\n%2d) ",i+1);
//Affichage en binaire de l<><6C>l<EFBFBD>ment i de tab (6 pts)
for (j=8; j>=0; j--)
for (j=8; j>0; j--)
{
if (tab[i-1] & m)
if (tab[i] & m)
{
#ifdef __DEBUG__
printf("DEBUG i%d j%d: DONNE tab[i] %c avec masque %x\n",i,j,tab[i], tab[i]&0xff&m);
@ -214,8 +215,8 @@ void AfficherDonnees(char tab[])
m<<=1;
}
b[8]='\0';
printf ("%s %c %c", b, b[0],b[7]);
printf("\n");
printf ("%s", b);
}
printf("\n");
}

View File

@ -1,11 +1,11 @@
01100001
01100010
01100011
01100100
01110010
01100011
01101100
01100101
01100110
01100111
01101000
01101001
01101011
01101101
01101100
01101001
01101111
01101100