Bonsoir,

J'ai un petit probléme auquel je n'arrive pas à trouver de solution surtout que je ne comprends pas , c'est une histoire de condition le programme devrait rentrer dans ma condition et executer le code que je lui demande or ça ne le fait pas .. Excusez moi d'avoir poster l'ensemble de mon code vu que tout y est lié ...

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include <stdio.h>
#include <stdlib.h>
 
#define T    20
#define TRUE    1
#define FALSE   0
 
char recherche(char str[], char c)
{
	int i, longu=0, lecture;
	for (i=0;i<longu;i++)
	{
		if (str[i]==c)
		{
			lecture=TRUE;
			break;
		}
		else
		{
			lecture=FALSE;
		}
	}
	if(lecture != TRUE){
	printf("caractere inexistant.\n");}
	else{
	printf("Caractere OK.\n");}
}
 
int nb_car (char str[])
{
	int i, nb_element=0;
	for (i=0;str[i] != '\0';i++)
	{
		nb_element++;
	}
 
	printf("Nombre de caracteres: %d\n",nb_element);
}
 
char remplacer_car(char str[], char str2[], char c1, char c2)
{
	int i, j=0, longu=0;
	longu=strlen(str);
	for(i=0;i<longu;i++)
	{
		if (str[i]==c1)
		{
			str[i]=c2;
		}
	}
 
	strcpy(str2,str);
 
	printf("%c -> %c : %s\n",c1,c2,str2);
}
 
int compte_car(char str[],char c)
{
	int i,longu=0,nb_c=0;
	for (i=0;i<longu;i++)
	{
		if (str[i]==c)
		{
			nb_c++;
		}
	}
 
	printf("Nombre de %c: %d\n",c,nb_c);
}
 
 
int main()
{
	FILE *fichier=NULL;
	char fich[T];
	char buffer[500];
	char car;
	int lecture;
 
	printf("Entrer fichier:");
	scanf("%s",fich);
 
	fichier = fopen(fich,"rb");
 
	if (!fichier){
	exit(0);}
 
	lecture=fgets(buffer, sizeof(buffer), fichier);
 
	if (lecture != FALSE) // C'est ici: Si la lecture est bonne alors on rentre dans la condition
	{
		nb_car(buffer);
		printf("Entrer le caractere a rechercher:");
		scanf("%c",&car); //Ici, il ne veut pas laisser la possibilité à l'utilisateur d'entrer un caractère le programme s'achève ...
 
		recherche(buffer,car);
		compte_car(buffer,car);
 
	}
 
	else
	{
		exit(0);
	}
 
	system("pause");
	return 0;
}
Merci de votre attention