• Télécharger
Corrigés exercices langage C
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Corrigés exercices langage C

on

  • 52,726 vues

Corrigés exercices langage C

Corrigés exercices langage C

Statistiques

Vues

Total des vues
52,726
Vues sur SlideShare
52,725
Vues externes
1

Actions

J'aime
14
Téléchargements
0
Commentaires
5

1 intégré 1

http://chaine4you.blogspot.com 1

Accessibilité

Catégories

Détails de l'import

Uploaded via as Microsoft Word

Droits d'utilisation

© Tous droits réservés

Report content

Signalé comme inapproprié Signaler comme inapproprié
Signaler comme inapproprié

Indiquez la raison pour laquelle vous avez signalé cette présentation comme n'étant pas appropriée.

Annuler
  • Full Name Full Name Comment goes here.
    Êtes-vous sûr de vouloir
    Votre message apparaîtra ici
    Processing...
  • pour un cour bien compet en C et des series de TP et des exercices avec correction :
    http://creermonprogramme.blogspot.com
    Êtes-vous sûr de vouloir
    Votre message apparaîtra ici
    Processing...
  • superbe
    Êtes-vous sûr de vouloir
    Votre message apparaîtra ici
    Processing...
  • superbe
    Êtes-vous sûr de vouloir
    Votre message apparaîtra ici
    Processing...
  • please
    Êtes-vous sûr de vouloir
    Votre message apparaîtra ici
    Processing...
  • Implémenter l’algorithme de tri par sélection d’un vecteur d’entiers de taille N
    la solution svp
    Êtes-vous sûr de vouloir
    Votre message apparaîtra ici
    Processing...
Poster un commentaire
Modifier votre commentaire

