Vous êtes sur la page 1sur 10

Université Sidi Mohamed Ben Filière : SMA-S3

Abdellah Année : 2021-2022


Faculté des sciences TP1 : Langage C
Fés

TP1 : Langage C
Compiler et exécuter votre programme
Lancer Dev-C++ (menu démarrer), puis choisir dans le menu Fichier, l'option Nouveau
Projet.
Choisir les options
 Console Application
 Projet C
Valider. Une boîte de sélection de fichiers apparaît. Choisir pour emplacement du fichier
projet le répertoire TP1, puis valider. Un projet est créé avec un fichier contenant le code :
#include <stdio.h>
#include <stdlib>
int main(int argc, char *argv[]){
system("PAUSE");
return EXIT_SUCCESS;}
Editer, compiler et exécuter le projet (en choisissant l'option Compiler & Exécuter du menu
Exécuter) le programme suivant qui permet d’afficher à l'écran un message de 'Bonjour'.
#include <stdio.h>
#include <stdlib>
int main(int argc, char *argv[]){
printf(“Bonjour \n”);
system("PAUSE");
return EXIT_SUCCESS;}
Écrire un programme qui affiche ceci à l'écran:
Bonjour
Utilisation des boucles
Ecrire un programme qui affiche la sortie suivante avec la boucle for :
Bonjour 1 fois
Bonjour 2 fois
Bonjour 3 fois
Bonjour 4 fois
Bonjour 5 fois
Bonjour 6 fois
Bonjour 7 fois
Bonjour 8 fois
Bonjour 9 fois
Bonjour 10 fois
Tableaux
Ecrire un programme qui affiche les caractères d’un tableau initialisé par les lettres ‘b’, ‘o’,
‘n’, ’j’, ‘o’, ‘u’, ‘r’.
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP2 : Langage C
Fés

TP2 : Langage C
Objectif :

Ce TP2 a pour but de vérifier les points techniques suivants :

 la notion de variables et leur déclaration ;


 Manipuler les opérateurs arithmétiques en langage C ;
 l'utilisation des instructions d’affichage et de saisie;
 l'affectation.

Exercice 1 :
Écrire un programme en langage C qui déclare et initialise quartes variables v1, v2, v3, et v4
de types, respectivement : int, char, float et double.
Exercice 2 :
Ecrivez un programme qui affiche deux entiers et qui calcule leur somme et leur produit dont
l’exécution du programme est comme suit:
Donner deux nombres 35 3
La somme est : 38
Le produit est : 105
Exercice 3 :
Ecrire un programme qui lit un caractère au clavier et affiche le caractère ainsi que son code
numérique en employant getchar et printf,
Exercice 4 :
Écrire un programme qui demande à l'utilisateur de taper la largeur et la longueur d'un champ
et qui en affiche le périmètre et la surface.

Page 1 sur 1
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP2 : Langage C
Fés

TP2 : Langage C
Exercice 1 :
#include <stdio.h>
int main(){
int v1=6;
char v2='@';
float v3=1.2;
double v4=3.14159265;
printf("La valeur de la variable v1 est: %d \n",v1);
printf("La valeur de la variable v2 est: %c \n",v2);
printf("La valeur de la variable v3 est: %f \n",v3);
printf("La valeur de la variable v4 est: %f \n",v4);
return 0;}
Exercice 2 :
#include<stdio.h>
int main(){
int a,b,s,p;
printf("Donnez deux nombres\n");
scanf("%i %i",&a,&b);
s=a+b;
p=a*b;
printf("la somme est: %i \n",s);
printf("le produit est: %i \n",p);
return 0;}
Exercice 3 :
#include <stdio.h>
main(){
int C;
printf("Introduire un caractère suivi de 'Enter'\n");
C = getchar();
printf("Le caractère %c a le code ASCII %d\n", C, C);
return 0;}
Exercice 4 :
#include <stdio.h>
int main(){
float x,y,surface,perimetre;
printf("Tapez la largeur du champ : ");
scanf("%f",&x);
printf("Tapez la longueur du champ : ");
scanf("%f",&y);
surface=x*y;
perimetre=2*(x+y);
printf("La surface vaut : %f \n",surface);
printf("Le perimetre vaut : %f \n",perimetre);
return 0;}

Page 1 sur 1
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP3 : Langage C
Fés

TP3 : Langage C
Exercice 1 :
Ecrire un programme qui demande à l’utilisateur de taper 10 entiers et qui affiche le plus petit
de ces entiers.
Exercice 2:
Ecrire un programme qui demande à l’utilisateur de taper 10 entiers et qui affiche leur somme
en utilisant la boucle for.
Exercice 3 :
Ecrire un programme qui demande de saisir un entier N et qui affiche N!.
 Utilisation du for.
 Calcul de la factorielle.
