亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

c語言怎么實現循環右移

小億
289
2024-03-18 09:25:49
欄目: 編程語言

要實現循環右移,可以利用位運算和取余來完成。下面是一個示例代碼:

#include <stdio.h>

void rightRotate(int *arr, int n, int k) {
    k = k % n;
    
    for(int i = 0; i < k; i++) {
        int temp = arr[n-1];
        
        for(int j = n-1; j > 0; j--) {
            arr[j] = arr[j-1];
        }
        
        arr[0] = temp;
    }
}

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int n = sizeof(arr) / sizeof(arr[0]);
    int k = 2;
    
    rightRotate(arr, n, k);
    
    for(int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    
    return 0;
}

在這個示例中,我們定義了一個rightRotate函數,它接受一個整型數組arr、數組長度n和右移位數k作為參數。首先對k取余確保kn的范圍內,然后循環執行右移操作。在右移過程中,我們先保存最后一個元素的值,然后依次將前面的元素向后移動一位,最后將保存的值放到第一個位置。最后在main函數中調用rightRotate函數并打印結果。

0
尚义县| 察隅县| 绥中县| 东山县| 枝江市| 安陆市| 金川县| 大余县| 灵寿县| 永吉县| 陕西省| 穆棱市| 当雄县| 射阳县| 余干县| 青川县| 尼玛县| 嘉峪关市| 江阴市| 公安县| 河源市| 新化县| 高州市| 济阳县| 永清县| 区。| 蓝山县| 江西省| 本溪| 岑巩县| 蓬莱市| 安阳县| 怀柔区| 安塞县| 武夷山市| 营口市| 西安市| 济阳县| 元阳县| 汝南县| 龙里县|