Langage C
  controle de rattrapage partie 1 2007
 

Exercice 1 

 

Soit le programme C suivant :

 

#include <stdio.h>

 

int a =1 ;

 

void fct1 ( int a , b)

{   

      printf(" a = %d  b = %d n", a , b );  

}

 

int fct2 ( int *x  ,  int y)

{   int a ,b;

     a =  *x > y  ;     

     switch ( a )

    {

      case 1 : b =  ++(*x)  ;  break;

      case 0 : b =  (*x)++  ;

    } 

    fct1 ( a , b );

    return b ;

}   

void main ( )

{  int b = 1;

 

      a += fct2( b , a );    

      fct1 ( a , b );

  

}

    

·         Corriger les 3 erreurs contenues dans le programme.

 

·         Donner le prototype de la fonction fct2.

 

·         Donner la suite des affichages produits (Expliquer)

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 


















Exercice 2 

Ecrire une fonction qui supprime d’une chaîne de caractères les répétitions de caractères identiques consécutifs. La fonction remplacera une suite de plusieurs caractères identiques par un seul de ces caractères. La fonction ne doit pas créer une nouvelle chaîne de caractères mais modifier la chaîne qui lui est transmise comme paramètre. La fonction retourne la longueur de la nouvelle chaîne.

 

Exemple :

 

La fonction devra transformer la chaîne "aaabbccccdee" en la chaîne  "abcde" et retourner 5.

 
  Aujourd'hui sont déjà 1 visiteurs (1 hits) Ici!  
 
Ce site web a été créé gratuitement avec Ma-page.fr. Tu veux aussi ton propre site web ?
S'inscrire gratuitement