Υπάρχουν N ακέραιοι, έτσι ώστε η σειρά των προηγούμενων αριθμών να μετακινείται πίσω M θέσεις και, τέλος, οι αριθμοί M γίνονται οι αριθμοί M μπροστά, γράψτε μια συνάρτηση για να επιτύχετε τις παραπάνω συναρτήσεις, εισαγάγετε N ακέραιους N ακέραιους και εξάγετε προσαρμοσμένους N αριθμούς στην κύρια συνάρτηση.
#include "stdafx.h" #include "stdio.h" int main(int argc, char* argv[]) {void move(int array[20],int n,int m); αριθμός int[20],n,m,i; printf("πόσοι αριθμοί;"); scanf("%d",&n); printf("εισαγωγή %d αριθμών:\n",n); for(i=0; i<n; i++) scanf("%d",&αριθμός[i]); printf("πόσα μέρη θέλετε να μετακινηθείτε;"); scanf("%d",&m); κίνηση(αριθμός,n,m); printf("τώρα ,είναι:\n"); for(i=0; i<n; i++) printf("%d ",αριθμός[i]); printf("\n"); επιστροφή 0;
} void move(int array[20],int n,int m) // συνάρτηση που μετακινείται προς τα πίσω μία φορά σε έναν βρόχο {int *p,array_end; array_end=*(πίνακας+n-1); for(p=πίνακας+n-1; p>πίνακας; p--) *p=*(p-1); *πίνακας=array_end; m--; if(m>0) κίνηση(πίνακας,n,m); Αναδρομική κλήση, όταν ο αριθμός των βρόχων M μειωθεί σε 0, η κλήση διακόπτεται
}
|