Der er N heltal, så rækkefølgen af de tidligere tal flyttes M positioner tilbage, og endelig bliver M tal til M tal foran, skriv en funktion for at opnå ovenstående funktioner, indtast N heltal N heltal og output justerede N tal i hovedfunktionen.
#include "stdafx.h" #include "stdio.h" int main(int argc, char* argv[]) {void move(int array[20],int n,int m); int nummer[20],n,m,i; printf ("hvor mange numre?"); scanf("%d",&n); printf("indtast %d tal:\n",n); for(i=0; i<n; i++) scanf("%d",&number[i]); printf ("Hvor mange steder vil du flytte?"); scanf("%d",&m); træk(tal,n,m); printf("nu er de:\n"); for(i=0; i<n; i++) printf("%d ",number[i]); printf("\n"); return 0;
} void move(int array[20],int n,int m) // funktion der flytter sig tilbage én gang i en løkke {int *p,array_end; array_end=*(array+n-1); for(p=array+n-1; p>array; p--) *p=*(p-1); *array=array_end; m--; hvis(m>0) flyt(array,n,m); Rekursivt kald, når antallet af løkker M reduceres til 0, stoppes opkaldet
}
|