|
Holdra szállás
Adott a következő fejlécállomány:
myheader.h
#ifndef _MYHEADER_H #define _MYHEADER_H 1
int foo(char *, int, int);
#endif /* myheader.h */
letöltés szöveges állományként
Írja meg a myheader.h állományban deklarált foo() függvényt, amely
paraméterként megkap egy sztringet, valamint két pozitív egész számot (n és
m)! A sztring a Hold felszínének egy részletét írja le. Mint ismeretes, a Holdon
különböző szélességű sík felszínek és kráterek váltogatják egymást. A sztringben a
'-' (mínuszjel) karakter egy sík felszínrészt, a '.' (pont)
karakter pedig egy kráterrészt jelöl.
A függvény adja vissza azon kráterek számát, amelyek legalább n, legfeljebb
m részből állnak! A mintában minden krátert legalább egy sík felszínrész határol.
Megjegyzés
A függvényt helyezze a foo.c nevű állományba, és ezt az állományt küldje
be megoldásként a kiértékelő rendszernek! Megoldását az alábbi állományok 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> #include "myheader.h"
int main() { char line[1000]; int n, m; while (scanf("%s %d %d", line, &n, &m) != EOF) printf("%d\n", foo(line, n, m));
return EXIT_SUCCESS; }
letöltés szöveges állományként
Makefile
SRCS = main.c foo.c OBJS = $(SRCS:%.c=%.o) TARGETS = main
.PHONY: clean
all: $(TARGETS)
main: $(OBJS) $(CC) $(OBJS) -o main
%.o: %.c $(CC) -Wall -c $< -o $@
clean: rm -rf $(OBJS) *~ $(TARGETS)
letöltés szöveges állományként
Példa bemenet
------------ 1 3 --.-.--.- 1 1 -.-..--...- 2 3
letöltés szöveges állományként
A példa tesztprogram kimenete
0 3 2
letöltés szöveges állományként
|
|