回复 9# 的帖子
不是用冒泡法 ----------------解决方案--------------------------------------------------------
是按这个箭头顺序来输出的(图片里面)
----------------解决方案--------------------------------------------------------
re
好像杨辉三角呀 ----------------解决方案--------------------------------------------------------
又玩jpeg压缩啊
[color=white]
----------------解决方案--------------------------------------------------------
晕,不说清楚,设置两个标志,一个控制左右,一个控制上下
----------------解决方案--------------------------------------------------------
void de(int (*squre)[100],int x,int y)
{
int i=0,j=0;
bool filp=false;
while (i!=x-1 || j!=y-1)
{
printf("%d ",squre[j][i]);
if (filp)i--,j++;
else i++,j--;
//转向
if (i<0 || j<0 || i==x || j==y)
filp=!filp;
//修正
if (i<0 && j==y)
i=1,j=y-1;
else
{
if (i<0)i=0;else if (i==x)i=x-1,j+=2;
if (j<0)j=0;else if (j==y)j=y-1,i+=2;
}
}
printf("%d\n",squre[x-1][y-1]);
}
话说,N久以前曾经写过一个……
----------------解决方案--------------------------------------------------------
RE
复制了 ----------------解决方案--------------------------------------------------------
回复 16# 的帖子
老兄 看不懂啊
是用什么语言编的啊
C 还是C++啊
我都运行不出来
----------------解决方案--------------------------------------------------------
#include <string.h>
#include <iostream.h>
#include <stdio.h>
void main()
{
int a[6][6] = {1, 2, 6, 7,15,16,
3, 5, 8,14,17,26,
4, 9,13,18,25,27,
10,12,19,24,28,33,
11,20,23,29,32,34,
21,22,30,31,35,36};
int *p;
int temp;
int i, j;
for (i = 0; i < 6; i++)
for (j = 0; j < 6; j++)
for (p = (&a[i][j] + 1); p <= &a[5][5] ; p++)
{
if (a[i][j] > *p)
{
temp = a[i][j];
a[i][j] = *p;
*p = temp;
}
}
for (i = 0; i < 6; i++)
for (j = 0; j < 6; j++)
printf("%d\n", a[i][j]);
}
----------------解决方案--------------------------------------------------------
考虑下你的时间楼上..呵呵..还可以调整下
----------------解决方案--------------------------------------------------------