Exercice pointeurs
Série d’exercices sur les pointeurs et allocation dynamique
Exercice 1 :
Soit a une variable lue dans la fonction Main . On veut réaliser les opérations suivantes :
1. Modification de la valeur de a dans la fonction d’entête VOID Modifier (int *p) avec p = &a
2. Affichage de la valeur de a avant et après modification Ecrire un programme C qui permet de réaliser ces 2 opérations.
Exercice 2 :
Soient a et b 2 variables lues en entrée dans la fonction principale Main . Ecrire un programme qui réalise les fonctions suivantes :
1. Permutation des valeurs de a et b dans la fonction d’entête suivante
VOID permut ( float *pa , float *pb)
2. Affichage dans la fonction MAIN de a et b avant et après permutation en sachant que pa = &a et pb = &b
Exercice 3 :
Soient une matrice A ( k,c) et un vecteur V à c éléments . on veut déterminer un vecteur Y tel que : Y = A V . Le programme à écrire, est soumis aux restrictions suivantes :
1. Une allocation dynamique doit être utilisée pour réserver de l’espace aux structures entières A , V et Y qui sont considérées comme pointeurs .
2. Utilisations des notations adéquates comme par exemple &V[i] = (V+i) , V[i] = *(V+i) , &A[i][j] = * ( A+i)+j
3. Libération des espaces alloués à la fin du programme
Ecrire 2 programmes différents tels que :
• Le premier programme doit utiliser uniquement la fonction principale main
• Le deuxième doit utiliser une fonction d’entête suivante : Int *valeur_du_vecteur_y ( int **A , int *V ) qui permet de calculer le vecteur Y à partir de A et V ( A et V sont lues dans la fonction Main , Y est affiché aussi dans le Main ) . K et c sont utilisée et initialisés comme variable globale .
Exercice 4 :
Soit la structure d’enregistrement relative aux