Exercice 4 :
Ecrire un programme qui permet de faire des opérations sur un entier (valeur initiale à 0). Le
programme affiche la valeur de l'entier puis affiche le menu suivant :
1. Ajouter 1
2. Multiplier par 2
3. Soustraire 4
4. Quitter
Le programme demande alors de taper un entier entre 1 et 4. Si l'utilisateur tape une valeur
entre 1 et 3, on effectue l'opération, on affiche la nouvelle valeur de l'entier puis on réaffiche
le menu et ainsi de suite jusqu'à ce qu'on tape 4. Lorsqu'on tape 4, le programme se termine.
 Utilisation du do while et switch.
 Gestion d'un programme à l'aide d'un menu.

Page 1 sur 1
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP3 : Langage C
Fés

Correction de TP3 : Langage C


Exercice 1 :
#include <stdio.h>
int main(){
int i,ppt,x;
for(i=0;i<10;i++){
printf("Tapez un entier : ");
scanf("%d",&x);
if(i==0)
ppt=x;
else if(x<ppt)
ppt=x;}
printf("Le plus petit vaut : %d \n",ppt);
return 0;}
Exercice 2 :
#include <stdio.h>
int main(){
int i,s=0,x;
for(i=0;i<10;i++){
printf("Tapez un entier : ");
scanf("%d",&x);
s=s+x;}
printf("La somme vaut : %d \n",s);
return 0;}
Exercice 3 :
#include <stdio.h>
int main(){
int N,i,fac=1;
printf("Tapez un entier : ");
scanf("%d",&N);
for(i=1;i<=N;i++)
fac*=i;
printf("N! vaut: %d \n",fac);
return 0;}
Exercice 4 :
#include <stdio.h>
int main(){
int x=0,choix;
do{
printf("x vaut: %d \n",x);
printf("1 : Ajouter 1 \n");
printf("2 : Multiplier par 2 \n");
printf("3 : Soustraire 4 \n");
printf("4 : Quitter \n");

Page 1 sur 2
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP3 : Langage C
Fés

printf("Votre choix : ");


scanf("%d",&choix);
switch(choix){
case 1 : x++;break;
case 2: x=x*2; break;
case 3: x=x-4;break;
}}
while(choix!=4);
printf("La valeur finale de x vaut : %d \n",x);
return 0;
}

Page 2 sur 2
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP4 : Langage C
Fés

TP4 : Langage C

Exercice 1 :
Ecrire un programme permettant de :
1. Saisir deux tableaux A et B de N entiers.
N
2. Calculer le produit scalaire de A et B (c-à-d S   a I * bI ).
I 1
Exercice 2 :
Créer un programme en C qui permet de chercher une valeur X (entré au clavier) dans un
tableau d'entiers avec les possibilités suivantes:
1. Déterminer si l'entier X appartient au tableau T.
2. Compter le nombre d'occurrence de l'entier X.
3. Afficher toutes les positions de l'entier X s'il existe ou le message "Élément n'existe pas"
dans le cas contraire.
Exercice 3 :
Ecrire un programme qui lit la taille N d'un tableau T du type entier, remplit le tableau par des
valeurs entrées au clavier et affiche le tableau.
Créer ensuite un tableau T1 contenant les entiers pairs de T et un tableau T2 contenant les
entiers impaires de T, et afficher les deux tableaux T1 et T2.
Exemple d’exécution :
Entrer la taille du tableau : 6
Entrer l'element 1 : 2
Entrer l'element 2 : 3
Entrer l'element 3 : 8
Entrer l'element 4 : 4
Entrer l'element 5 : 7
Entrer l'element 6 : 10
Affichage du tableau saisi :
2 3 8 4 7 10
Affichage du tableau des nombres pairs :
2 8 4 10
Affichage du tableau des nombres impairs :
3 7
Exercice 4 :
Ecrire un programme qui lit deux tableaux A et B et leurs dimensions N et M au clavier et qui
ajoute les éléments de B à la fin de A. Utiliser le formalisme pointeur à chaque fois que cela
est possible.
Exercice 5 :
Ecrire un programme qui lit un entier X et un tableau A du type int au clavier et élimine toutes les
occurrences de X dans A en tassant les éléments restants. Le programme utilisera les pointeurs P1 et
P2 pour parcourir le tableau.

Page 1 sur 1
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP4 : Langage C
Fés

Correction de TP4 : Langage C


