首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是"幻方",若是,函数返回值为1;若不是,函数返回值为0。"幻方"的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个"幻方":
给定程序中,函数fun的功能是:判定形参a所指的N×N(规定N为奇数)的矩阵是否是"幻方",若是,函数返回值为1;若不是,函数返回值为0。"幻方"的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。 例如,以下3×3的矩阵就是一个"幻方":
admin
2017-02-24
25
问题
给定程序中,函数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<string.h>main(){charp[20]={’a’,’b’,’c’,’d’},q[]="abc",r[]="abcde";strcat(p,r);strcpy(p+strlen(q),
已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。以下不能将变量c中的大写字母转换为对应小写字母的语句是
若执行下面的程序时,从键盘输入5和2,则输出结果是main(){inta,b,k;scanf("%d,%d",&a,&b);k=a;if(a<b)k=a%b;elsek=b%a;printf("
在执行下述程序时,若从键盘输入6和8,则结果为main(){inta,b,s;scanf("%d%d",&a,&b);S=aif(a<B)s=b;S*=S;printf("%d",s);}
以下程序的功能是建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(链表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#includestructlist{intd
以下程序的运行结果是【】。#includemain(){FILE*fp;inta[10]={1,2,3,0,0},i;fp=fopen("d2.dat","wb");fwtite(a,sizeof(int),5
阅读以下程序及对程序功能的描述,其中正确的是#includemain(){FILE*in,*out;charch,infile[10],outfile[10];printf("Entertheinfilename:\n"
设p1和p2是指向一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是
下列函数的运行结果是main(){inti=2,p;intj,k;j=i;k=++i;p=f(j,k);printf("%d",p);}intf(inta,intb){intc;if(a>b
若要求定义具有10个int型元素的一维数组a,则以下定义语句中错误的是
随机试题
行政处罚实施机关,不包括()
病人高热时,将输液管看成是一条蛇,此症状是
下列对离婚案件的诉讼管辖的表述中正确的有哪些?()
用集总参数法求解瞬态导热问题时,必须满足的条件是()。
土石围堰的防渗结构形式有( )等。
保本基金的分析指标主要包括()等。
手机:通讯:辐射
库利(厦门大学2010年研)
中华民族精神的核心是()
打开考生文件夹下的演示文稿yswg.pptx,按照下列要求完成对此文稿的修饰并保存。将第二张幻灯片版式改变为“标题,内容与文本”,文本部分的动画效果设置为:“向内溶解”;在演示文稿的开始处插入一张“仅标题”幻灯片,作为文稿的第一张幻灯片,标题键入“家
最新回复
(
0
)