首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个“幻方
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个“幻方
admin
2020-07-28
27
问题
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值为1;不是,函数返回值为0。“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。
例如,以下3×3的矩阵就是一个“幻方”:
4 9 2
3 5 7
8 1 6
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.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
[j]);
25 printf(’’Array:\n’’);
26 for(2=0;i<N;i++)
27 {for(j=0;j<N;j++) printf(’’%3d’’,x
[j]);
28 printf(’’\n’’);
29 }
30 if(fun(x))printf(’’The Array isa magic square.\n’’);
31 else printf(’’The Array isn’t a magic square.\n’’);
32 }
选项
答案
(1)0 (2)‖ (3)1
解析
函数fun的功能是判定形参a所指的N×N的矩阵是否是”幻方”。第一空:由“row+=a
[j];colum+=a[j]
;”可知row是计算行和,colum是计算列和,故第一空处的初始化应将行和与列和初始化为0,即第一空处应为“0”。第二空:“if(now!=colum)__2__(mw!=m1))return 0;”如果行和不等于列和,那么矩阵不是幻方,如果行和不等对角线和,那么矩阵也不是幻方,即两者是或的关系,故第二空处应为“‖第三空:不是幻方的情况在前面都会返回0,所有不是幻方的情况都已经考虑到了,剩下的就是幻方,故第三空处为“1”。
转载请注明原文地址:https://kaotiyun.com/show/HH3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:从n个学生的成绩中统计出低于平均分的学生人数,此人数作为函数值返回,平均分存放在形参aver所指的存储单元中。
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,其功能是:求Fibonacei数列中大于t的最小的数,结果由函数返回。Fibonacci数列F(n)的定义为:F(
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。程序的功能是调用fun函数建立班级通信录。通信录中记录每位学生的编号、姓名和电话号码。班级人数和学生信息从键盘读入,每个人的信息作为一个数据
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,fun函数的功能是:删除b所指数组中小于10的数据。主函数中输出删除后数组中余下的数据。请改正函数fun中指定部位的错误,使它能得
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数值返回,并将大于平均值的数放在形参y所指数
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,规定输入的字符串中只包含字母和*号。编写函数fun,其功能是:删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]……中,把偶数从数组中删除,奇数个数通
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,函数fun的功能是:将a、b中的两个正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的十位和千位
随机试题
如发生肠梗阻的病人系一多次妊娠的中年妇女,在作检查时应特别注意
AIDS主要病理变化表现在
中医学认为,系统性红斑狼疮后期的主要病机是
甲乙两县的男性冠心病粗死亡率均为0.5%,经年龄构成标准化后,甲县为0.6%,乙县为0.3%。可以认为
临时存款账户是因存款人临时需要并在规定期限内使用而开立的银行结算账户,其有效期最长不超过2年。()
以一般贸易方式进口的货物就是一般进出口货物。()
中等学校心理学的研究主要是教育心理研究法,必须遵循的原则是【】
大脑皮层的机能定位区是各负其责,互不相干的。()
根据以下资料,回答下列问题。2009年7月,全国粗钢产量同比增长12.6%,增速比上月提高6.6个百分点;钢材产量同比增长19.4%,增速比上月提高5.4个百分点;焦炭产量同比增长613%;铁合金产量同比增长15.1%。钢材出口181万吨,比上月
WhentheWellsDryUpA"EveryoneelseinBritainhangsonwhattheBankofEnglanddoeswithinterestrates,"saysoneproud
最新回复
(
0
)