Académique Documents
Professionnel Documents
Culture Documents
Exercice 1
A B C p1 p2
Init 1 2 3 / /
P1=&A 1 2 3 &A /
P2=&C 1 2 3 &A &C
p1=p2 1 2 3 &C &C
p2=&B 1 2 3 &C &B
*p1=*p2 1 2 2 &C &B
(*p1)++ 1 2 3 &C &B
*p1*=*p2 1 2 6 &C &B
*p2=*p1/=*p2 1 3 3 &C &B
A=++*p2**p1 12 4 3 &C &B
Exercice 2
#include <stdio.h>
#include <conio.h>
Exercice 3
Exercice 4
#include<stdio.h>
#include<conio.h>
void remplir(int *t,int *n)
{
int i;
do
{
printf("donner la taille du tableau:");
scanf("%d",n);
}
while(*n>50);
for(i=0;i<*n;i++)
{
printf("donner un entier t[%d]:",i);
scanf("%d",&t[i]);
}
}
void permuter(int *x,int *y)
{
int AIDE;
AIDE=*x;
*x=*y;
*y=AIDE;
}
void inverser(int *t,int n)
{
int *p1,*p2;
for(p1=&t[0],p2=&t[n-1];p1<=p2;p1++,p2--)
permuter(p1,p2);
}
void afficher(int *t,int n)
{
int *p,i;
p=t;
printf("les ‚l‚ments du tableau en ordre inverse sont:\n");
for(i=0;i<n;i++)
printf("%d\t",*(p+i));
}
void main()
{
int t[50],n;
clrscr();
remplir(t,&n);
inverser(t,n);
afficher(t,n);
getch();
}
Exercice 5
#include <stdio.h>
#include <conio.h>
void lecture(int *t,int *n)
{
int i;
do
{
printf("donner la valeur de n:");
scanf("%d",n);
}
while((*n)>50);
for(i=0;i<(*n);i++)
{
printf("donner un entier:");
scanf("%d",t+i);
}
}
void affiche(int t[],int n)
{
int i;
for(i=0;i<n;i++)
printf("\t%d",t[i]);
}
void supprime(int *t,int *n,int x)
{
int i,j;
for(i=0;i<(*n)-1;)
{
if(t[i]==x)
{
for(j=i;j<*n;j++)
t[j]=t[j+1];
(*n)--;
}
else
i++;
}
if(t[i]==x)
(*n)--;
}
void main()
{
int t[50],n,x;
clrscr();
lecture(t,&n);
printf("\nle tableau initial est:\n");
affiche(t,n);
printf("\ndonner la valeur … supprimer");
scanf("%d",&x);
supprime(t,&n,x);
printf("\nle tableau aprŠs suppression de %d est:\n",x);
affiche(t,n);
getch();
}
Exercice 6
#include <stdio.h>
#include <conio.h>
void lecture(int *t,int *n)
{
int i;
do
{
printf("donner la valeur de n:");
scanf("%d",n);
}
while((*n)>50);
for(i=0;i<(*n);i++)
{
printf("donner un entier:");
scanf("%d",t+i);
}
}
void affiche(int t[],int n)
{
int i;
for(i=0;i<n;i++)
printf("\t%d",t[i]);
}
int existe(int *t,int n,int i,int x)
{
while(i<n&&t[i]!=x)
i++;
if(i==n)
return 0;
else
return 1;
}
void main()
{
int t[50],n,x;
clrscr();
lecture(t,&n);
printf("\nle tableau initial est:\n");
affiche(t,n);
printf("\ndonner la valeur … chercher:");
scanf("%d",&x);
if(existe(t,n,0,x)==1)
printf("\nl'‚l‚ment %d existe\n",x);
else
printf("\nl'‚l‚ment %d n'existe pas\n",x);
getch();
}
Exercice 7
#include <stdio.h>
#include <conio.h>
void lecture(int *t,int *n)
{
int i;
do
{
printf("donner la valeur de n:");
scanf("%d",n);
}
while((*n)>50);
for(i=0;i<(*n);i++)
{
printf("donner un entier:");
scanf("%d",t+i);
}
}
void affiche(int t[],int n)
{
int i;
for(i=0;i<n;i++)
printf("\t%d",t[i]);
}
void permuter(int *x,int *y)
{
int temp;
temp=*x;
*x=*y;
*y=temp;
}
Exercice 8
#include<stdio.h>
#include<conio.h>
void lecture1(char *ch1,char *ch2)
{
printf("donner une première chaine:");
scanf("%s",ch1);
printf("donner une deuxième chaine:");
scanf("%s",ch2);
}
void lecture2(char *ch1,char *ch2)
{
printf("donner une première chaine:");
gets(ch1);
printf("donner une deuxième chaine:");
gets(ch2);
}
Exercice 9
#include <stdio.h>
#include <conio.h>
void lecture(char *ch)
{
printf("donner une chaine de caractŠres:");
scanf("%s",ch);
}
int palin(char ch[])
{
char copie[10];
strcpy(copie,ch);
strrev(copie); /*inverse la chaine copie*/
if(strcmp(ch,copie)==0)
return 1;
return 0;
}
void main()
{
char ch[10];int res;
clrscr();
lecture(ch);
res=palin(ch);
if(res==1)
printf("la chaine %s est palindrome\n",ch);
else
printf("la chaine %s n'est pas palindrome\n",ch);
getch();
}
Exercice 10
#include <stdio.h>
#include <conio.h>
void lecture(char *t,int *n)
{
int i;
do
{
printf("donner la valeur de n:");
scanf("%d",n);
}
while((*n)>=5);
for(i=0;i<(*n);i++)
{
printf("donner un caractŠre:");
scanf(" %c",t+i); /*noter l’espace avant %c qui permet de vider le tampon*/
}
}
void affiche(char t[],int n)
{
int i;
printf("\nle tableau initial est:\n");
for(i=0;i<n;i++)
printf("\t%c",t[i]);
}
int verif(char *t,int n)
{
int i=0;
while(i<n&&isdigit(t[i])) /*isdigit(c) est une fonction standard qui permet de tester est ce
que le caractère c est un chiffre ou non*/
i++;
if(i==n)
return 1;
return 0;
}