Accueil > Forum > > > > Help.... probleme avec un programme de tri de char
Help.... probleme avec un programme de tri de char
mercredi 27 juillet 2005 à 14:56:44 |
Help.... probleme avec un programme de tri de char

ratp
|
Es ce que vous pouvez m'aider.
j'ai réaliser un programme qui normalement doit permettre de trier les caracteres. mais sa ne marche pas.
merci de m'aider
clude <stdio.h>
#include <string.h>
void echanger(char *tableau[], int i,int j)
{
char *tempo;
tempo=tableau[i];
tableau[i]=tableau[j];
tableau[j]=tableau[i];
}
void tri_chaine(char *tableau[],int longueur)
{
int i,j;
for(j=0;j<longueur;j++)
{
for(i=0;i<longueur;i++)
{
if(strcmp(tableau[i],tableau[j])<0);
}
}
}
void main(void)
{
char *tableau[50];
printf("Veuillez saisir une chaine\n");
gets(tableau);
tri_chaine(tableau,50);
for(i=0;i<50;i++)
{
printf("%c",tableau[i]);
}
} RATP
|
|
mercredi 27 juillet 2005 à 15:10:20 |
Re : Help.... probleme avec un programme de tri de char

buno
|
c'est un tableau de chaines de caractères (char * tableau[50])
ou une seule chaine de caractère (char tableau[50])
que tu veux faire?
Dans le deuxième cas, tu as juste à enlever toutes les étoiles, plus quelques aménagements peut-être
Buno ---------------------------------------- L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
mercredi 27 juillet 2005 à 15:14:08 |
Re : Help.... probleme avec un programme de tri de char

buno
|
Regarde la fonction qsort sur MSDNBuno ---------------------------------------- L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
mercredi 27 juillet 2005 à 15:14:50 |
Re : Help.... probleme avec un programme de tri de char

ratp
|
C'est un tableau de chaines de caractères (char * tableau[50])
merci d'avance de ton aide
RATP
|
|
mercredi 27 juillet 2005 à 15:25:59 |
Re : Help.... probleme avec un programme de tri de char

buno
|
Voici un code pout trier une caractère dans l'ordre croissant:
#include <stdio.h>
#include <iostream>
// Fonction de comparaison de 2 éléments de base (ici char)
int compare(const void *arg1, const void *arg2)
{
return ((char)arg1<(char)arg2);
}
void main(void)
{
char tab[10] = "hello";
std::cout << "Avant: "<< tab << std::endl;
qsort(tab,5,sizeof(char),compare);
std::cout << "Après: "<< tab << std::endl;
getchar();
}
Buno ---------------------------------------- L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
mercredi 27 juillet 2005 à 15:27:08 |
Re : Help.... probleme avec un programme de tri de char

ratp
|
j'ai pas compris pourquoi tu m'oriente sur la fonction qsort ?
#include <stdio.h>
#include <string.h>
void echanger(char *tableau[], int i,int j)
{
char *tempo;
tempo=tableau[i];
tableau[i]=tableau[j];
tableau[j]=tableau[i];
}
void tri_chaine(char *tableau[],int longueur)
{
int i,j;
for(j=0;j<longueur;j++)
{
for(i=0;i<longueur;i++)
{
if(strcmp(tableau[i],tableau[j])<0);
}
}
}
void main(void)
{
char *tableau[50];
int i;
printf("Veuillez saisir une chaine\n");
gets(tableau);
tri_chaine(tableau,50);
for(i=0;i<50;i++)
{
printf("%s",tableau[i]);
}
}
RATP
|
|
mercredi 27 juillet 2005 à 15:29:29 |
Re : Help.... probleme avec un programme de tri de char

ratp
|
Merci pour ce code mais je ne veut pas le faire en C++, mais en C ANSI,
je suis debutant et je voudrais passer par les fonctions C
RATP
|
|
mercredi 27 juillet 2005 à 15:38:43 |
Re : Help.... probleme avec un programme de tri de char

