- 论坛徽章:
- 0
|
回复 1# coderit - [asm1.dsgdata.com]:[/tmp]$ cat b.c
- #include <stdio.h>
- #define VCNT 4
- static void _vprint(int *v, int cnt, int x)
- {
- int i, j, p;
- printf("\n------------- %d/%d -------------\n", x, cnt);
- for (i=0; i<cnt; i++)
- {
- p = 0;
- for (j=i; j<cnt; j++)
- {
- printf("%d, ", v[j]);
- p++;
- if (p >= x)
- {
- printf("\n");
- break;
- }
- }
- for (j=0; p<x; j++)
- {
- printf("%d, ", v[j]);
- p++;
- }
- if (j > 0)
- printf("\n");
- }
- printf("\n");
- }
- int main(int argc, char **argv)
- {
- int v[VCNT] = {1, 3, 5, 8};
- _vprint(v, VCNT, 1);
- _vprint(v, VCNT, 2);
- _vprint(v, VCNT, 3);
- _vprint(v, VCNT, 4);
- return (0);
- }
- [asm1.dsgdata.com]:[/tmp]$ ./a
- ------------- 1/4 -------------
- 1,
- 3,
- 5,
- 8,
- ------------- 2/4 -------------
- 1, 3,
- 3, 5,
- 5, 8,
- 8, 1,
- ------------- 3/4 -------------
- 1, 3, 5,
- 3, 5, 8,
- 5, 8, 1,
- 8, 1, 3,
- ------------- 4/4 -------------
- 1, 3, 5, 8,
- 3, 5, 8, 1,
- 5, 8, 1, 3,
- 8, 1, 3, 5,
复制代码 |
|