Il y a N entiers, de sorte que l’ordre des nombres précédents est déplacé en arrière de positions M, et enfin M nombres deviennent les M nombres devant, on écrit une fonction pour atteindre les fonctions ci-dessus, on entre N entiers N entiers et on produit N nombres ajustés dans la fonction principale.
#include « stdafx.h » #include « stdio.h » int main(int argc, char* argv[]) {déplacement du vide(int array[20],int n,int m) ; int numéro[20],n,m,i ; printf (« combien de chiffres ? ») ; scanf(« %d »,&n) ; printf(« input %d numbers :\n »,n) ; pour(i=0 ; i<n ; i++) scanf(« %d »,&number[i]) ; printf (« combien d’endroits voulez-vous déménager ? ») ; scanf(« %d »,&m) ; move(number,n,m) ; printf (« maintenant, ils sont :\n ») ; pour(i=0 ; i<n ; i++) printf(« %d « ,number[i]) ; printf(« \n ») ; retour 0 ;
} void move (int array[20],int n,int m) // fonction qui recule une fois dans une boucle {int *p,array_end ; array_end=*(tableau+n-1) ; pour (p=tableau+n-1 ; p>array ; p--) *p=*(p-1) ; *tableau=array_end ; m--; if(m>0) déplace(table,n,m) ; Appel récursif, lorsque le nombre de boucles M est réduit à 0, l’appel est arrêté
}
|