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

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ăspunsuri la întrebare

Răspuns de Voli04
4
#include <bits/stdc++.h> using namespace std; char s[1000],sep[]=" ,.:;?!", *p, c[50]; string v[150], aux; bool ok; int k, n, i; int main() { ifstream f("sortcuv.in"); ofstream g("sortcuv.out"); f.getline(s, sizeof(s)); p=strtok(s,sep); while(p!=NULL) { strcpy(c,p); v[++k]=c; p=strtok(NULL,sep); } do { ok=true; for(i=1;i<k;i++) if(v[i] > v[i+1]) { aux = v[i]; v[i] = v[i+1]; v[i+1] = aux; ok=false; } }while( !ok); for(i=1;i<=k;i++) g<< v[i]<<'\n'; return 0; }
Alte întrebări interesante