首页 > 电脑

梯形图如何实现数组中的数据移动

更新时间2018-03-06 19:41:11

要求满足错误:

要求只用一个数组的方式实现,一定要保证在输出结果时,输出的顺序和数组中数的顺序是一致的。

123456789101112131415161718192021222324252627   #include<stdio.h>int main(){    int array[100];    int m, n, i,j, tmp, distance;    scanf("%d%d", &n, &m);    for (i = 0; i < n; ++i)   //输入        scanf("%d", &array[i]);     distance = n - m;   //尾部要替换过去的值之间地址相距n-m个元素.    for (i = distance; i < n; ++i){   //循环移动,每次移动一个。        tmp = array[i - distance];        array[i - distance] = array[i];        for (j = i; j > i - distance; --j){            array[j] = array[j - 1];        }        array[i - distance + 1] = tmp;    }     for (i = 0; i < n; ++i){  //输出        printf("%d", array[i]);        if (i != n - 1)            printf(" ");    }     printf(" ");    return 0;}  


上一篇:这个符号怎么打

下一篇:拜托c语言大佬们看看