首页 > 代码库 > 一道题引发的惨案

一道题引发的惨案

           昨天在一个cocos2d-x的群里,有群友发了一个问题求答案,当时自已也一下子没想到什么好的写法,这时候有个群友写了一个比较少见的代码方法,当时一看到这代码,我有一种如糊灌顶的感受,因为自已平时基本没用这种写法,今日在别的群,我就发了这道题让大家讨论一下,结果没想到,引发了各种争吵和讨论,有写得不好却自以为是的,有写得好却看不起别人的写法,有写得很好却十分低调的,十分精彩,也算是为群里热闹了一下气氛,QQ群也变成了社会市井的一个浓缩了,呵呵。

以下贴上问题和昨天那位群友写的代码,我觉得精彩的地方就是取模这一句了。他的代码未必是最高效的,但个人感觉这一句代码可以反映出这位群友的思维比较跳跃开朗。欢迎大家点评,小生水平有限,不敢持任何批判。

问题:

 将一个数组,从其中任何一个位置开始,让它循环一遍? 或者说,从这个数组中的任何一个位置开始,给另一个数组赋值,完整的循环一次

比如:int[] t = {1,2,3,4,5,6}; 我想从3开始,输出3,4,5,6,1,2

 

一位群友写的代码:

int i = 3
for(int j = 0 j++ J < t.lenth)
{
int a = (i+j)%t.lenth;
printf(“%d”,t[a]);
}