首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是:求出数组周边元素的平均值并作为函数值返回给主函数中的s。例
admin
2021-04-28
26
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,定义了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。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define N5
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;
doubie s;
system("CLS");
printf("***The array***\n");
for(i=0;i<N;i++)
{for(j=0;j<N;j++)
{print:f("%4d",a
[j]);)
print:f("\n");
}
s=fun(a);
printf("***THE RESULT***\n");
printf("The sum is:%lf\n",s);
/*********found*********/
wf=fopen("out.dat","w");
fprintf(wf,"%lf",s);
fclose(wf);
/*********found*********/
}
选项
答案
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)/*只要下标中有一个为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/OJtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序voidswap(char*x,char*y){chart;t=*x;*x=*y;*y=t;}main(){char*s1="abc",*s2="123";swap(s
有以下程序#includemain(){chara=’H’;a=(a>=’A’&&a<=’Z’)?(a+32):a;printf("%c\n",a);}程序运行后的输出结果是
若有定义语句:char*s1="OK",*s2="ok";以下选项中,能够输出"OK"的语句是
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面属于定义阶段任务的是()。
学生和课程的关系模式定义为:S(S#,Sn,Sd,Dc,Sa)(其属性分别为学号、姓名、所在系、所在系的系主任、年龄);C(C#,Cn,P#)(其属性分别为课程号、课程名、先选课);SC(S#,C#,G)(其属性分别学号、课程号和成绩)。关系中包含
按照C语言规定的用户标识符命名规则,不能出现在标识符中的是
某二叉树中度为2的结点有10个,则该二叉树中有()个叶子结点。
下列关于二叉树的叙述中,正确的是
已知二叉树后序遍历序列是CDABE,中序遍历序列是CADEB,它的前序遍历序列是()。
随机试题
社会主义道德建设要解决的是()。
单位时间内的采样次数称为采样频率,其基本单位是____________。
医疗机构使用未经卫生行政部门指定的血站供应的血液的法律责任
依据委托监理合同示范文本规定,( )属于额外的监理工作。
(2000年考试真题)甲、乙双方签订了买卖合同,在合同履行过程中,发现该合同履行费用的负担问题约定不明确。在这种情况下,可供甲、乙双方选择的履行规则有()。
企业开具银行承兑汇票到期而无力支付票款,应按该票据的账面余额贷记()账户。
导游证的设立,是为了()。
学习迁移
在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimiAsInteger,nAsIntegerFori=
Thereare10blanksinthepassage.Usethewords(phrases)givenintheboxtofillintheblanks,changingtheformwherenece
最新回复
(
0
)