首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编制程序,要求:将文件IN92.DAT中的200个整数读入数组xx中,求出数组xx中最大数max及最大数的个数cnt和数组xx中值能被3整除或能被7整除的数的算术平均值pj(保留两位小数),结果max,cnt,pj输出到out92.dar中。 部分
请编制程序,要求:将文件IN92.DAT中的200个整数读入数组xx中,求出数组xx中最大数max及最大数的个数cnt和数组xx中值能被3整除或能被7整除的数的算术平均值pj(保留两位小数),结果max,cnt,pj输出到out92.dar中。 部分
admin
2010-06-27
69
问题
请编制程序,要求:将文件IN92.DAT中的200个整数读入数组xx中,求出数组xx中最大数max及最大数的个数cnt和数组xx中值能被3整除或能被7整除的数的算术平均值pj(保留两位小数),结果max,cnt,pj输出到out92.dar中。
部分程序、读函数read_dat(int xx[200])及输出格式已给出。
试题程序:
#include<conio.h>
#include<stdio.h>
#define N 200
void read_dat(int xx[N])
{
int i,j;
FILE *fp;
fp=fopen("IN92.DAT","r");
for(i=0;i<20;i++)
{
for(j=0;j<10;j++)
{
fscanf(fp,"%d,",&xx[i*10+j]);
printf("%d",xx[i*10+j]);
}
printf("\n");
}
fclose(fp);
}
void main()
{
int i,k,cnt,xx[N],max;
float pj;
FILE *fw;
long j=0;
clrscr();
fw=fopen("out92.dat","w");
read_dat(xx);
printf("\n\nmax=%d,cnt=%d,pj=%6.2f/n",max,cnt,pj);
fprintf(fw,"%d\n%d\n%6.2f\n",max,cnt,pj);
fclose(fw);
}
选项
答案
void main ( ) { int i,k,cnt,xx[N],max; float pj; FILE *fw; long j=0; clrscr(); fw=fopen("out92.dar","w"); read_dar(xx); max=xx[0]; for(i=1,k=0;i<N;i++) { if(xx[i]>max) max=xx[i]; /*求出数组xx中最大数max*/ if(xx[i]%3==0 ||xx[i]%7==0) { j+=xx[i]; /*求出数组xx中值能被3整除或能被7整除的数的总和*/ k++; } } for(i=0,cnt=0;i<N;i++) if(xx[i]==max) cnt++; /*求出数组xx中最大数max的个数*/ pj=(float)(j*100/k)/100; /*求出数组xx中值能被3整除或被7整除的数的平均值*/ printf("\n\nmax=%d,cnt=%d,pj=%6.2f\n",max,cnt,pj); fprintf(fw,"%d\n%d\n%6.2f\n",max,cnt,pj); fclose(fw); }
解析
本题考查的知识点如下:
(1)运算符“%”的使用。
(2)判断结构中多个条件的布尔运算。
首先,要找出数组中最大的元素。先定义第1个元素为最大的元素,然后依次和后面的元素比较,若后面的数中有大于第1个元素的,则将这个数定义为最大的元素。再和后面的数进行比较。一个数a除以b取余所得的数为0,则a能被b整除。根据题意可知,被3整除和被7整除两个条件满足一个即可,所以两个条件之间用“或”运算。在本题中,要求算术平均值保留两位小数。使用的方法是:将和乘以100除以个数强制类型转换后再除以100。为了保证和有效,我们定义了一个长整型变量来记录和。因为个数也为整型,运算符“/”在这里的含义是整除,而我们要保留小数,所以要使用强制类型转换将和乘以100的结果转换为浮点类型,这样就可以实现保留两位小数。
转载请注明原文地址:https://www.kaotiyun.com/show/Aq5Z777K
本试题收录于:
三级信息管理技术题库NCRE全国计算机三级分类
0
三级信息管理技术
NCRE全国计算机三级
相关试题推荐
从用户角度看,建立文件系统的主要目的是()。
为了保证计算机中临界资源的正确使用,进程在对临界资源访问前,必须首先调用下列哪一区的代码?()
分析下列程序。intmain(){printf("Hi");fork();printf("Hi"):fork();printf("Hi");fork();printf("H
假设有一个防火墙能够根据IP数据报的源地址判定是否允许其通过,那么这个防火墙的类型是()。
一个运行着的进程打开了一个新的文件,则指向该文件数据结构的关键指针存放在()。
在下面列出的计算机操作中,只能在操作系统内核态下运行的是()。
一个路由器的路由表如下所示。当该路由器接收到源地址为10.1.0.35,目的地址为10.4.0.78的IP数据报时,它将该数据报投递到()。
随机性是操作系统的特征之一,所谓“随机性”是指()。
3层客户/服务器结构中,包括客户机、【】和数据库服务器。
随机试题
可以抑制胰岛素分泌的激素是
A.自身变性的IgGB.DNA-抗DNA复合物C.抗甲状腺刺激素受体的抗体D.免疫血型抗体E.组胺与类风湿关节炎有关
A.诱导B细胞活化,但无需Th细胞辅助B.产生协同刺激信号,使B细胞活化C.为B细胞活化的初级信号传导分子D.产生增强的免疫应答,分泌高亲和力抗体E.产生活化第一信号,需Th细胞辅助,诱导B细胞活化
超筋梁的正截面极限承载力取决于()。
项目监理机构对工程施工质量实施控制的主要依据有()。
关于消费税的有关规定,下列陈述不正确的有()。
根据幼儿心理发展的特点,“前读写”阶段主要完成的任务是()。
新课程重视不同课程领域(特别是综合实践活动、体育、艺术等)对学生发展的独特价值,淡化学科界限,强调学科间的_________与_________。
温家宝同志在第二届中国—亚欧博览会开幕式暨中国—亚欧经济发展合作论坛上发表题为《再创丝绸之路新辉煌》的演讲。下列关于“丝绸之路”的说法,不正确的是()。
交换下列积分的积分顺序:
最新回复
(
0
)