Série 2
Enoncé :
Exercice 1 :
Déterminer le résultat final :
int t[4]={10,20,30,40} ;
int *ad[4] ;
int i ;
for(i=0 ;i<4 ;i++)
ad[i]=t+i ;
for(i=0;i<4;i++)
printf(“%d”,*ad[i]);
printf("\n") ;
printf(« %d%d\n,*(ad[1]+1),*ad[1]+1);
exercice 2 :
ecrire un programme qui remplir un tableau d’entiers tab et calcul la valeur maximale et minimal dans la tableau.
a- Utiliser le formalisme pointeur
b- Utiliser un pointeur pour parcourir le tableau
Correction :
t (adresse du 1 ère élément du tableau) déclaration d’un tableau de pointeurs i=0 -> ad[0]=t+i=t=&t[0]=&10 i=1 -> ad[1]=t+1=&t[1] ainsi de suite… boucle for 2 : i=0 -> affiche le contenu de ad[0] donc on va affiché 10 i=1 -> 20 i=2 -> 30 i=4 -> 40 remarque : l’affichage final sera 10203040 puis on retourne à la ligne grace à printf("\n") ; ad[1]+1=t+1+1=t+2=&t[2] donc *(ad[1]+1)=30 (est le contenu de cette adresse). ad[1]=&t[1] -> *ad[1]=*&t[1]=t[1]=20 donc on aura; *ad[1]+1=20+1=21 |
Exercice 1 :
int t[4]={10,20,30,40} ;
int *ad[4] ;
int i ;
for(i=0 ;i<4 ;i++)
ad[i]=t+i ;
for(i=0;i<4;i++)
printf(“%d”,*ad[i]);
printf("\n") ;
printf(" %d%d\n",*(ad[1]+1),*ad[1]+1);
exercice 2 :
a-
#include<stdio.h>
Void main()
{
int t[100];
int I,n,max,min;
do{
puts("donner la taille du tableau") ;
scanf("%d",&n) ;
}while(n<0||n>100) ;
for(i=0 ;i<n ;i++)
{
Printf("donner l’élément %d du tableau",i) ;
Scanf("%d",&t[i]) ;
max=t[0] ;
min=t[0] ;
for(i=1 ;i<n ;i++)
{
if(t[i]>max)
max=t[i];
if(t[i]<min)
min=t[i];
}
Printf("le max est %d",max) ;
Printf("le min est %d",min) ;
}
b-
int *p ;
p=t ;
for(p=t+1 ;p<t+n ;p++)
{
If(*p>max)
Max=*p ;
If(*p<min)
Min=*p;
}
è pour plus de détaille envoyer un message comportant l’exercice et le numéro de série.
Créer un site internet gratuit avec E-monsite.com
- Signaler un contenu illicite
- Voir d'autres sites dans la catégorie Programmation
Comment créer un site -
Videos Droles
- Clips musique
- Cours création de site web