This commit is contained in:
unknown
2022-01-14 06:54:18 +01:00
commit d9949b5cb0
288 changed files with 6425 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
#include<stdio.h>
int main(int argc, char *argv[]){
FILE* fluxLecture;
fluxLecture=fopen(argv[1],"r");
if(fluxLecture){
int buffer=0;
while(!feof(fluxLecture)){
fread(&buffer,sizeof(char),1,fluxLecture);
printf(".%x", buffer);
}
printf("\n");
fclose(fluxLecture);
}
return 0;
}

View File

@@ -0,0 +1,53 @@
#include <stdio.h>
#include <stdlib.h>
int verifRetourLigne(char chaine[], int tailleChaine);
int main(int argc, char * argv[]){
if(argc!=2){
printf("erreur parametre\n");
}
FILE* fluxLecture;
fluxLecture=fopen(argv[1],"r");
if(fluxLecture){
char buffer[256];
int flag=1, compteur=0;
while(flag){
if(fgets(buffer,256,fluxLecture)){ //On recupere tout les caractere jusqua 256 mais on sarrette avant si on rencontre la fin du fichier ou un '\n' MAIS LE 'N' SERA INCLU
printf("\n%s",buffer );
printf("\n \033[0;31m%3d . \033[0m",compteur);
fputs(buffer,stdout); // on affiche grace a fputs tout ce qu'il ya jusqua un caratere de fin de chaine
flag=verifRetourLigne(buffer,256); //on regarde si un caractere d'echappement a été recuperer
compteur++;
}else flag=0;
}
fclose(fluxLecture);
}
return EXIT_SUCCESS;
}
int verifRetourLigne(char chaine[], int tailleChaine){
int compteur=0;
for(compteur=0;compteur!=tailleChaine && chaine[compteur]!='\0';compteur++){}
if(tailleChaine==compteur){
compteur=0;
}else compteur=1;
return compteur;
}

69
APL1.2/fichier/Tableur.c Normal file
View File

@@ -0,0 +1,69 @@
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(void){
FILE* fluxEcriture;
fluxEcriture=fopen("t1.csv","w");
int t1[2][5],t2[3][5],t3[5][5],compteurTableau,compteur,valeurTableau=0,compteurHorizontal=0;
if(fluxEcriture){
for(compteurTableau=0;compteurTableau<2;compteurTableau++){
for(compteur=1;compteur<=5;compteur++){
fprintf(fluxEcriture,"%d,",compteur);
}
fprintf(fluxEcriture,"\n");
}
fclose(fluxEcriture);
}
if(fluxEcriture=fopen("t2.csv","w")){
for(compteurTableau=0;compteurTableau<3;compteurTableau++){
for(compteur=1;compteur<=5;compteur++){
fprintf(fluxEcriture,"%d,",compteur);
}
fprintf(fluxEcriture,"\n");
}
fclose(fluxEcriture);
}
if(fluxEcriture=fopen("t3.csv","w")){
for(compteurTableau=0;compteurTableau<5;compteurTableau++){
for(compteur=1;compteur<=5;compteur++){
if(compteur>compteurTableau){
fprintf(fluxEcriture,"0,");
} else fprintf(fluxEcriture,"%d,",compteur);
}
fprintf(fluxEcriture,"\n");
}
fclose(fluxEcriture);
}
return EXIT_SUCCESS;
}

39
APL1.2/fichier/ab Normal file
View File

@@ -0,0 +1,39 @@
#include<stdio.h>
#include<stdlib.h>
int main(void){
int t1[2][5],t2[3][5],t3[5][5],compteurTableau,compteur,valeurTableau=0,compteurHorizontal=0;
for(compteurTableau=0;compteurTableau<2;compteurTableau++){
for(compteur=0;compteur<5;compteur++){
t1[compteurTableau][compteur]=compteur+1;
}
}
printf("\n");
for(compteurTableau=0;compteurTableau<3;compteurTableau++){
for(compteur=0;compteur<5;compteur++){
t2[compteurTableau][compteur]=++valeurTableau;
}
}
for(compteurTableau=0;compteurTableau<5;compteurTableau++){
for(compteur=1;compteur<=5;compteur++){
if(compteur>compteurTableau){
t3[compteurTableau][compteur]=0;
} else
t3[compteurTableau][compteur]=compteur;
}
}

View File

@@ -0,0 +1,6 @@
Bonjour
ceci
est
un
test

57
APL1.2/fichier/pile.c Normal file
View File

@@ -0,0 +1,57 @@
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct mail{
char valeur;
struct mail* suivant;
}maillon;
typedef maillon* pile;
void push(pile *p, char valeur){
maillon* nouveauMaillon=(maillon*) malloc(sizeof(maillon)); /*Creation du nouveau maillon*/
nouveauMaillon->valeur=valeur;/*On affecte la valeur au nouveau maillon*/
nouveauMaillon->suivant=*p;/*p etant un pointeur sur une pile etant elle meme un pointeur sur le premier element de la pile, le nouveau maillon pointe donc sur celui pointé par p*/
*p=nouveauMaillon;/*p doit pointer sur le nouveau dernier maillon*/
}
char pop(pile *p){
maillon sauvegardeDernierMaillon=**p;/*On fait une copie du dernier maillon de la pile actuel*/
free(*p);/*On supprime le dernier maillon de la pile */
*p=sauvegardeDernierMaillon.suivant;/*Le pointeur de la pile doit maintenant pointer sur l'ex avant dernier maillon car ce dernier devient le nouveau dernier maillon*/
return sauvegardeDernierMaillon.valeur;/*On retourne la valeur de l'ex dernier maillon qui a été supprimé*/
}
int empty(pile *p){
if(*p==NULL){/*Si le pointeur de debut de pile pointe sur NULL, la pile est vide*/
return 0;
}else return 1;
}
int main(void){
pile p=NULL;/*IL FAUT INITIALISER LE POINTEUR DE PILE A NULL*/
char ordre[3]=" \0";
printf("La pile attends vos ordres ");
while(ordre[0]!='q'){
printf("\n> ");
scanf("%s",ordre);
switch(ordre[0]){
case '+':
push(&p,ordre[1]);
printf("Le caractere %c a été ajouté",ordre[1]);
break;
case '-':
if(empty(&p)){
printf("Le caractere %c a été supprimé",pop(&p));
}else printf("La pile est vide !\n");
break;
}
}
printf("Aurevoir\n");
return EXIT_SUCCESS;
}

2
APL1.2/fichier/t1.csv Normal file
View File

@@ -0,0 +1,2 @@
1,2,3,4,5,
1,2,3,4,5,
1 1 2 3 4 5
2 1 2 3 4 5

3
APL1.2/fichier/t2.csv Normal file
View File

@@ -0,0 +1,3 @@
1,2,3,4,5,
1,2,3,4,5,
1,2,3,4,5,
1 1 2 3 4 5
2 1 2 3 4 5
3 1 2 3 4 5

5
APL1.2/fichier/t3.csv Normal file
View File

@@ -0,0 +1,5 @@
0,0,0,0,0,
1,0,0,0,0,
1,2,0,0,0,
1,2,3,0,0,
1,2,3,4,0,
1 0 0 0 0 0
2 1 0 0 0 0
3 1 2 0 0 0
4 1 2 3 0 0
5 1 2 3 4 0