|
Részsztring törlése
Írjon függvényt, amely paraméterként megkap egy sztringet és két nemnegatív egész számot! A
függvény a paramétereként megkapott sztring megváltoztatása nélkül hozzon létre és adjon
vissza egy olyan új sztringet, amelyet úgy kapunk, hogy az eredeti sztringből kivágjuk és
eltüntetjük azt a részsztringet, amelyik az első egész számmal jelzett pozíción kezdődik és a
második számmal jelzett pozíción ér véget, az eredeti sztring megmaradt részeit pedig
összefűzzük! Ha az első szám nagyobb lenne a másodiknál, illetve ha a második szám legalább
akkora, mint a sztring hossza, akkor a sztringet az első szám által jelzett pozíciótól a
végéig csonkolja a függvény!
A függvény specifikációja
char *delete( char *, int, int );
Megjegyzés
A függvényt helyezze a delete.c nevű állományba, és ezt az állományt küldje
be megoldásként a kiértékelő rendszernek! Megoldását a példa bemenetben szereplő adatokkal az
alábbi két állomány segítségével tesztelheti. Megoldásának kiértékelését a tesztelő rendszer
nem feltétlenül ezeknek az állományoknak a felhasználásával végzi!
main.c
#include <stdio.h>#include <stdlib.h>int main(){ char s[ 1000 ]; int n1, n2; char *delete( char *, int, int ); while ( scanf( "%s%d%d", s, &n1, &n2 ) != EOF ) { char *p = delete( s, n1, n2 ); puts( p ); free( p ); } return EXIT_SUCCESS;}
letöltés szöveges állományként
Makefile
CC = gccOBJS = main.o delete.oTARGETS = mainall: $(TARGETS)main: main.o delete.o $(CC) main.o delete.o -o mainmain.o: main.c $(CC) -c main.cdelete.o: delete.c $(CC) -c delete.cclean: rm -rf $(OBJS) *~ $(TARGETS)
letöltés szöveges állományként
Példa bemenet
sztring 3 3sztring 2 3sztring 4 6sztring 4 10sztring 4 3
letöltés szöveges állományként
A példa bemenethez tartozó kimenet
sztingszingsztrsztrsztr
letöltés szöveges állományként
|
|