首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写函数fun,其功能是:统计出x所指数组中能被e整除的元素个数,通过函数值返回主函数;同时,计算不能被e整除的元素之和,放到形参sum所指的存储单元中。 例如,当数组x内容为1,7,8,6,10,15,11,13,29,31,整数e内容为3时,
请编写函数fun,其功能是:统计出x所指数组中能被e整除的元素个数,通过函数值返回主函数;同时,计算不能被e整除的元素之和,放到形参sum所指的存储单元中。 例如,当数组x内容为1,7,8,6,10,15,11,13,29,31,整数e内容为3时,
admin
2020-06-02
20
问题
请编写函数fun,其功能是:统计出x所指数组中能被e整除的元素个数,通过函数值返回主函数;同时,计算不能被e整除的元素之和,放到形参sum所指的存储单元中。
例如,当数组x内容为1,7,8,6,10,15,11,13,29,31,整数e内容为3时,输出结果应该是:n=2,sum=110
注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
#include<stdio.h>
#pragma warning(disable:4996)
#define N 10
int fun(int x[],int e,int*sum)
{
}
main()
{
void NONO();
int x[N]={1,7,8,6,10,
15,11,13,29,31),e=3,
n,sum;
n=fun(x,e,&sum);
printf("n=%d,sum=%d\n",n,sum);
NONO();
}
void NONO()
{
/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
int i,j,x[10],n,e,sum;
FILE*rf,*wf;
rf=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i=0;i<5;i++) {
for(j=0;j<10;j++)
fscanf(rf,"%d",&x[j]);
fscanf(rf,"%d",&e);
n=fun(x,e,&sum);
fprintf(wf,"%d,%d\n",n,sum);
}
fclose(rf);
fclose(wf);
}
选项
答案
int fun(int x[],int e,int*sum) { int i,count=0; *sum=0; for(i=0;i<N;i++) { if(x[i]% e==0) { count++; } else { *sum+=x[i]; } } return count; }
解析
程序首先定义循环变量i,整型变量count,count赋初值为0,count用来统计可以被e整除的元素个数;由于sum是main函数传入的指针变量,用来存放不能被e整除的元素之和,所以程序需要对sum所指变量赋初值为0;接着通过for循环变量数组x,将x
对e求余,若余数为0,则当前x
可以被e整除,将count自增1,若余数不为0,则x
不能被e整除,将x
累加到sum所指变量中,最后将count作为函数返回值返回。
转载请注明原文地址:https://kaotiyun.com/show/DeCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includemain(){intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;for(i=0;i
以下关于C语言数据类型使用的叙述中错误的是
支持子程序调用的数据结构是
有下列程序:voidf(int*q)main(){inti=0;{inta[5]={1,2,3,4,5},i;for(;i
下列数据结构中,不能采用顺序存储结构的是
在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是
为了建立如图所示的存储结构(即每个结点含两个域,data是数据域,next是指向结点的指针域).则在________处应填入的选项是Stractlink{chardata;________}node;
若有以下程序typedefstructstu{charname[10],gender;intscore;)STU;voidf(char*p){strcpy(p,"Qian");}main(){STUa={"Zha
若有以下程序structstu{char*name,gender;intscore;};main(){structstua={NULL,’m’,290),b;a.name=(char*)malloc(10);
随机试题
科学教育学建立的标志是1806年出版的()
Ifyouwanttopasstheexam,youshouldchangeyourattitude______learning.
卧床、无发热或异常消耗的成年男性病人每天最低热卡需要是
A.错觉B.幻觉C.被害妄想D.关系妄想E.影响妄想
图4-74所示三铰支架上作用两个转向相反、大小相等且不为零的力偶m1和m2,支架自重不计。则支座B的约束力为()。
战略管理者是商品流通企业战略管理的主体。一般来说,战略管理者包括()等。
2014年,全国共投入研究与试验发展(R&D)经费13015.6亿元,比上年增加1169.0亿元;研究与试验发展(R&D)经费投入强度(与国内生产总值之比)为2.05%,比上年提高0.04个百分点。按研究与试验发展人员(全时工作量)计算的人均经费支出为35
设α1,α2为齐次线性方程组Ax=0的基础解系,β1,β2为非齐次线性方程组AX=b的两个不同解,则方程组AX=b的通解为().
Theexpression"stepbackintimeatleastahundredyears"(Para.2)isintendedtoconveytheideathatWhichofthefollowin
Sociologistsuse"power"torefertothecapacityofpeopletocontrolorinfluencetheactionsofothers.Sociologistsstudypo
最新回复
(
0
)