Chaine de caractere

Bonjour, j' ai écris un programme qui consistait à:
Entrer deux chaines de caracteres ,le programme affichera la chaine qui est la plus grande dans ordre lexicographie.J'ai un probleme sur les conditions d arret je ne sait quoi ecrire en fait je ne sait pas quel condition prendre aidez moi s'il vous plait
si possible j'ai besoin des codes sources de chacun , peut-etre sa pourrait me donner une idee pour voir si un probleme de programmation peut etre resolu de plusieurs maniere.merci

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    Salut,

    Bah tu devrais commencer par nous donner ta solution ;-)

    Parce que ça à l'air simple :

    input a
    input b
    if a > b
    print a
    else print b


            Un étranger, c'est un ami qu'on n'a pas encore rencontré.
    1. en c une chaîne de caractères se finit par le symbole '\o' (la lettre o), donc pour définir la taille de ta chaîne, tu dois faire une boucle un peu comme ca :

      while(caractereLu != '\o') {
        tailleDeLaChaine++;
        lireCrarctereSuivant(); // a toi d'adapter cette fonction si tu ne fais pas comme ca
        }
      
      1. Modérateur
        la chaine qui est la plus grande dans ordre lexicographie

        Pour moi cela ne fait pas référence à la longueur de la chaine ?
      2. Contributeur
        en c une chaîne de caractères se finit par le symbole '\o' (la lettre o)
        Non. Cela se finit par '\0' (chiffre 0) !
    2. Contributeur
      Bonjour,

      Par "plus grand par ordre lexicographique", j'imagine que tu veux dire, celui qui est situé après dans le dictionnaire ?

      Si oui, tu as la fonction strcmp(). Peux-tu l'utiliser ? Sinon, il suffit de comparer chacune des lettres des mots, et dès qu'un a une lettre située après, il est situé après dans le dictionnaire.

      Je te laisse coder la solution. N'hésite pas à poster ce que tu as compris si tu souhaites qu'on te corrige.

      Cdlt,