首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是"幻方",若是,函数返回值为1;若不是,函数返回值为0。"幻方"的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个"幻方":
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是"幻方",若是,函数返回值为1;若不是,函数返回值为0。"幻方"的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个"幻方":
admin
2017-02-24
89
问题
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是"幻方",若是,函数返回值为1;若不是,函数返回值为0。"幻方"的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。
例如,以下3×3的矩阵就是一个"幻方":
4 9 2
3 5 7
8 1 6
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序在文件BIANK1.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
;
8 m2+=a
[j];}
9 if(m1!=m2)return 0;
10 for(i=0;i<N;i++){
11 /*********found*********/
12 row=colum=
【1】
;
13 for(j=0;j<N;j++)
14 {row+=a
[j];
15 colum+=a[j]
;)
16 /*********found*********/
17 if((row!=colum)
【2】
(row!=m1))
18 return 0 ;
19 }
20 /*********found*********/
21 return
【3】
;
22 }
23 main()
24 { int x[N][N],i,j; .
25 printf("Enter number for array:\n");
26 for(i=0;i<N ;i++)
27 for(j=0;j<N;j++)
28 scanf("%d",&x
[j]);
29 printf("Array:\n");
30 for(i=0;i<N;i++)
31 { for(j=0;j<N;j++)
32 printf("%3d",x
[j]);
33 printf("\n");
34 }
35 if(fun(x))
36 printf("The Array is amagic square.\n");
37 else
38 printf("The Array isn’ta magic square.\n");
39 }
选项
答案
(1)0 (2)‖ (3)1
解析
填空1:本题考查为变量赋初值,在这里row+=a
[j]代表是每行的总和,colum+=a[j]
代表的是每列的总和,因而row,colum在初始化时应该为零,此空应该填0。
填空2:本题考查了if条件语句,此句if判断代表每行的总和与列是否相等,每行的总和是否与对角线的总和相等,两者若有一个不成立,即返回0,因而此空应该填写‖。
填空3:题目要求若矩阵是“幻方”,则函数返回值为1,因而此空应该填写1。
转载请注明原文地址:https://kaotiyun.com/show/D0Dp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#include<stdio.h>main(){FILE*fp;inti=20,j=30,k,n;fp=fopen("d1.dat","w");fprintf(fp,"%d\n",i;fprintf(f
现有如下程序段#include"stdio.h"main(){inta[5][6]={23,3,65,21,6,78,28,5,67,25,435,76,8,22,45,7,8,34,6,78,32,4,5,67,4,21,
有如下程序main(){intn=9;while(n>6){n--;printf("%d",n);}}该程序的输出结果是
已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。以下不能将变量c中的大写字母转换为对应小写字母的语句是
以下叙述中错误的是
以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],I;for(I=0;I
下面程序的运行结果是【】。#include#defineSIZE12main(){chars[SIZE];intI;for(I=0;I
已有定义:charc=′′;inta=1,b;(此处c的初值为空格字符),执行b=!c&&a;后b的值为【】。
设p1和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是
随机试题
企业再造的特点。
关于不同文化对色彩的偏好和禁忌,下列说法不正确的是()
某地10名20岁女子身高均数为157.3cm,标准差为4.9cm;体重均数为53.7kg,标准差为4.9kg。若要比较身高与体重的变异度应采用
下列各项中,可以作为提高净资产收益率的因素有()。
某投资者用10000元进行为期一年的投资,假定市场年利率为6%,利息按半年复利计算,该投资者投资的期末价值为()元。
与编制零基预算相比,编制增量预算的主要缺点主要包括()。
公安机关及其人民警察要坚持以人为本,切实把( )放在公安工作的首位,做到“权为民所用,情为民所系,利为民所谋”。
虚拟页式存储管理中页表有若干项,当内存中某一页面被淘汰时,可根据其中哪一项决定是否将该页写回外存?
设表的长度为20。则在最坏情况下,冒泡排序的比较次数为
Englishservesasafunctionalalternativelanguageinseveralareasofpublicactivityforthemanynationsoftheworldwhich
最新回复
(
0
)