Er zijn N gehele getallen, zodat de volgorde van de vorige getallen M posities wordt teruggeschoven, en uiteindelijk worden M getallen de M getallen vooraan, schrijf een functie om bovenstaande functies te bereiken, voer N gehele getallen N gehele getallen in en voer aangepaste N getallen uit in de hoofdfunctie.
#include "stdafx.h" #include "stdio.h" Int Main (Int Argc, Char* Argv[]) {void move(int array[20],int n,int m); int number[20],n,m,i; printf ("hoeveel nummers?"); scanf("%d",&n); printf("invoer %d getallen:\n",n); voor(i=0; i<n; i++) scanf("%d",&number[i]); printf ("hoeveel plekken wil je verhuizen?"); scanf("%d",&m); beweging(nummer,n,m); printf("nu zijn ze:\n"); voor(i=0; i<n; i++) printf("%d ",number[i]); printf("\n"); return 0;
} void move(int array[20],int n,int m) // functie die één keer terugbeweegt in een lus {int *p,array_end; array_end=*(array+n-1); for(p=array+n-1; p>array; p--) *p=*(p-1); *array=array_end; m--; als(m>0) beweeg(array,n,m); Recursieve oproep, wanneer het aantal lussen M is teruggebracht tot 0, wordt de oproep gestopt
}
|