C语言程序编程:输入奇数-输出n阶幻方矩阵(共2页).docx
精选优质文档-倾情为你奉上#include<stdio.h>#define MAX 100void huanFang(int n)int aMAXMAX=0;/初始化数组都为0int i,j;int m,k;/当前位置int p,q;/下一个位置int data=0;m=0;k=n/2;while(data<n*n)data+;amk=data;/printf("data=%d,m=%d,k=%dn ",data,m,k);p=m-1;/上q=k+1;/右if(p<0&&q<n&&q>=0)/上出框/printf("qian shang chu: p=%d,q=%dn",p,q);p=n-1;/下边放/printf("hou shang chu: p=%d,q=%dn",p,q);else if(p>=0&&p<n&&q=n)/右出框/printf("qian youchu: p=%d,q=%dn",p,q);q=0;/左边放/printf("hou youchu: p=%d,q=%dn",p,q);else if(p<0&&q=n)/斜出框/printf("qian xiechu: p=%d,q=%dn",p,q);p=m+1;/下格填q=k;/printf("hou xiechu: p=%d,q=%dn",p,q);if(apq!=0)/排重/printf("qian chongpai: p=%d,q=%dn",p,q);p=m+1;/下格填q=k;/printf("hou chongpai: p=%d,q=%dn",p,q);m=p;k=q;for(i=0;i<n;i+)for(j=0;j<n;j+)printf("%d ",aij);printf("n");void main()int n;/判断是否输入的是奇数while(1)printf("please input n jie,n is oddn");scanf("%d",&n);if(n%2=1)break;huanFang(n);专心-专注-专业