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 l'argument*/
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 l'affichage */
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; /* l'operateur % represente le reste de la division entiere; r c'est le reste de la
division 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*/
double 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=(double*)calloc(n*m,sizeof(double));
for (i=0;i<n*m;i++){
printf(" donnez un element :n");
scanf("%lf", tab+i);
}
/* l'affichage 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);
}
/* l'affichage 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);
}
/* l'affichage 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 n'est pas possibe car le nombren de colonnes de la premiere"
" matrice n'est 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);
}
/* l'affichage 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 l'element [%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 n'est pas possibe car le nombren de colonnes de la premiere matrice
n'est 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 l'element [%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 l'ordre 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 l'intervalle 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 d'erreurs*/
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 l'intervalle de recherche*/
printf("donnez l'intervalle 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 c'est a fonction valeur absolue qui se trouve dans
la 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 l'element [%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();
}
16. programme 15:
attention vous devez d'abord creer un fichier texte dans le disque C que j'ai 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:
lait
sucre
farine
huile
pain
bonbon
sardine
#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;
// j'ai 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 d'organisation
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 tout
ok=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 0
n");
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