判断魔方矩阵,自己编了个程序,能帮忙改改么……
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/08/29 03:41:12
判断魔方矩阵,自己编了个程序,能帮忙改改么……
在下面的5x5魔方矩阵中,每一行、每一列、及对角线上的元素之和都是相等的.试编程将5x5矩阵中的元素读到一个二维整型数组中,然后检验其是否为魔方阵,若是魔方阵则按下列形式在屏幕上显示:
#include
int main()
{
int a[5][5],s1[5],s2[5];
int i,j,k,h,b,c;
int flag=0;
for (i=0;i
在下面的5x5魔方矩阵中,每一行、每一列、及对角线上的元素之和都是相等的.试编程将5x5矩阵中的元素读到一个二维整型数组中,然后检验其是否为魔方阵,若是魔方阵则按下列形式在屏幕上显示:
#include
int main()
{
int a[5][5],s1[5],s2[5];
int i,j,k,h,b,c;
int flag=0;
for (i=0;i
这里有问题
if(s1[k]==s2[h]==b==c)
flag=1;
k已经变成5了,已经越界了,而且要比较的是每一行/列,并不是单独的第k行/h列
再问: ����ô�İ�������
再答: ��ѭ����s1��s2��ÿ��Ԫ�ض����бȽϣ�����ٺ�b,c�Ƚϡ� ��ʵ������ʼ��ʼ����ʱ��flag��Ϊ1��һ����һ���Ƚϳ�����ͬ����������flag��Ϊ0��Ȼ�����ѭ���� ����Ч�ʻ��һЩ �����м��Dz��֣� flag = 1; for (int m = 0; m < 5 && flag == 1; m++) for (int n = 0; n < 5 && flag == 1; n++) if (s1[m] != s2[n]) flag = 0; if (flag) flag = (b == c == s1[0]) ? 1 : 0; if (flag) printf("%4d", b); else printf("No");
if(s1[k]==s2[h]==b==c)
flag=1;
k已经变成5了,已经越界了,而且要比较的是每一行/列,并不是单独的第k行/h列
再问: ����ô�İ�������
再答: ��ѭ����s1��s2��ÿ��Ԫ�ض����бȽϣ�����ٺ�b,c�Ƚϡ� ��ʵ������ʼ��ʼ����ʱ��flag��Ϊ1��һ����һ���Ƚϳ�����ͬ����������flag��Ϊ0��Ȼ�����ѭ���� ����Ч�ʻ��һЩ �����м��Dz��֣� flag = 1; for (int m = 0; m < 5 && flag == 1; m++) for (int n = 0; n < 5 && flag == 1; n++) if (s1[m] != s2[n]) flag = 0; if (flag) flag = (b == c == s1[0]) ? 1 : 0; if (flag) printf("%4d", b); else printf("No");