Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Írjon függvényt, amely paraméterként megkapja egy sztringeket tartalmazó kétdimenziós tömb kezdőcímét, valamint sorainak és oszlopainak számát! A függvény járja be sorfolytonosan a kétdimenziós tömböt, határozza meg a tömb leghosszabb sztringjét, készítsen róla másolatot, és az eredeti tömb módosítása nélkül adja vissza e másolat kezdőcímét! Ha a tömbben több olyan sztring is található, amelynek a hossza megegyezik a leghosszabbéval, akkor a bejárás sorrendjében legelsőről készítsen másolatot a függvény!
- */
- #include <stdio.h>
- #include <stdlib.h>
- #include "myheader.h"
- #define N 3
- #define M 4
- int main()
- {
- char *t[ N ][ M ] =
- { { "alma", "dio", "korte", "szilva" },
- { "eper", "cseresznye", "banan", "narancs" },
- { "mandarin", "szolo", "ribizli", "malna" } };
- int i, j;
- char *p;
- printf( "%d %d\n\n", N, M );
- for ( i = 0; i < N; ++i )
- {
- for ( j = 0; j < M; ++j )
- {
- if ( j > 0 )
- putchar( ' ' );
- printf( "*%s*", t[ i ][ j ] );
- }
- putchar( '\n' );
- }
- putchar( '\n' );
- p = longcopy( &t[0][0], N, M );
- for ( i = 0; i < N; ++i )
- {
- for ( j = 0; j < M; ++j )
- {
- if ( j > 0 )
- putchar( ' ' );
- printf( "*%s*", t[ i ][ j ] );
- }
- putchar( '\n' );
- }
- putchar( '\n' );
- printf( "*%s*\n", p );
- free( p );
- return EXIT_SUCCESS;
- }
- char *longcopy( char *t[], int sor, int oszlop)
- {
- int i, j, hossz;
- char *hosszu=(char *)malloc(sizeof(char)*100);
- for (i=0; i<sor; i++)
- for (j=0; j<oszlop; j++)
- if ((i==0 && j==0) || (strlen(t[i*oszlop+j])>hossz)){
- hossz=strlen(t[i*oszlop+j]);
- strcpy(hosszu, t[i*oszlop+j]);
- }
- return hosszu;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement