数组元素循环右移问题(有样例代码).c 411 B

12345678910111213141516171819202122232425
  1. #include <stdio.h>
  2. void rightRotate(int arr[], int n, int m) {
  3. m = m % n; // 确保移动位数小于数组长度
  4. int i;
  5. for (i = 0; i < n; i++) {
  6. printf("%d ", arr[(n - m + i) % n]);
  7. }
  8. printf("\n");
  9. }
  10. int main() {
  11. int N, M;
  12. int i;
  13. scanf("%d %d", &N, &M);
  14. int A[100];
  15. for (i = 0; i < N; i++) {
  16. scanf("%d", &A[i]);
  17. }
  18. rightRotate(A, N, M);
  19. return 0;
  20. }