原题链接:[编程入门]自定义函数之数字后移
解题思路:
1:把a[] 中要转移的m个数存入另一个数组 b[];
2:a[] 从末尾依次等于前一个数,移动N-m次;
3:把b[]中的数,放到a[]的前面;
4:输出a[];
参考代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | #include <stdio.h> #include <malloc.h> int main() { int *a = NULL; int *b = NULL; int N; scanf ( "%d" , &N ); //输入N a = ( int *) malloc ( N * sizeof ( int ) ); //开辟空间存N个数 for ( int i = 0; i < N; i++ ) //输入N个数 scanf ( "%d" , &a[i] ); int m; scanf ( "%d" , &m ); //输入转移个数m b = ( int *) malloc ( m * sizeof ( int ) ); //开辟空间存转移数 for ( int i = 0; i < m; i++ ) //把a[] 中要转移的m个数存入另一个数组 b[]; { b[i] = a[N - m]; N++; } for ( int j = 9; j >= m; j-- ) //a[] 从末尾依次等于前一个数,移动N-m次; a[j] = a[j - m]; for ( int i = 0; i < m; i++ ) //把b[]中的数,放到a[]的前面; a[i] = b[i]; for ( int i = 0; i < 10; i++ ) //输出a[]; printf ( "%d " , a[i] ); return (0); } |
别忘点赞哦-.-
8.5 分
34 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复