c语言程序设计问题!

想要写一个把后几位数放到前面,其他顺序错位输出的程序
比如
1 2 3 4 5 6 7 8 9 10
错三位后输出
8 9 10 1 2 3 4 5 6 7
自己写的程序如下

img

这是运行结果

img

你把*b=end_b;m--;拿到循环的外面
在循环结束之前把a[0]赋值为a[n-1]显然会导致a[0]原来的值丢失
m作为统计移动次数的变量一次循环应该只进行一次自减

m--和*b=end_b应该放for循环外