Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #define MAXLINIE 1000 /* dimensiunea maxima a liniei
- de intrare */
- int preialinie(char linie[ ], int maxlinie);
- void copiaza(char in[ ], char din[ ]);
- /* tipareste cea mai lunga linie de intrare */
- int main()
- {
- int lung; /* lungimea liniei curente */
- int max; /* lungimea maxima intalnita pana acum*/
- char linie[MAXLINIE
- ]; /* linia de intrare curenta */
- char cea_mai_lunga[MAXLINIE
- ]; /* pentru salvarea
- liniei celei mai lungi */
- max = 0;
- while ((lung = preialinie(linie, MAXLINIE)) > 0)
- if (lung > max) {
- max = lung;
- copiaza(cea_mai_lunga, linie);
- }
- if (max > 0) /* s-a gasit o linie */
- printf(“%s”, cea_mai_lunga);
- return 0;
- }
- /* preialinie: citeste o linie, o stocheaza in “s” si
- returneaza lungimea ei */
- int preialinie(char s[ ], int lim)
- {
- int c, i;
- for (i= 0;i < lim-1 && (c=getchar())!=EOF && c!=‘\n’;++i)
- s[ i ] = c;
- if (c == ‘\n’) {
- s[ i ] = c;
- ++i;
- }
- s[ i ] = ‘\0’;
- return i;
- }
- /* copiaza: copiaza “din” in “in”; presupunem
- ca “in”
- este suficient de mare */
- void copiaza(char in[ ], char din[ ])
- {
- int i;
- i=0;
- while (( in[ i ] = din[ i ] ) != ‘\0’)
- ++i;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement