voila le ptit programme qui permet de determiner le nbre de chaine de caractère dans un fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
 
 int tailleTab(char *chaine, FILE *f)
 {
 char *p;
 int i=0;
  fseek(f,0,SEEK_SET);
  fgets(chaine,100*sizeof(chaine),f);
  p=strtok(chaine," ");
  if(p!=NULL)
  {
    i++;
  while((p=strtok(NULL," "))!=NULL)
    i++;
  }
    return (i);
 }
 void main()
 {
 FILE *f;
 char ch[100];
char chaine[100];
int j;
printf("donner le nom du fichier source : ");
gets (ch);
f=fopen(ch,"r");
if(!f)
{
 printf("impossible d'ouvrir le fichier");
 
}
j=tailleTab(chaine,f);
printf("la taille est %d",j);
getch();
}
si je met 4 chaine de caractère dans un fichier texte ca marche si j'en met 3 il me donne 4 aussi comme nombre alors que c'est trois. Je ne sais pas pourquoi.
NB : le fichier contient plusieurs lignes nn po un seul
merci d'avance