|
Nagy területű országok
Adott az alábbi struktúra:
struct orszag
{
char *nev;
int terulet, nepesseg;
};
Írjon eljárást, amely paraméterként megkapja egy struct orszag típusú elemeket
tartalmazó egydimenziós tömb kezdőcímét, a tömb elemszámát, valamint egy állománynevet, és
kiírja a megadott nevű állományba soronként, a tömbbeli előfordulásuk sorrendjében az
átlagosnál nagyobb területű országok nevét és népességét egy szóközzel elválasztva!
Az eljárás specifikációja
void nagy_orszagok(struct orszag [], int, char *);
Megjegyzés
Az eljárást helyezze a nagy_orszagok.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>
struct orszag { char *nev; int terulet, nepesseg; };
void nagy_orszagok(struct orszag [], int, char *);
int main() { struct orszag t[] = {{"Magyarorszag", 93030, 9893899}, {"Amerikai Egyesult Allamok", 9826630, 318697314}, {"Nemetorszag", 357023, 80500000}, {"Kanada", 9984670, 35702707}, {"Egyesult Kiralysag", 244820, 63705000}}; FILE *f; int c; nagy_orszagok(t, 5, "kimenet.txt"); f = fopen("kimenet.txt", "r"); while ((c = fgetc(f)) != EOF) putchar(c); fclose(f); return EXIT_SUCCESS; }
letöltés szöveges állományként
Makefile
SRCS = main.c nagy_orszagok.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
A példa tesztprogram kimenete
Amerikai Egyesult Allamok 318697314 Kanada 35702707
letöltés szöveges állományként
|
|