Útvonalleírások
Írjon függvényt, amely a paramétereként megkapott tetszőleges hosszúságú sztringről eldönti,
hogy az egy szabályos útvonalleírást tartalmaz-e! Szabályosnak tekintünk egy útvonalleírást,
ha az a következő alakú:
településnév - településnév[ - településnév]...
A településnév minden esetben egy olyan karaktersorozat, amely kizárólag betű és kötőjel
(mínuszjel) karaktereket tartalmaz. Két településnév között pontosan három karakter
található: egy szóköz, egy kötőjel (mínuszjel) és egy újabb szóköz. A szabályos útvonalleírás
legalább két településnevet tartalmaz.
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_route( char * );
Megjegyzés
A függvényt helyezze a route.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_route( char * );
while ( gets( line ) != NULL )
if ( is_route( line ) )
puts( "YES" );
else
puts( "NO" );
return EXIT_SUCCESS;
}
letöltés szöveges állományként
Makefile
CC = gcc
OBJS = main.o route.o
TARGETS = main
all: $(TARGETS)
main: main.o route.o
$(CC) main.o route.o -o main
main.o: main.c
$(CC) -c main.c
route.o: route.c
$(CC) -c route.c
clean:
rm -rf $(OBJS) *~ $(TARGETS)
letöltés szöveges állományként
Példa bemenet
Debrecen - Budapest
Debrecen - Szolnok - Kobanya-Kispest - Budapest-Nyugati
Debrecen
Debrecen-Budapest
Debrecen- Budapest
- Budapest
Debrecen Jozsa - Budapest
letöltés szöveges állományként
A példa bemenethez tartozó kimenet
YES
YES
NO
NO
NO
NO
NO
letöltés szöveges állományként