Exercice 1 :
#include <stdio.h>
int main(){
int I,N,PS,A[5],B[5];
PS=0;
printf("Entrer la valeur N:");
scanf("%d",&N);
/*** la saisie des valeurs***/
for(I=0;I<N;I++){
printf("Entrer l'element d'indice de B : %d \n",I+1);
scanf("%d",&B[I]);}
for(I=0;I<N;I++){
printf("Entrer l'element d'indice de A : %d \n",I+1);
scanf("%d",&A[I]);
PS+=A[I]*B[I];}
printf("le produit scalaire de A et B est %d \n",PS);
return 0;}
Exercice 2 :
#include <stdio.h>
int main(){
int n,i,T[30],p[30],x,c;
printf("Entrer la taille du tableau: ");
scanf("%d",&n);
printf("\nRemplissage du tableau: \n");
for(i=0;i<n;i++){
printf("Entrer l'element %d :", i+1);
scanf("%d",&T[i]);
}
printf("\nEntrer la valeur a chercher: ");
scanf("%d",&x);
c=0;
for(i=0;i<n;i++){
if(T[i]==x){
p[c]=i;
c=c+1;}
}
if(c==0)
printf("\nLa valeur %d n'existe pas dans le tableau.", x);
else{
printf("\nLes positions de la valeur %d sont:\n", x);
for(i=0;i<c;i++){
printf("%d\n",p[i]+1);}}
return 0;}
Exercice 3 :

Page 1 sur 3
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP4 : Langage C
Fés

#include <stdio.h>
int main(){
int n,i,j,c1=0,c2=0,T[50],T1[50],T2[50];
printf("Entrer la taille du tableau : ");
scanf("%d",&n);
for(i=0;i<n;i++){
printf("Entrer l'element %d :", i+1);
scanf("%d",&T[i]);}
for(i=0;i<n;i++){
if(T[i]%2==0){
T1[c1]=T[i];
c1++;}
else{
T2[c2]=T[i];
c2++;}}
printf("\n Affichage du tableau saisi : \n");
for(i=0;i<n;i++)
printf("%d\t",T[i]);
printf("\n Affichage du tableau des nombres pairs : \n");
for(i=0;i<c1;i++)
printf("%d\t",T1[i]);
printf("\n Affichage du tableau des nombres impairs : \n");
for(i=0;i<c2;i++)
printf("%d\t ",T2[i]);
printf("\n");
return 0;}
Exercice 4 :
#include <stdio.h>
int main(){
/* Déclarations */
int A[100], B[50];
int N, M;
int I;
/* Saisie des données */
printf("Dimension du tableau A (max.50) : ");
scanf("%d", &N );
for (I=0; I<N; I++){
printf("Elément %d : ", I);
scanf("%d", A+I);}
printf("Dimension du tableau B (max.50) : ");
scanf("%d", &M );
for (I=0; I<M; I++){
printf("Elément %d : ", I);
scanf("%d", B+I);}
/* Affichage des tableaux */
printf("Tableau donné A :\n");
for (I=0; I<N; I++)

Page 2 sur 3
Université Sidi Mohamed Ben Filière : SMA-S3
Abdellah Année : 2021-2022
Faculté des sciences TP4 : Langage C
Fés

printf("%d ", *(A+I));


printf("\n");
printf("Tableau donné B :\n");
for (I=0; I<M; I++)
printf("%d ", *(B+I));
printf("\n");
/* Copie de B à la fin de A */
for (I=0; I<M; I++)
*(A+N+I) = *(B+I);
/* Nouvelle dimension de A */
N += M;
/* Edition du résultat */
printf("Tableau résultat A :\n");
for (I=0; I<N; I++)
printf("%d ", *(A+I));
printf("\n");
return 0;}
Exercice 5 :
#include <stdio.h>
int main(){
int A[50],N,X,*P1, *P2;
/* Saisie des données */
printf("Dimension du tableau (max.50) : ");
scanf("%d",&N);
for(P1=A;P1<A+N;P1++){
printf("Elément %d : ",P1-A);
scanf("%d",P1);}
printf("Introduire l'élément X à éliminer du tableau : ");
scanf("%d",&X);
/* Affichage du tableau */
for(P1=A;P1<A+N;P1++)
printf("%d ",*P1);
printf("\n");
/* Effacer toutes les occurrences de X et comprimer : */
/* Copier tous les éléments de P1 vers P2 et augmenter */
/* P2 pour tous les éléments différents de X. */
for(P1=P2=A;P1<A+N;P1++){
*P2=*P1;
if(*P2!=X)
P2++;}
/* Nouvelle dimension de A */
N=P2-A;
/* Edition du résultat */
for(P1=A;P1<A+N;P1++)
printf("%d ",*P1);
printf("\n");
return 0;}

Page 3 sur 3

Vous aimerez peut-être aussi