|
Egy sima, egy fordított
Írjon függvényt, amely paraméterként megkapja egy egész számokat tartalmazó tömb kezdőcímét
és elemeinek darabszámát! A függvény – az eredeti tömb módosítása nélkül – hozzon létre egy
új, egész értékeket tartalmazó tömböt, amely az eredeti tömb elemeit tartalmazza fordított
sorrendben! A függvény visszatérési értéke az új tömb kezdőcíme legyen!
A függvény specifikációja
int *reverse( int *, int );
Megjegyzés
A függvényt helyezze a reverse.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() { int *reverse( int *, int );
for ( ; ; ) { int n, i, *t, *p;
scanf( "%d", &n ); if ( n == 0 ) break;
t = ( int * )malloc( n * sizeof( int ) );
for ( i = 0; i < n; ++i ) scanf( "%d", &t[ i ] );
p = reverse( t, n );
for ( i = 0; i < n; ++i ) { if ( i > 0 ) putchar( ' ' ); printf( "%d", p[ i ] ); } putchar( '\n' );
free( p ); free( t ); } return EXIT_SUCCESS; }
letöltés szöveges állományként
Makefile
CC = gcc OBJS = main.o reverse.o TARGETS = main
all: $(TARGETS)
main: main.o reverse.o $(CC) main.o reverse.o -o main
main.o: main.c $(CC) -c main.c
reverse.o: reverse.c $(CC) -c reverse.c
clean: rm -rf $(OBJS) *~ $(TARGETS)
letöltés szöveges állományként
Példa bemenet
1 7 2 9 -3 3 4 -1 7 0
letöltés szöveges állományként
A példa bemenethez tartozó kimenet
7 -3 9 7 -1 4
letöltés szöveges állományként
|
|