首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例如,若a数组中的值为: 0 1 2 7 9 1 9 7 4
下列程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例如,若a数组中的值为: 0 1 2 7 9 1 9 7 4
admin
2019-03-19
24
问题
下列程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例如,若a数组中的值为:
0 1 2 7 9
1 9 7 4 5
2 3 8 3 1
4 5 6 8 2
5 9 1 4 1
则返回主程序后s的值应为3. 375。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include < stdio.h >
#include< conio.h >
#include < stdlib .h >
#define N 5
double fun (int w[] [N])
{
}
void main ()
{
FILE * wf;
int a[N][N]={0,1,2,7,9,1,9, 7 , 4 , 5 , 2 , 3 , 8 , 3 ,1 , 4 , 5 , 6 , 8 , 2 , 5 , 9 , 1,4,1};
int i, j;
double s;
system ("CLS") ;
printf (" *** The array *** \n ") ;
{printf ("% 4d ",a
[j]); }
printf ("\n ") ;
}
s = fun (a) ;
printf (" *** THE RESULT *** \n ");
printf("The sum is : % lf\n ",s);
/******************/
wf= fopen ( "out.dat ", "w") ;
fprintf (wf,"% lf",s);
fclose (wf) ;
/******************/
}
选项
答案
double fun (int w[] [N]) { int i,j,k=0; double sum=0.0; for(i=0;i<N;i++) for(j=0;j<N;j++) if(i==0 || i==N-1 || j==0|| j==N-1) 1*只要下标中有一个为0或N-1,则它一定是周边元素*/ {sum=sum+W[i][j];/* 将周边元素求和*/ k++; } return sum/k;/*求周边元素的平均值*/ }
解析
本题要求计算二维数组周边元素的平均值,for循环语句控制循环过程,if条件语句根据数组元素的下标判断该元素是否为二维数组的周边元素。
本题采用逐一判断的方式,周边元素的规律为下标中有一个是0或N-1,所以只要下标中有一个为0或N-1,那么它一定是周边元素。计算周边元素个数的方式是当给sum累加一个值时,k也加1。
转载请注明原文地址:https://kaotiyun.com/show/uBRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下面程序的功能是将字符串a下标值为偶数的元素由小到大排序,其他元素不变,请填空。#include<stdio.h>main(){chara[]="labchmfye",t:int1,j;for(i=0;
下面程序的运行结果是()。#include<stdio.h>#defineSIZE12main(){chars[SIZE];inti;for(i=0;i<SIZE;i++)s[i]=’A’+i+32;
有以下程序的输出结果是( ) void f(int v , int w) { int t; t=v;v=w;w=t; } main( ) { int x=1,y=3,z=2; if(x>y) f(x,y); else
若有如下程序:floatsub(inta,intb){return(a*b);}main(){inti=1,j=2,k=3;printf("%4.0f\n",sub((int)sub(k+j,j),
有如下程序 #include<stdio.h> main() { int a[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16)); int i,s=0; for(i=0;i<4;i++)s+=a[i
以下函数返回a所指数组中最小的值所在的下标值fun(int*a,intn){inti,j=0,p;p=j;for(i=j;i
在C语言中,存储类型为()的变量只在使用它们时才占用存储空间。
数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及
要正确定义并初始化一个数组a,它含有5个元素,则正确的语句是______。
随机试题
导游讲解是导游语言中最能体现导游职业特点和语言水平的表达形式。()
治疗呃逆气机郁滞证,应首选的方剂是
基本预备费之计算基数为______之和。
根据我国工作场所有害因素接触限值有关标准,职业接触限值分为()三类。
报检人申请更改证单时,应填写更改申请单,交附有关函电等证明单据,经审核同意后方可办理更改手续。
国务院证券监督管理机构可以要求下列()单位,在指定的期限内提供与证券公司经营管理和财务状况有关的资料、信息。Ⅰ.证券公司的开户银行、指定商业银行、资产托管机构Ⅱ.证券交易所Ⅲ.证券登记结算机构Ⅳ.为证券公司提供服务的证券服务机构
民法是调整平等主体的公民之间的、法人之间的及公民和法人之间的()的法律规范的总和。
Life,atleastforaseed,isbetteroutintheworld.【R1】______Seedsknowhowtogetaround.【R2】______Buttheyallhavethes
下面的for语句的循环次数为()。for(x=1,y=0;(y!=19)&&(x
Havingspentsometimeinthecity,hehadnotrouble__________________(找到去历史博物馆的路).
最新回复
(
0
)