Informatică, întrebare adresată de geocaruoxxbvq, 9 ani în urmă

Cerinţa
Să se scrie un program care citește o listă de cuvinte şi le afişează în ordine alfabetică.

Date de intrare
Fișierul de intrare sortarecuvinte1.in conține mai multe cuvinte, câte unul pe o linie.

Date de ieşire
Fișierul de ieșire sortarecuvinte1.out va conține cuvintele date, ordonate alfabetic, fiecare pe câte o linie.

Restricţii şi precizări
în listă sunt cel mult 200 de cuvinte, fiecare având cel mult 30 litere



Exemplu
sortarecuvinte1.in

Dana
Are
Bomboane
sortarecuvinte1.out

Are
Bomboane
Dana
Primesc doar 60p si nu inteleg de ce....

Anexe:

Răspunsuri la întrebare

Răspuns de boiustef
8

Răspuns:

Explicație:

#include <iostream>

#include <cstring>

#include <fstream>

using namespace std;

ifstream f("sortarecuvinte1.in");

ofstream g("sortarecuvinte1.out");

char cuvinte[201][31], temp[31];

short n, i, j, gasit=1, k;

int main()

{

   while (f >> temp)

   {

       strcpy(cuvinte[k],temp);

       ++k;

   }

    while(gasit==1)

   {

       gasit=0;

       for(i=0;i < k-1; i++)

           if(strcmp(cuvinte[i],cuvinte[i+1]) > 0)

           {

               strcpy(temp, cuvinte[i]);

               strcpy(cuvinte[i],cuvinte[i+1]);

               strcpy(cuvinte[i+1],temp);

               gasit=1;

           }

   }

     for (i=0; i<k; ++i)

        g << cuvinte[i] << "\n";

}

Alte întrebări interesante