|
Könyvcímek
Írjon függvényt, amely a paramétereként megkapott tetszőleges hosszúságú sztringről eldönti,
hogy az egy könyv szerzőinek nevét és címét tartalmazza-e a következő formában:
szerző_neve[, szerző_neve]...: mű_címe
Ez a jelölés azt fejezi ki, hogy a könyvnek több szerzője is lehet, ebben az esetben a
szerzőket mindig egy vessző és egy szóköz karakter választja el egymástól. A mű címe az
utolsóként feltüntetett szerző neve után áll, attól egy kettőspont és egy szóköz karakterrel
van elválasztva. A szerző(k) neve(i) és a mű címe minden esetben egy betűvel
kezdődő karaktersorozat. A szerzők nevében nem fordul elő sem vessző, sem kettőspont karakter,
tehát ezek a karakterek a fent megadott formában (az őket követő szóközzel együtt) a fent
megadott előfordulási helyeken kizárólag elválasztó karaktercsoportként funkcionálnak.
Ha a sztring ilyen alakú, akkor a függvény igaz értéket, egyébként hamisat adjon vissza!
A függvény specifikációja
int is_book_title( char * );
Megjegyzés
A függvényt helyezze a title.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 line[ 1000 ]; int is_book_title( char * ); while ( gets( line ) != NULL ) if ( is_book_title( line ) ) puts( "YES" ); else puts( "NO" ); return EXIT_SUCCESS;}
letöltés szöveges állományként
Makefile
CC = gccOBJS = main.o title.oTARGETS = main all: $(TARGETS)main: main.o title.o $(CC) main.o title.o -o mainmain.o: main.c $(CC) -c main.ctitle.o: title.c $(CC) -c title.cclean: rm -rf $(OBJS) *~ $(TARGETS)
letöltés szöveges állományként
Példa bemenet
Ivor Horton: Beginning CStanley B. Lippman, Josée Lajoie, Barbara E. Moo: C++ PrimerIvor Horton:Beginning CIvor Horton: Beginning CIvor Horton:: Beginning C, Josée Lajoie, Barbara E. Moo: C++ PrimerStanley B. Lippman,Josée Lajoie, Barbara E. Moo: C++ PrimerStanley B. Lippman, Josée Lajoie, Barbara E. Moo: C++ Primer
letöltés szöveges állományként
A példa bemenethez tartozó kimenet
YESYESNONONONONONONO
letöltés szöveges állományként
|
|