首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个“幻方
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个“幻方
admin
2018-09-27
42
问题
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。
例如,以下3×3的矩阵就是一个“幻方”:
4 9 2
3 5 7
8 1 6
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK 1.C中。
不得增行或删行,也不得更改程序的结构!
1 #include<stdio.h>
2 #define N 3
3 int fun(int(*a)[N])
4 { int i,j,m1,m2,row,colum;
5 m1=m2=0;
6 for(i=0;i<N;i++)
7 {j=N-i-1;m1+=a
;m2+=a
[j];}
8 if(m1!=m2)return 0;
9 for(i=0;i<N;i++) {
10 /**********found**********/
11 row=colum=__1__;
12 for(j=0;j<N;j++)
13 {row+=a
[j];colum+=a[j]
;}
14 /**********found**********/
15 if((row!=colum)__2__(row!=m1))return 0;
16 }
17 /**********found**********/
18 return __3__;
19 }
20 main()
21 { int x[N][N],i,j;
22 printf(’’Enter number for array:\n’’);
23 for(i=0;i<N;i++)
24 for(j=0;j<N;j++) scanf("%d’’,&x(i][j]);
25 printf("Array:\n’’);
26 for(i=0;i<N;i++)
27 {for(=0;j<N;j++) printf(’’%3d’’,x
[j]);
28 printf(’\n’’);
29 }
30 if(fun(x))printf(’’The Array is a magic square.\n’’);
31 else printf(’’The Array isn’t at magic square.\n’’);
32 }
选项
答案
(1)0 (2)|| (3)1
解析
函数fun的功能是判定形参a所指的N×N的矩阵是否是”幻方”。第一空:由“row+==a
[j];colum+=a[j]
;”可知row是计算行和,colum是计算列和,故第一空处的初始化应将行和与列和初始化为0,即第一空处应为“0”。第二空:“if((row!=colum) __2__(row!=m1))return 0;”如果行和不等于列和,那么矩阵不是幻方,如果行和不等对角线和,那么矩阵也不是幻方,即两者是或的关系,故第二空处应为“||”第三空:不是幻方的情况在前面都会返回0,所有不是幻方的情况都已经考虑到了,剩下的就是幻方,故第三空处为“1”。
转载请注明原文地址:https://kaotiyun.com/show/28xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是()。inta=7,b,C;b=++a;C=a++;printf("%d,%d,%d",a,b,C);
有以下程序:main(){intx=0,y=5,z=3;while(z-->0&&++x<5)y=y-1;printf("%d,%d,%d\n",x,y,z);}程序执行后的输出结果
下列程序的运行结果是()。#include<stdio.h>main(){stmctdate{intyear,month,day;}today;primf("%d\n",sizeof(struct
以下程序运行后的输出结果是______。main(){intx=0210;printf("%x\n",x);}
在数据结构中,从逻辑上可以把数据结构分为______。
若有程序fun(inta,intb){staticintc=0;c+=a+b;rerurnc;}main(){intx=5,y=3,z=7
源程序文档化要求程序应加注释。注释一般分为序言性注释和【】注释。
本程序用冒泡法对数组a[]的元素从大到小排序,请在程序空白处填空。voidbubble(inta[],intn){intid,max,temp;max=n-1;do{j=0;f
对于长度为n的顺序存储的线性表,当随机插入和删除一个元素时,需平均移动元素的个数为【】。
Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向【】的设计方法。
随机试题
当前活动窗口(Windows)
阅读下面这首诗,回答问题。点绛唇李清照蹴罢秋千,起来慵整纤纤手。露浓花瘦,薄汗轻衣透。见客入来,袜划金钗溜。和羞走。倚门回首,却把青梅嗅。请从动
可引起“靴形心”的疾病是【】
桑螵蛸的功效是明矾的功效是
题31~32:某高层建筑采用全部落地的现浇剪力墙结构,抗震设防烈度为7度,Ⅱ类场地,乙类建筑,房屋高度82m。某剪力墙截面如图2-26所示,底层墙厚bw=350mm,顶层墙厚bw=250mm。采用C35级混凝土,纵向钢筋和箍筋分别采用HBB335()和HP
以下有关安全出口设置的说法正确的是()。
关于听证的表述中,不正确的是()。
股份有限公司股份的特点是()。
从历史来看,人类社会从未建立过能够引以自豪的道德量化体系,究其原因,在于道德本身是不可能被量化的,更无法以科学方法进行打分。换句话说,用打分的方法去搞道德教育,恰恰背离了道德的本性。以下推论错误的是()。
阅读以下说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。说明类Queue表示队列,类中的方法如下表所示。类Node表示队列中的元素;类EmptyQueueException给出了队列操作中的异常处理操作。Java代码
最新回复
(
0
)