Corrigés exercices langage C Document Transcript

  • 1. Pour + d’exercices http://coursuniversite.com/programme 1:#include<conio.h>#include<stdio.h>main() /* normalement il fallait ecrire int main( int argc,char *argv[] )*/{ int i,n; printf(" donner un nombren"); scanf("%d", &n); printf(" la table de multiplication de %d est:n",n); for (i=1;i<11;i++){ printf("n%d*%d=%dn",n,i,n*i);} getch(); }
  • 2. Pour + d’exercices http://coursuniversite.com/ programme 2:#include<stdio.h>#include<conio.h>main(){ /* declaratios des variables*/ int i;/* alpha[27] est un tableau de caracteres*/ char cc,alph[27]={ ,a,b,c,d,e,f,g, h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}; /* saisi de largument*/ printf("donner une lettre:n"); scanf("%c",&cc); for(i=0;i<27;i++) { /* affichage du rang de la lettre*/ if (alph[i]==cc)printf("le rang de la lettre est:n%d",i); } getch(); }
  • 3. Pour + d’exercices http://coursuniversite.com/ programme 3:#include<stdio.h>#include<conio.h>main(){ /* declarations des variables*/ int x,r,y,c; /* la saisi des deux enties*/ printf(" donner deux nombres:n"); scanf("%d %d", &x, &y); /* la recherche du pgcd puis laffichage */ if(x<y){ c=x; x=y; y=c;} (y==0){ printf(" le pgcd est: %dn",x);} else{ r=x%y; if (r==0){ printf(" le pgcd est: %dn",y);} while (r!=0){ /* cette ligne veut dire : tant que r est different de 0 fair les instructions en bas*/ x=y; y=r; r=x%y; /* loperateur % represente le reste de la division entiere; r cest le reste de ladivision de x et y */} printf(" le pgcd est: %dn",y); getch(); }}
  • 4. Pour + d’exercices http://coursuniversite.com/ programme 4:#include<stdio.h>#include<conio.h>#include<malloc.h>main(){ /* declarations des variables*/ float max,*tab; int m,i,j,n; /* la saisi de la matrice de n lignes et m colonnes */ printf(" donner le nombre de lignes de la matrice: n"); scanf("%d", &n); printf(" donner le nombre de colonnes de la matrice:n"); scanf("%d", &m); tab=(float*)calloc(n*m,sizeof(float)); for (i=0;i<n*m;i++){ printf(" donnez un element :n"); scanf("%lf", tab+i); } /* laffichage de la matrice*/ printf(" la matrice est:n"); for (i=0;i<n;i++) { for (j=0;j<m;j++) printf(" %f ", *(tab+i*n+j)); printf("n"); } /* la rechreche du maximum de tout les elements de la matrices*/ max=*(tab); for (i=0;i<n;i++){ for (j=0;j<m;j++) if (max<*(tab+i*n+j)) max=*(tab+i*n+j); } /* laffichage du maximum*/ printf("n"); printf(" le max des elements est: %fn", max); getch(); }
  • 5. programme5: (avec pointeurs)#include<stdio.h>#include<conio.h> http://coursuniversite.com/ Pour + d’exercices#include<malloc.h>main(){ /* decleretion des varaibles*/ int i,l,n,m,k,u,j; double *t0,*t1,*p,s; /* la declaration et la saisi de la premiere matrice*/ printf(" donnez le nombre de lignes de la premiere matrice: n"); scanf("%d", &u); printf(" donnez le nombre de colonnes de la premiere matrice:n"); scanf("%d", &n); /* la fonction calloc alloue un espace mémoire pour le tableau t0 */ t0=(double*)calloc(n*u,sizeof(double)); for (j=0;j<n*u;j++){ printf(" donnez un element:n"); scanf("%lf",t0+j); } /* laffichage de la premierre matrice*/ printf(" la premiere matrice est:n"); for (i=0;i<u;i++) { for (j=0;j<n;j++) printf(" %f ", *(t0+i*u+j)); printf("n"); } printf("n"); /* la declaration et la saisi de la deuxieme matrice*/ printf(" donnez le nombre de lignes de la deuxieme matrice:n"); scanf("%d", &m); printf(" donnez le nombre de colonnes de la deuxieme matrice:n"); scanf("%d", &k); if (n!=m) printf(" le produit nest pas possibe car le nombren de colonnes de la premiere" " matrice nest pasn egale au nombre de lignes de la deuxieme"); else { t1=(double*)calloc(m*k,sizeof(double)); p =(double*)calloc(k*u,sizeof(double)); for (j=0;j<k*m;j++){ printf(" donnez un element:n"); scanf("%lf", t1+j); } /* laffichage de la deuxieme matrice*/ printf(" la deuxieme matrice est:n"); for (i=0;i<m;i++){ for (j=0;j<k;j++) printf(" %f ", *(t1+i*m+j)); printf("n"); } /* calcul et affichage de la matrice produit*/ for (i=0;i<u;i++) { for (j=0;j<k;j++) { s=0; for (l=0;l<n;l++) s=s+*(t0+i*u+l)*(*(t1+l*n+j));
  • 6. Pour + d’exercices http://coursuniversite.com/programme 5: (sans pointeurs) #include<stdio.h>#include<conio.h>#include<stdlib.h>main(){ int i,s,l,n,m,k,u,j; printf(" donner le nombre de lignes de la premiere matrice: n"); scanf("%d", &u); printf(" donner le nombre de colonnes de la premiere matrice:n"); scanf("%d", &n); int tab0[u][n]; /* lecture de la premiere matrice*/ for (i=0;i<u;i++){ for (j=0;j<n;j++){ printf(" donner lelement [%d][%d]:n",i,j); scanf("%d", &tab0[i][j]); } } /* affichage de la premiere matrice*/ printf(" la premiere matrice est:n"); for (i=0;i<u;i++) { for (j=0;j<n;j++) printf(" %d ", tab0[i][j]); printf("n"); } printf("n"); /* lecture de la deuxieme matrice*/ printf(" donner le nombre de lignes de la deuxieme matrice:n"); scanf("%d", &m); printf(" donner le nombre de colonnes de la deuxieme matrice:n"); scanf("%d", &k); if (n!=m){ printf(" le produit nest pas possibe car le nombren de colonnes de la premiere matricenest pasn egale au nombre de lignes de la deuxieme"); } else { int tab1[m][k],prod[u][k]; if (n=m){ for (i=0;i<m;i++){ for (j=0;j<k;j++){ printf(" donner lelement [%d][%d] de la deuxieme matrice:n",i,j); scanf("%d", &tab1[i][j]); } } /* affichage de la deuxieme matrice*/ printf(" la deuxieme matrice est:n"); for (i=0;i<m;i++){
  • 7. programme 6: Pour + d’exercices http://coursuniversite.com/#include<stdio.h>#include<conio.h>#include<malloc.h> for (j=0;j<k;j++){main() printf(" %d ", tab1[i][j]);{ } int printf("n");} l,m,cc,n,i,j,k; double s; de la matrice produit*/ /* calcul double (i=0;i<u;i++) { for *mat,*prod,*result; /* lecture de lordre de la matrice carée */ for (j=0;j<k;j++) { printf("donnez le nombre de lignes et de colonnes de le matrice carree:n"); s=0; scanf("%d",&n); for (l=0;l<n;l++){ mat=(double*)calloc(n*n,sizeof(double)); s=s+tab0[i][l]*tab1[l][j];} prod=(double*)calloc(n*n,sizeof(double)); prod[i][j]=s;}} result=(double*)calloc(n*n,sizeof(double)); /* lecture de la matrice*/ printf("n"); for(i=0;i<n*n;i++){ la matrice produit*/ /* affichage de printf("donnezproduit des deux matrices est:n"); printf("le un elementn"); scanf("%lf",mat+i); { for (i=0;i<u;i++) } for (j=0;j<k;j++) /* affichage %d ",prod[i][j]); printf(" de la matrice */ printf(" la matrice est:n"); printf("n"); for(i=0;i<n;i++){ } for(j=0;j<n;j++) } printf("%f ",*(mat+i*n+j));getch();} printf("n");} } do{ k=2; printf(" donnez la puissance:n"); scanf("%d",&m); /* calcul de la puissance */ for(i=0;i<n;i++){ for(j=0;j<n;j++){ s=0; for(l=0;l<n;l++){ s+=*(mat+i*n+l)*(*(mat+l*n+j)); } *(prod+i*n+j)=s; } } while (k<m){ for(i=0;i<n;i++){ for(j=0;j<n;j++){ s=0; for(l=0;l<n;l++) s+=*(prod+i*n+l)*(*(mat+l*n+j)); *(result+i*n+j)=s; } } for(i=0;i<n;i++){ for(j=0;j<n;j++) *(prod+i*n+j)=*(result+i*n+j); } k++; } /* affichage de la matrice resultat */ printf("la matrice a la puissance %d est:n",m);
  • 8. Pour + d’exercices http://coursuniversite.com/programme 7:#include<stdio.h>#include<conio.h>#include<math.h> double f( double x) {/* ici vous ecrivez votre fonction */return 9*pow(x,5.5)-x*x*x-5*x*x+2*x-3;}main(){ /* a et b representent lintervalle détude et on initialise le " l "à une quelconque valeur*/ int i,j,n,a=-100,b=100,k,l=44; char c; /* plus la precision est grande moins il y a derreurs*/ printf(" choisissez la precision des calculs:n"); scanf("%d",&n);int m=pow(10,-n);for (i=a;i<=b;i++){ for (j=1;j<=pow(10,n);j++){if (f(i+(j-1)*m)<f(i+j*m)) k=1; c=+;if (f(i+(j-1)*m)==f(i+j*m)) k=0; c==;if (f(i+(j-1)*m)>f(i+j*m)) k=-1; c=-;if(l!=k) printf("(%f) %c ",i+(j-1)*m,c);l=k;}
  • 9. Pour + d’exercices http://coursuniversite.com/}printf(" (%d)",b);printf("nn+ veut dire croissanten- veut dire decroissanten= veut dire constante");getch();} programme 8:#include<stdio.h>#include<conio.h>/* la fonction premier*/ int premier(int n){ int i; for (i=2;i<=n/2;i++){ if (n%i==0) return 0;} return 1;} main() { int n,p; n=2; p=0; while (p<80){ if (premier(n)) printf("%dn",n); p++; n++; if (premier(n)==0) n++;} getch(); }
  • 10. Pour + d’exercices http://coursuniversite.com/programme 9:#include<stdio.h>#include<conio.h>#include<math.h>main(){ int n,q,r,m,i=0,j; printf("donner un nombre:n"); scanf("%d",&n); m=int(log(n)/log(2))+1; int tab[m]; for(j=0;j<2;j++) { if(n==j) printf(" le binaire coresspondant est:n%d",j);} if(n>2){ do{ q=n/2; r=n%2; n=q; tab[m-1+i]=r; i--; } while(q>=2); tab[0]=q; printf(" le binaire coresspondant est:n"); for(i=0;i<m;i++){ printf("%d",tab[i]);} } getch(); }
  • 11. Pour + d’exercices http://coursuniversite.com/programme 10:#include<stdio.h>#include<conio.h>main(){ int n,i,s; n=6; while (n<1000) { s=0; for (i=1;i<=n/2;i++) { if (n%i==0) s=s+i; } if (s==n) printf(" %dn", n); n=n+2; } getch(); }
  • 12. Pour + d’exercices http://coursuniversite.com/ programme 11:#include<stdio.h>#include<conio.h>#include<string>main(){ int i,j,n; printf("donner la puissance (max 9):n"); scanf("%d",&n); int pas[n+1][n+1]; for(i=0;i<n+1;i++){ pas[i][0]=1; pas[i][i]=1;} for(i=2;i<n+1;i++){ for(j=1;j<i;j++){ pas[i][j]=pas[i-1][j-1]+pas[i-1][j];}} for(i=0;i<n+1;i++){ printf("n=%d ",i); for(j=0;j<n+1;j++){ printf(" %d",pas[i][j]);}printf("n");} getch(); }
  • 13. Pour + d’exercices http://coursuniversite.com/programme 12:#include<stdio.h>#include<conio.h>#include<math.h>/* ici vous entrez votre fonction*/float f(float x){ return exp(x)-x*x+3*x-2; }main(){int k;float p,a,b;/* vous entrez lintervalle de recherche*/printf("donnez lintervalle de recherche:n");scanf("%f %f",&a,&b);/* vous faites entrez la precision*/printf("choisissez la precision <de 1 a 10>:n");scanf("%d",&k);p=(a+b)/2.;if (f(a)==0) printf("la valeur approchée de la solution est %f",f(a));if (f(b)==0) printf("la valeur approchée de la solution est %f",f(b));if (f(a)*f(b)<0){ while (fabs(a-b)>pow(10,-k)){ /* fabs cest a fonction valeur absolue qui se trouve dansla bibliotheque "maths.h"*/ if(f(p)==0) printf("nla valeur approchée de la solution est %f",p); if(f(a)*f(p)<0) b=p; if(f(p)*f(b)<0) a=p; p=(a+b)/2.; } printf("nla valeur approche de la solution est compris entre %f et %f",b,a); } else printf("n choisissez un autre intervalle"); getch(); }
  • 14. Pour + d’exercices http://coursuniversite.com/ programme 13:#include<stdio.h>#include<conio.h>#include<string>/* la fonction "echange" echange la valeur de deux variables*/void echange(int *x,int *y){ /* elle utilise la notion de pointeur*/ int c; c=*x; *x=*y; *y=c;}main(){ int i,j,n,l=0; /* un tableau unidimentienel*/ printf("donnez la taille du tableau:n"); scanf("%d",&n); int t[n]; /* initialisation du tableau */ for(i=0;i<n;i++){ printf(" donnez lelement [%d]:n",i+1); scanf("%d",&t[i]); } printf("nle tableau initial est:n"); for(i=0;i<n;i++){programme 14: printf("%d ",t[i]);#include<stdio.h>}#include<conio.h>on fait le trie*/ /* ici for(i=l;i<n;i++){#include<string> for(j=l;j<n && t[i]<=t[j];j++);main(){ if(j==n){ echange(&t[i],&t[l]); int i,j,l,h,trouve; l++; char txt[1000], mot[30], em[30]; i=l-1; printf("entrez le text:n"); gets(txt); } } l=strlen(txt); printf("nn"); printf("entrez le mot a eliminer:n"); gets(mot); printf("le tableau triee est:n"); for(i=0;i<n;i++){ h=strlen(mot); printf("%d ",t[i]); for(i=0;i<l;i++){ } j=0; getch(); while(mot[j]==txt[i] && j<h){ } j++; i++; trouve=1; } if((j==h) && (trouve==1)){ for(j=0;j<l;j++){ txt[i+j-h]=txt[i+j]; } } } puts(txt); getch(); }
  • 15. Pour + d’exercices http://coursuniversite.com/
  • 16. programme 15:attention vous devez dabord creer un fichier texte dans le disque C que jai nommer ici"magasin.txt" et vous allez Pour + d’exercices http://coursuniversite.com/ le remplir avec les nom des produits ,un nom par ligne ! comme: laitsucrefarinehuilepainbonbonsardine #include <stdio.h>#include <conio.h>main(){ int lecture;/* pour lire le fichier*/ int compteur=0,i=0,ok=1,j=0,indice,client=1,k=0; // jai mis des prix au hasard double prix[10]={20,15.5,99.99,45.5,14.2,115,2.75,88,35.12,10.94},total=0; // une structure est une bonne methode dorganisation struct produit { int numero[20]; int quantite[20]; int nb_produit; double recette; }vente[100]; // un modele de structure de type produit int nb_produit=0; FILE* fichier; // fichier est un pointeur vers un fichier text que vous devez creer while(client==1){ printf("vente numero: %dn",i+1); while(ok==1){ /*le client passe a la caisse */ printf("entrez le numero du produitn"); scanf("%d",&vente[i].numero[j]); printf("entez la quantite acheten"); scanf("%d",&vente[i].quantite[j]); total+=prix[vente[i].numero[j]]*vente[i].quantite[j]; printf("pour ajouter un autre produit taper 1 sinon tapez 0n"); scanf("%d",&ok); j++; nb_produit++; }vente[i].recette=total; printf("le total a payer est %f",total); // y a-t-il de nouveaux clients ?printf("nvoulez vous entrer un nouveau client? si oui tapez 1 sinon tapez 0n");scanf("%d",&client);i++; // on initialise toutok=1;total=0;j=0;}do{printf("nvoulez vous afficher une liste de vente?n si oui tapez le numero de la vente sinon tapez 0n");scanf("%d",&indice);printf("la recette est: %fn et il a acheter ces produits:n",vente[indice-1].recette) ; fichier= fopen("C:magasin.txt","r"); /* le fichier texte que vous devez creer sur le