<== PLAN | P.précédente | P.suivante | en bas

N.F.I. 2 ième année Langage C septembre 2000

Feuille 7 : utilisation des fichiers

  1. Taille de fichier; fichier texte
    1. Ecrire un sous-programme qui reçoit un nom de fichier contenant des caractères ascii, puis fournit sa taille et son nombre de lignes (si nbrc est le nombre de caractère '\n' recontrés, alors le nombre de lignes est nbrc si le dernier caractère du fichier est '\n', sinon c'est nbrc+1).
    2. Ecrire un programme qui reçoit des noms de fichier par la ligne de commande et fournit pour chacun d'eux sa taille et le nombre de lignes.
    3. Ecrire un sous-programme qui reçoit un nom de fichier texte, et recopie dans une zone mémoire allouée dynamiquement le contenu de ce fichier.
      Ce sous-programme doit fournir la zone mémoire et un compte rendu des anomalies éventuelles (fichier inexistant, mémoire insuffisante ...).
    4. Ecrire un sous-programme qui reçoit un nom de fichier texte, et une chaîne, et crée le fichier contenant cette chaîne (fichier fermé par le sous-programme).
      Ce sous-programme doit fournir - sans affichage - un compte rendu des anomalies éventuelles ( fichier impossible à créer ...).

  2. Caractères de contrôle et fichier
    1. Constituer le fichier de nom 'codes' contenant les octets de 1 à 126, obtenus de la façon suivante:
          for( i=1; i<120; i+=8) {
                for(j=0; j<8; j++) fprintf( fic, "%c", i+j);
                fprintf( fic, "\n");
                }
          for(j=0; i+j<127; j++) fprintf( fic, "%c", i+j);
          fprintf( fic, "\n");
         
    2. Trouver la taille du fichier (commande unix 'wc' par exemple), et expliquez la valeur trouvée.
    3. On appelle mot, la suite de caractères lus au clavier ou dans un fichier, par le format %s. Déterminer les mots lus dans le fichier 'codes'.
    4. Ecrire un programme qui affiche le contenu d'un fichier ascii, en remplaçant chaque code inférieur à 32 par 2 caractères (un code i inférieur à 32 est affiché par le caractère '^' suivi du caractère de code 64+i ):
      0 ->^@ 1->^A ... 26->^Z 27->^[ 28->^\ 29->^] 30->^^ 31->^_

      Après chaque retour-chariot ('\n') du fichier ascii, ^J est affiché, puis l'affichage se poursuit au début d'une nouvelle ligne.

      Utiliser ce programme pour lire le fichier 'codes'.

  3. Valeurs numériques codées ascii ou binaire

  4. Parcours, existence de fichier

  5. Annexe: quelques déclarations

↑ ACCUEIL     ← PLAN | P.précédente | P.suivante | en haut