求C语言转matlab脚本语言代码

#include <stdio.h>
#define N 11
int main(void)
{
	int magic[N][N] = {0};
	int aone=0;                //赋值计数
	int atwo=0;                //赋值计数
	int row=0;                 //魔方阵列下标
	int line=0;                //行下标
	int num=0;

	                           //判断矩阵奇偶次阶
	if ( N % 2 == 0 )
	{                          
	printf("该魔方阵仅能够解决奇数阶魔方阵!\n");
	return 0;
	}

	line=0;
	row = (N + 1) / 2 - 1;     //不能直接用N/2!
	num = 0;
	for(   aone=0;   aone<N;   aone++)
	{
		for(  atwo=0;   atwo<N;   atwo++)
		{
			magic[line][row]=(++num);
			row+=1;
			line-=1;//行减列加

			if ( atwo != N - 1 )//判断是否到行末尾
			{
				if (line < 0)//解决行下标向下溢出问题
				{
					line = N - 1;
				}

				if (row >= N)//解决列上标向上溢出问题
				{
					row = 0;
				}
			}
		}
		line += 2;
		row -= 1;
	}





	int i=0,j=0;
	printf("%d阶魔方矩阵如下所示:\n", N);
	for (i = 0; i < N; i++)
	{
		for (j = 0; j < N; j++)
		{
			printf("%6d", magic[i][j]);
		}

		printf("\n\n");
	}


	return 0;
}

 

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^