Exercice
1 :
Écrire une
fonction search qui recherche une valeur particulière dans un tableau de
flottants
(float).
La fonction prendra en paramètre le tableau, sa taille et la valeur à
rechercher. Elle
retourna une
valeur entière qui sera une position de la valeur dans le tableau si
elle est
présente dans le
tableau et -1 sinon. Inclure cette fonction dans un programme qui saisit
les
valeurs du
tableau et la valeur à rechercher.
Exercice
2 :
La FSTS a voulu
recruter par voie de concours des employés dans un service informatique. Le
concours porte
sur N épreuves de coefficients différents. Proposer un programme qui
permet
de calculer la
moyenne pour chaque candidat participant au concours et éditer l'appréciation
du jury sachant
que les mentions décernées sont les suivantes:
Si moyenne >=
15 "Admis avec félicitations"
Si 12<=
moyenne < 15 "Admis avec mention bien"
Si 10<=
moyenne < 12 '"Admis"
Si 9 <=
moyenne < 10 "Redouble"
Sinon
"Exclu"
Exercice
3:
Soit la
déclaration suivante :
#define LONGUEUR 80
typedef char
texte[LONGUEUR];
1) Faire une
fonction void cherche (texte souschaine, texte chaine) qui saisit ces
deux
chaines, et dise
où et combien de fois on trouve la souschaine dans la chaine. Exemple :
chaine="fonction",
souschaine="on", on trouve deux fois la souschaine, en position 1 et
6.
2) Faire le
programme principal qui lit les deux chaines, appelle cherche et affiche
les
résultats.
Correction:
Exercice 1 :
#include<stdio.h>
#include<stdlib.h>
/* Définition de la fonction
search*/
int search(float T[], int size, float Valeur)
{
int i; /* Indice courant */
for (i = 0; i < size; i++)
if (T[i] == Valeur)
return i; /* Position de la
valeur */
return -1; /* Valeur non
trouvée */
}
/* Le programme principale*/
int main(int argc, char
*argv[])
{
const int size = 10; /*
Taille du tableau */
float T[size]; /* Tableau */
float x; /* Valeur à
rechercher */
int i; /* Indice */
/* Remplissage du tableau */
printf("Remplissage du
tableau:\n");
for (i = 0; i < size; i++)
{
printf("Entrer
T[%d]=:",i);
scanf("%f",&T[i]);
}
/* Affichage du tableau */
printf("Affichage du
tableau:\n");
for (i = 0; i < size; i++)
printf("T[%d] =
%f\n", i, T[i]);
/* Saisie de la clé à
rechercher */
printf("Entrer la
valeur : ");
scanf("%f",
&x);
/* Affichage du résultat */
printf(" %d\n",
search(T, size, x));
system("PAUSE");
return 0;}
Exercice 2 :
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char *argv[])
{float Note[100]; // Tableau
des notes
Prof:
Said EL KAFHALI Page 2/2
float Cof[100]; // Tableau
des coefficients
float Moy; // La moyenne
int i,N; // Le nombre des
notes et l'indice courant
float SomeCof; // La somme
des coefficients
printf("Introduire le
nombre des notes:");
scanf("%d",&N);
printf("Introduisez les
notes :");
for(i=0;i<N;i++)
scanf("%f", &Note[i]);
printf("Introduisez les
coefficients :");
for(i=0;i<N;i++)
scanf("%f",
&Cof[i]);
// Le calcule de la somme
des coefficients
SomeCof=0;
for(i=0;i<N;i++) SomeCof+=Cof[i];
// le calcule de la moyenne
for(i=0;i<N;i++)
Moy+= Note[i]*Cof[i]; // Les
notes multiplier par les
coefficients
Moy=Moy/SomeCof;
if (Moy>=15)
printf(" La moyenne de
ce candidat est %f : Admis avec
félicitations", Moy);
else if (12<= Moy && Moy< 15)
printf(" La moyenne de
ce candidat est %f :Admis avec mention
bien",Moy);
else if (10<= Moy && Moy< 12)
printf(" La moyenne de
ce candidat est %f : Admis ", Moy);
else if (9<= Moy
&& Moy< 10)
printf(" La moyenne de
ce candidat est %f : Redouble", Moy);
else
printf(" La moyenne de
ce candidat est %f : Exclu",Moy);
system("PAUSE");
return 0;
}
Exercice 3:
#include<stdio.h>
#include<stdlib.h>
#define LONGUEUR 80
typedef char
texte[LONGUEUR];
void cherche(texte
souschaine,texte chaine)
{
int i,nb=0,j;
for(i=0;chaine[i];i++)
{
for(j=0;souschaine[j]&&chaine[i+j];j++)
//tant que pas à la
fin de l'1 des 2
if(souschaine[j]!=chaine[i+j])break;
//dès différence,
sortie anticipée de la
boucle
if(!souschaine[j])
printf("%dième position : %d\n",++nb,i);
//si arrivé au bout de
souschaine, c'est trouvé
}
}
int main(int argc, char
*argv[])
{
char chaine[40],souschaine[40];
printf("Introduire
votre chaine:");
gets(chaine);
printf("Introduire la
souchaine recherchee:");
gets(souschaine);
printf(" La sous chaine
se trouve dans la chaine:\n");
cherche(souschaine,chaine);
system("PAUSE");
return 0;
}
Aucun commentaire:
Enregistrer un commentaire