Probleme dico en C
hellojcr
-
hellojcr -
hellojcr -
Bonjour,
j'ai fais un petit programme qui doit trier 3 mots que je rentre à la main
mon soucis et que lorsque j'exécute avec cygwin il trie les mots mais lors de l'affichage le dernier mot est remplacé par un smiley...???
voilà le programme, je ne comprends pas mon erreur.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main ()
{
/*ca ne marche pas, je ne comprends pas pourquoi mais je vous l'envoie quand même..*/
int i,ord, yapermut;
char t[3][20];
char ordre[3][20];
char temp[1][20];
/*je rentre les lettres dans le tableau*/
for (i=0 ; i<3; i++) {
printf("entrez un mot: ");
scanf("%s", t[i]);
}
yapermut = 1;
while (yapermut ==1) {
for (i=0;i<2;i++) {
ord = strcmp(t[i],t[i+1]);
if (ord<0) {
strcpy(ordre[i], t[i]);
yapermut = 0;
}
else if (ord>0) {
strcpy(ordre[i], t[i+1]);
strcpy(temp[1], t[i+1]);
strcpy(t[i+1], t[i]);
strcpy(t[i], temp[1]);
yapermut =1;
}
else if (ord == 0 && strlen (t[i]) < strlen (t[i+1])) {
strcpy (ordre [i] , t[i]);
yapermut = 0;
}
else {
strcpy(ordre [i], t[i+1]);
yapermut = 1;
}
}
}
for (i=0;i<3;i++) {
printf("%s\n", ordre[i]);
}
return 0;
}
j'ai fais un petit programme qui doit trier 3 mots que je rentre à la main
mon soucis et que lorsque j'exécute avec cygwin il trie les mots mais lors de l'affichage le dernier mot est remplacé par un smiley...???
voilà le programme, je ne comprends pas mon erreur.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main ()
{
/*ca ne marche pas, je ne comprends pas pourquoi mais je vous l'envoie quand même..*/
int i,ord, yapermut;
char t[3][20];
char ordre[3][20];
char temp[1][20];
/*je rentre les lettres dans le tableau*/
for (i=0 ; i<3; i++) {
printf("entrez un mot: ");
scanf("%s", t[i]);
}
yapermut = 1;
while (yapermut ==1) {
for (i=0;i<2;i++) {
ord = strcmp(t[i],t[i+1]);
if (ord<0) {
strcpy(ordre[i], t[i]);
yapermut = 0;
}
else if (ord>0) {
strcpy(ordre[i], t[i+1]);
strcpy(temp[1], t[i+1]);
strcpy(t[i+1], t[i]);
strcpy(t[i], temp[1]);
yapermut =1;
}
else if (ord == 0 && strlen (t[i]) < strlen (t[i+1])) {
strcpy (ordre [i] , t[i]);
yapermut = 0;
}
else {
strcpy(ordre [i], t[i+1]);
yapermut = 1;
}
}
}
for (i=0;i<3;i++) {
printf("%s\n", ordre[i]);
}
return 0;
}
A voir également:
- Probleme dico en C
- Dico google traduction - Télécharger - Traduction
- Media dico - Télécharger - Dictionnaires & Langues
- Dico aero - Télécharger - Dictionnaires & Langues
- Dico medical - Télécharger - Dictionnaires & Langues
- 38 dico - Télécharger - Dictionnaires & Langues