《Programming Pearls》 column 2中问题二中解法 (不知道对不对哦)
/* * author: lx * date: 2011-09-16 * brief: programming pearls column2 */ #include <stdio.h> #include <stdlib.h> void move_vector( char * b, int m, int n ) { int i = 0; int j; char temp; for ( ; i < n ; i++ ) { for ( j = i; j < m; j += n ) { if ( j == i ) temp = *( b + j ); else *( b + j - n ) = *( b + j) ; } printf ( "temp is %c %d\n" , temp, j ); *( b + j - n ) = temp; } /* * this is especially. * */ if ( m % n != 0 ) move_vector( b + m - n , n, n - m%n ); } int main() { char a[8] = { 'a' , 'b' , 'c' , 'd' , 'e' , 'f' , 'g' , 'h' }; char b[12] = { 'a' , 'b' , 'c' , 'd' , 'e' , 'f' , 'g' , 'h' , 'i' , 'j' , 'k' , 'l' }; move_vector( a, 8, 3 ); int i; for ( i = 0; i < 8; i++ ) printf ( "%c\n" , *( a + i ) ); printf ( "b is .............\n" ); move_vector( b, 12, 3 ); for ( i = 0; i < 12; i++ ) printf ( "%c\n" , *( b + i ) ); exit ( 0 ); } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 长文讲解 MCP 和案例实战
· Hangfire Redis 实现秒级定时任务,使用 CQRS 实现动态执行代码
· Android编译时动态插入代码原理与实践
· 解锁.NET 9性能优化黑科技:从内存管理到Web性能的最全指南
· 通过一个DEMO理解MCP(模型上下文协议)的生命周期
· 工良出品 | 长文讲解 MCP 和案例实战
· 一天 Star 破万的开源项目「GitHub 热点速览」
· 多年后再做Web开发,AI帮大忙
· 记一次 .NET某旅行社酒店管理系统 卡死分析
· 别再堆文档了,大模型时代知识库应该这样建