6 réponses
bjr et merci pour ta reponce
bon jai fait une essaye mé j ai pa arrivé de complété le programe
voila ce que jai fai
j ai pa travaillé avec la fonction
#include <stdio.h>
#include <stdlib.h>
int main()
{
char* zouheir;
char* salwa;
int rc;
int jh;
FILE* R;
FILE* L;
zouheir=(char*)malloc(20);
salwa=(char*)malloc(20);
printf("entrez la chaine de caractére dans le fichier de nom zouheir\n");
gets(zouheir);
L=fopen("zou.txt","w");
if(L==NULL) printf("erreur");
else fputs(zouheir,L);
printf("entrez la chaine de caractére dans le fichier de nom salwa\n");
gets(salwa);
R=fopen("sal.txt","w");
if(R==NULL) printf("erreur");
else fputs(salwa,R);
puts(zouheir);
puts(salwa);
fclose(R);
fclose(L);
rc = fseek(R,0,SEEK_SET);
jh=fseek(R,0,SEEK_SET);
strcpy(zouheir,salwa);
return;
return 0;
}
bon jai fait une essaye mé j ai pa arrivé de complété le programe
voila ce que jai fai
j ai pa travaillé avec la fonction
#include <stdio.h>
#include <stdlib.h>
int main()
{
char* zouheir;
char* salwa;
int rc;
int jh;
FILE* R;
FILE* L;
zouheir=(char*)malloc(20);
salwa=(char*)malloc(20);
printf("entrez la chaine de caractére dans le fichier de nom zouheir\n");
gets(zouheir);
L=fopen("zou.txt","w");
if(L==NULL) printf("erreur");
else fputs(zouheir,L);
printf("entrez la chaine de caractére dans le fichier de nom salwa\n");
gets(salwa);
R=fopen("sal.txt","w");
if(R==NULL) printf("erreur");
else fputs(salwa,R);
puts(zouheir);
puts(salwa);
fclose(R);
fclose(L);
rc = fseek(R,0,SEEK_SET);
jh=fseek(R,0,SEEK_SET);
strcpy(zouheir,salwa);
return;
return 0;
}
Lorsque tu postes, utilise le bouton "code" à droite de souligner pour garder l'indentation. Sinon c'est illisible.
Sinon, pourquoi fais-tu une allocation dynamique alors que tu connais ta taille à la compilation ?
Un simple : char zouheir[20]; fera amplement l'affaire.
A la place de gets, utilise fgets.
Sinon lorsque tu fais : rc = fseek(R,0,SEEK_SET); alors que tu as fermé le fichier juste au-dessus.
strcpy(zouheir,salwa);
Là, tu mets à la place, nomFonction(zouheir,salwa);
Et tu réalises la fonction qui copie zouheir dans salwa en modifiant les c par C.
Cela se fait simplement avec une simple boucle for et un if.
Et à la fin du fichier, un simple : return 0; suffira.
Sinon, pourquoi fais-tu une allocation dynamique alors que tu connais ta taille à la compilation ?
Un simple : char zouheir[20]; fera amplement l'affaire.
A la place de gets, utilise fgets.
Sinon lorsque tu fais : rc = fseek(R,0,SEEK_SET); alors que tu as fermé le fichier juste au-dessus.
strcpy(zouheir,salwa);
Là, tu mets à la place, nomFonction(zouheir,salwa);
Et tu réalises la fonction qui copie zouheir dans salwa en modifiant les c par C.
Cela se fait simplement avec une simple boucle for et un if.
Et à la fin du fichier, un simple : return 0; suffira.
Ben, un simple :
Après, faudrait faire attention au débordement. En gros, il ne faut pas que l'indice ne dépasse pas 20 (taille de ton tableau).
void titi(const char *src, char *dst) { for(int i=0;i<strlen(src)+1;i++) { if( src[i]== 'c') dst[i]='C'; else dst[i]=src[i]; } }
Après, faudrait faire attention au débordement. En gros, il ne faut pas que l'indice ne dépasse pas 20 (taille de ton tableau).
bon voila ce que j ai fais mé toujors pa le resultat!!
#include <stdio.h>
#include <stdlib.h>
int main()
{
int titi(const char zouheir[20], char salwa[20],int i);
for(int i=0;i<strlen(zouheir+1);i++)
if( zouheir[i]== 'c');
salwa[i]='C';
else
salwa[i]=zouheir[i];
return 0;
char* zouheir;
char* salwa;
int rc;
int jh;
FILE* R;
FILE* L;
zouheir=(char*)malloc(20);
salwa=(char*)malloc(20);
printf("entrez la chaine de caractére dans le fichier de nom zouheir\n");
gets(zouheir);
L=fopen("zou.txt","w");
if(L==NULL) printf("erreur");
else fputs(zouheir,L);
printf("entrez la chaine de caractére dans le fichier de nom salwa\n");
gets(salwa);
R=fopen("sal.txt","w");
if(R==NULL) printf("erreur");
else fputs(salwa,R);
puts(zouheir);
puts(salwa);
fclose(R);
fclose(L);
rc = fseek(R,0,SEEK_SET);
jh=fseek(R,0,SEEK_SET);
return;
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
int titi(const char zouheir[20], char salwa[20],int i);
for(int i=0;i<strlen(zouheir+1);i++)
if( zouheir[i]== 'c');
salwa[i]='C';
else
salwa[i]=zouheir[i];
return 0;
char* zouheir;
char* salwa;
int rc;
int jh;
FILE* R;
FILE* L;
zouheir=(char*)malloc(20);
salwa=(char*)malloc(20);
printf("entrez la chaine de caractére dans le fichier de nom zouheir\n");
gets(zouheir);
L=fopen("zou.txt","w");
if(L==NULL) printf("erreur");
else fputs(zouheir,L);
printf("entrez la chaine de caractére dans le fichier de nom salwa\n");
gets(salwa);
R=fopen("sal.txt","w");
if(R==NULL) printf("erreur");
else fputs(salwa,R);
puts(zouheir);
puts(salwa);
fclose(R);
fclose(L);
rc = fseek(R,0,SEEK_SET);
jh=fseek(R,0,SEEK_SET);
return;
return 0;
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je n'ai pas tout corrigé, mais ton programme devrait marcher.
#include <stdio.h> #include <stdlib.h> #include <string.h> int titi(const char zouheir[20], char salwa[20]) { int i; for(i=0;i<strlen(zouheir)+1;i++) if( zouheir[i]== 'c') salwa[i]='C'; else salwa[i]=zouheir[i]; return 0; } int main(void) { char zouheir[20]; char salwa[20]; FILE* R; FILE* L; printf("entrez la chaine de caractére dans le fichier de nom zouheir\n"); gets(zouheir); L=fopen("zou.txt","w"); if(L==NULL) printf("erreur"); else fputs(zouheir,L); printf("entrez la chaine de caractére dans le fichier de nom salwa\n"); gets(salwa); R=fopen("sal.txt","w"); if(R==NULL) printf("erreur"); else fputs(salwa,R); puts(zouheir); puts(salwa); titi(zouheir,salwa); puts(zouheir); puts(salwa); return 0; }
Sur ma machine, ça marche :
Par ailleurs, je viens de me rendre compte que j'ai supprimé tes fclose(R) et fclose(L). N'oublie pas de les mettre ;-).
entrez la chaine de caractére dans le fichier de nom zouheir coucou entrez la chaine de caractére dans le fichier de nom salwa lol coucou lol coucou //zouheir CouCou //salwa, cela contient zouheir avec des C majuscule
Par ailleurs, je viens de me rendre compte que j'ai supprimé tes fclose(R) et fclose(L). N'oublie pas de les mettre ;-).
bon jai fait une essaye mé j ai pa arrivé de complété le programe
voila ce que jai fai
j ai pa travaillé avec la fonction
#include <stdio.h>
#include <stdlib.h>
int main()
{
char* zouheir;
char* salwa;
int rc;
int jh;
FILE* R;
FILE* L;
zouheir=(char*)malloc(20);
salwa=(char*)malloc(20);
printf("entrez la chaine de caractére dans le fichier de nom zouheir\n");
gets(zouheir);
L=fopen("zou.txt","w");
if(L==NULL) printf("erreur");
else fputs(zouheir,L);
printf("entrez la chaine de caractére dans le fichier de nom salwa\n");
gets(salwa);
R=fopen("sal.txt","w");
if(R==NULL) printf("erreur");
else fputs(salwa,R);
puts(zouheir);
puts(salwa);
fclose(R);
fclose(L);
rc = fseek(R,0,SEEK_SET);
jh=fseek(R,0,SEEK_SET);
strcpy(zouheir,salwa);
return;
return 0;
}