1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
|
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#define TAILLE_MAX 100
int main()
{
//=========On initialise deux tableaux de mois en francais et en anglais============
char MFRAN[12][20]={"Janvier","Fevrier","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Decembre"};
char MENG[12][20]={"Junuary","February","March","April","May","June","July","August","September","October","November","December"};
printf("Choisissez une langue\n1-Francais\n2-Anglais\n");
int langue=2; /* C'est ici que j'ai le problème, si je demande à l'utilisateur de choisir la langue avec scanf()
ça fonctionne pas, pour l'instant si on veut le francais on initialise langue par 1 si on veut anglais on l'initialise
par 2*/
if(langue == 1){
char date[TAILLE_MAX]={0};
printf("Entrez une date comme l'exemple suivant : 09 04 1996\n");
scanf("%[^\n]",date); //J'utilise le [^\n] pour pouvoir stocker l'éspace
char mois[2],Mois=0;
int moisInt=0,MoisInt=0,test=0;
//=====J'effectue un teste si le mois s'écrit 02 par exemple ou bien 11========
if (date[3]!='0')
{
mois[0]=date[3];
mois[1]=date[4];
moisInt = atoi(mois);
test=1;
}
else if (date[3]=='0')
{
Mois=date[4];
MoisInt=atoi(&Mois);
test=2;
}
if (test==1)
printf("Le %c%c %s %c%c%c%c:\n",date[0],date[1],MFRAN[moisInt-1],date[6],date[7],date[8],date[9]);
if (test==2)
printf("Le %c %s %c%c%c%c:\n",date[1],MFRAN[MoisInt-1],date[6],date[7],date[8],date[9]);
}
if (langue == 2){
char date[TAILLE_MAX]={0};
printf("Enter a date, for example: 09 04 1996\n");
scanf("%[^\n]",date);
char mois[2],Mois=0;
int moisInt=0,MoisInt=0;
int test1=0,test2=0,test3=0;
//=====J'effectue un teste si le mois s'écrit 02 par exemple ou bien 11========
if (date[3]!='0')
{
mois[0]=date[3];
mois[1]=date[4];
moisInt = atoi(mois);
test1=1;
}
else if (date[3]=='0')
{
Mois=date[4];
MoisInt=atoi(&Mois);
test1=2;
}
//=======Je teste si le jour est entre 1 et 4 pour savoir si je dois écrire 'st' ou bient 'nd' ou bien 'rd' ou bien 'th'=========
if(date[1]=='1')
test3=1;
else if (date[1]=='2')
test3=2;
else if (date[1]=='3')
test3=3;
else if(date[1]=='4')
test3=4;
if (date[0]=='0')
test2=2;
else if(date[0]!='0')
test2=1;
if (test1==1)
{
if (test2==1) /*Ce test a pour but de voir si on a le jour écrit par exemple 01 ou bien 11 pour que si c'est écrit
on enlève le 0*/
printf(" %s %c%cth %c%c%c%c:\n",MENG[moisInt-1],date[0],date[1],date[6],date[7],date[8],date[9]);
else if(test2==2)
printf(" %s %c %c%c%c%c:\n",MENG[moisInt-1],date[1],date[6],date[7],date[8],date[9]);
}
if (test1==2){
if(test2==1)
printf(" %s %c%cth %c%c%c%c:\n",MENG[MoisInt-1],date[0],date[1],date[6],date[7],date[8],date[9]);
//======Le switch pour voir ce qu'on va écrire à côté du jour ('st' ou'nd ou'rd' ou 'th')=======
else if(test2==2)
{
switch(test3){
case 1:printf(" %s %cst %c%c%c%c:\n",MENG[MoisInt-1],date[1],date[6],date[7],date[8],date[9]);break;
case 2:printf(" %s %cnd %c%c%c%c:\n",MENG[MoisInt-1],date[1],date[6],date[7],date[8],date[9]);break;
case 3:printf(" %s %crd %c%c%c%c:\n",MENG[MoisInt-1],date[1],date[6],date[7],date[8],date[9]);break;
}
}
}
}
return 0;
} |
Partager