• Partagez
  • E-mail
  • Intégrer
  • J'aime
  • Télécharger
  • Contenu privé
Corrigés exercices langage C
 

Corrigés exercices langage C

on

  • 51,411 vues

Corrigés exercices langage C

Corrigés exercices langage C

Statistiques

Vues

Total des vues
51,411
Vues sur SlideShare
51,410
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

15 sur 5 précédent suivant Publier un commentaire

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    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
    Are you sure you want to
    Votre message apparaîtra ici
    Processing...
  • superbe
    Are you sure you want to
    Votre message apparaîtra ici
    Processing...
  • superbe
    Are you sure you want to
    Votre message apparaîtra ici
    Processing...
  • please
    Are you sure you want to
    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
    Are you sure you want to
    Votre message apparaîtra ici
    Processing...
Poster un commentaire
Modifier votre commentaire

    Corrigés exercices langage C Corrigés exercices langage C Document Transcript

    • 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(); }
    • 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(); }
    • 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(); }}
    • 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(); }
    • 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));
    • 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++){
    • 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);
    • 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;}
    • 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(); }
    • 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(); }
    • 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(); }
    • 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(); }
    • 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(); }
    • 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(); }
    • Pour + d’exercices http://coursuniversite.com/
    • 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