Vous êtes sur la page 1sur 4

#include<stdio.

h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
int *t, *pair, *imp, n, i,k,m;
void saisie(void)
{
for(i=0; i<n; i++)
{ printf("\nt[%d]= ", i);
scanf("%d", t+i);
}
}
void tri(void)
{int x, j;
for(i=0; i<n-1; i++)
if( (*(t+i)%2)==0)
continue;
else
{ j=i+1;
while(j<n)
{ if((*(t+j)%2)==0)
{ x=*(t+i);
*(t+i)=*(t+j);
*(t+j)= x;
break;
}
j++;

}
}
printf("\n\n\n");
for(i=0;i<n;i++)
printf("\nt[%d]= %d\n", i,*(t+i));
}
int *premier_imp(void)
{ int *q;
q=NULL;
for(i=0; i<n; i++)
if((*(t+i))%2 !=0)
{ q= t+i;
break;
}
return(q);
}
void separ(void)
{printf("\n\n\n");
i=0; k=0;
while((*(t+i)%2)==0 && i<n)
{ k++;
i++;
}
m=n-k;
pair=(int*)malloc(k*sizeof(int));
printf("\n\n\n");
for(i=0;i<k;i++)

{ *(pair+i)=*(t+i);
printf("\npair[%d]= %d\n", i,*(pair+i));
}
printf("\n\n\n");
if(m!=0)
{ imp= (int*)malloc(m*sizeof(int));
for(i=0;i<m;i++)
{ *(imp+i)=*(t+k+i);
printf("\nimp[%d]= %d\n", i,*(imp+i));
}
}
}
int main()
{ int *p,choix;
do{printf(" donnez le nbre des elements n : ");
scanf("%d", &n);
t= (int*)malloc(n*sizeof(int));
saisie();
tri();
p=premier_imp();
if(p==NULL)
printf(" \n\nil n\'existe aucun element impair dans ce tableau . \n");
else
printf("\n\nle rang du premier impair est: %d et sa valeur est : %d", p-t+1, *p);
separ();
printf("voulez vous saisir un autre tableau? si oui tapez 1");
scanf("%d",&choix);

}while(choix==1);
getch();
}