buno
|
Réponse acceptée !
Mise à part les lignes std::cout ..., c'est du C mon code...
Mais bon... j'ai corrigé ton code:
void echanger(char *tableau, int i,int j)
{
char tempo;
tempo=tableau[i];
tableau[i]=tableau[j];
tableau[j]=tempo; // et non pas tableau[i]
}
void tri_chaine(char *tableau,int longueur)
{
int i,j;
for(j=0;j<longueur;j++)
for(i=0;i<longueur;i++)
{
if(tableau[i]<tableau[j]) // et non pas un if qui ne fait rien
echanger(tableau,i,j);
}
}
void main(void)
{
char tableau[50]; // une seule chaine de caractères
int i;
printf("Veuillez saisir une chaine\n");
gets(tableau);
tri_chaine(tableau,strlen(tableau)); // taille = nb carac et non pas 50
for(i=0;i<strlen();i++)
printf("%c",tableau[i]);
getchar(); // juste pour voir le résultat
}
Buno ---------------------------------------- L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
mercredi 27 juillet 2005 à 15:40:03 |
Re : Help.... probleme avec un programme de tri de char

vladisback
|
moi deja jvoi une erreur ici:
void echanger(char *tableau[], int i,int j)
{
char *tempo;
tempo=tableau[i];
tableau[i]=tableau[j];
tableau[j]=tableau[i];
}
je pense que ça devrait etre plutot ça:
void echanger(char *tableau, int i,int j)
{
char tempo;
tempo=tableau[i];
tableau[i]=tableau[j];
tableau[j]=tempo;
}
voila, je ne suis meme pas aller plus loin donc si il y a encore des probleme je regarderai.
|
|
mercredi 27 juillet 2005 à 15:46:56 |
Re : Help.... probleme avec un programme de tri de char

vladisback
|
oups, deja repondu le temps kje mette ma reponse
|
|
Cette discussion est classée dans : int, tableau, tri, void, char
Répondre à ce message
Sujets en rapport avec ce message
tableau char [ par dingue007 ]
Voila je dois faire un prog en C++ : un tableau avec les mois de lannée et quand je tape un chiffre il me sort le mois ! mais je narrive pas a faire l
Gestion d'entrées/sorties sur fichier [ par macrow ]
Bonjour, Voici mon source : #include #include #include #include #include //********************************************
class.... [ par Tautau ]
voila j'ai un petit prob lors de ma compilation et j'ai un test dessus lundi :#include "conio.h"#include "iostream.h"class C_Tableau{ private:
Tableau et char to int [ par Niníel ]
Bonjour!J'ai un tableau: chTabStart[64] dans lequel je rentre un nombre dans le format suivant: d_25 pour un nombre décimale par exemple. Donc dans mo
Tableau à 3 dimensions [ par VinceExtense ]
Savez vous comment faire passer en paramètre un tableau à 3 dimensions ?void fonction1(int x,iny y,int z){int tab[x][y][z];}void fonction2(int ***tab,
lister un tableau de string [ par minet03 ]
Soyons bref, je suis en train de bosser sur un code qui liste les srting d'un tableau, seul problème c'est qu'il y a des problèmes !Voici mon code :vo
Saisie chaines caractère en boucle en C [ par oim09 ]
Voila alors j'ai rencontré un problème que je n'avai jamais rencontrer. Je veu faire une fonction qui rempli un tablaeu avec des chaines de caractères
Probleme de tableau [ par manta7 ]
Bonjour, j'ai un petit problème avec la compilationde ce code : int *t; t = malloc(B * sizeof (int)); Je suis sous Microsoft Visual C++ 6 mais je pr
Corection [ par Hellboy67 ]
donc voila cette source est censé trier le tableau par ordre croissant mais il ne fait absolument rien je pense m'etre trompé mais ou ?#include using
Convertir une valeur d'un tableau de char en int [ par impskil ]
Bonjour.J'ai un tableau de char: char line[3000];Je veux reccuperer une valeur à l'interrieur du tableau et enssuite la convertir au format int ou dou
Livres en rapport
|
Derniers Blogs
[SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|