👤

Cerinţa
Să se scrie un program care citește o propoziţie şi afişează cuvintele din propoziţie ordonate alfabetic.

Date de intrare
Fișierul de intrare sortcuv.in conține pe prima linie o propoziție alcătuită din litere mici ale alfabetului englez și spații.

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

Restricţii şi precizări
propoziția va conține cel mult 250 de caractere;
fiecare cuvânt din propoziție are cel mult 20 litere

Exemplu
sortcuv.in

dreptunghiul este un paralelogram cu un unghi drept
sortcuv.out

cu
drept
dreptunghiul
este
paralelogram
un
un
unghi


Răspuns :

#include <iostream>

#include <fstream>

#include <string.h>

using namespace std;

int main()

{

ifstream fin("sortcuv.in");

ofstream fout("sortcuv.out");

char text[251], *p, *v[15];

int n=0, i, j;

fin.get(text,251);

p=strtok(text," ");

while(p!=NULL){

 n++;

 v[n]=p;

 p=strtok(NULL," ");

}

for(i=1;i<n;i++)

 for(j=i+1;j<=n;j++)

  if(strcmp(v[i],v[j])>0){

   p=v[i];

   v[i]=v[j];

   v[j]=p;

  }

for(i=1;i<=n;i++)

 fout<<v[i]<<'\n';

return 0;

}