Il y a beaucoup d'erreurs dans ton code.
1) En premier, le plus important:
Citation
char *path;
char *path1;
char *path2;
char tmp[60];
int k,i=54,j=96470;
scanf("%s",tmp);
path=tmp;
scanf("%s",tmp);
path1=tmp;
Tu fais un scanf dans tmp, ok. Par contre path = tmp, va prendre l'adresse de tmp (le nom d'un tableau en C est un pointeur sur le premier élément de ce tableau) et mettre cette adresse dans path. path pointe maintenant sur tmp. Et, ensuite, tu recommence avec path1, qui va alors pointer également sur tmp.
Au final, tu te retrouve avec path et path1 pointant tous les deux sur tmp, qui contient le dernier nom de fichier que tu as lu.
2) Tu utilises beaucoup trop de variables intermédiaire. C'est typique de quelqu'un qui n'a pas pensé à son algorithme avant de commencer à programmer. On ne repétera jamais assez que le premier travail de programmation consiste à empoigner une feuille de papier, un crayon et une gomme.
3) Tu ne gère pas les conditions de fin de fichier du fichier d'entrée.
4) Il n'a jamais été dit que les commentaires étaient inutiles !
Je te propose ma version de ton programme. Attention, je n'ai pas regardé la logique de ton programme (la sémantique), je me suis juste attaché à corriger la syntaxe.
Citation
#include <stdio.h>~
int main()~
{~
int c;~
char fname_inp[256]; // NOM DE FICHIER INPUT~
char fname_out[256]; // NOM DE FICHIER OUTPUT~
int i=54,~
j=96470;~
FILE *f_inp, // FICHIER INPUT~
*f_out; // FICHIER OUTPUT~
~
/* OUVERTURE DES FICHIERS */~
scanf("%s",fname_inp); // LECTURE NOM FICHIER INPUT (ATT.: OVERFLOW POSSIBLE)
f_inp = fopen(fname_inp,"r"); // OUVERTURE FICHIER INPUT~
scanf("%s",fname_out); // LECTURE NOM FICHIER OUTPUT (ATT.: OVERFLOW POSSIBLE
f_out = fopen(fname_out,"w"); // OUVERTURE FICHIER OUTPUT~
~
/* BOUCLE PRINCIPALE */~
while (--j > 0)~
if (--i > 0)~
{if (putc(getc(f_inp),f_out) == EOF)~
break;~
}~
else {if ( (c = getc(f_inp)) == EOF)~
break;~
if (!(c%2))~
putc(c+1,f_out);~
else putc(c,f_out);~
}~
~
/* FERMETURE DES FICHIERS */~
fclose(f_inp);~
fclose(f_out);~
}~
Malheureusement l'indentation de mon programme a disparu en le copiant dans le bloc.
Y-a-t-il, sous Lea, un type de bloc permettant de conserver l'indentation (qui est un moyen important, d'accroitre la lisibilité des programmes.
..................
Parce qu'il avait une clôture à utiliser, l'homme invente la propriété privée. --- F. Cavanna