Bonsoir,
En travaillant sur ce problème qui doit comporte des fonctions de saisie d'une chaine, puis de calcul de l'occ du char c puis d'inverser la chaine mais le programme n"execute pas la fonction inverser et je sais pas pourquoi ou comment le resoudre. de l'aide svp!
Voici le code :
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 #include <stdio.h> #include <stdlib.h> /*probleme*/ /*saisir*/ char* saisir() { int n; char* ch; printf("saisir la taille de ch:\n"); scanf("%d", &n); printf("saisir votre chaine\n"); ch = (char*) malloc(n * sizeof(char)); _flushall(); gets(ch); return (ch); } /*occ*/ int occurance(char* ch) { int i; int occ = 0; for (i = 0; i < strlen(ch); i++) { if (ch[i] == 'c') occ = occ + 1; } return (occ); } /*fonction inverse*/ char* inverse(char* ch) { return (strrev(ch)); } /*programme principal*/ int main() { char* ch; int occ; printf("le nb d'occ de char 'c' dans ch =%d\n", occurance(saisir())); printf("la chaine inversée =%s\n", inverse(ch)); return 0; }
Partager