首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编制程序,要求:将文件IN92.DAT中的200个整数读入数组xx中,求出数组xx中最大数max及最大数的个数ont和数组xx中值能被3整除或能被7整除的数的算术平均值pj(保留两位小数),结果max, cnt,pj输出到out92.dar中。 部分程
请编制程序,要求:将文件IN92.DAT中的200个整数读入数组xx中,求出数组xx中最大数max及最大数的个数ont和数组xx中值能被3整除或能被7整除的数的算术平均值pj(保留两位小数),结果max, cnt,pj输出到out92.dar中。 部分程
admin
2011-11-13
43
问题
请编制程序,要求:将文件IN92.DAT中的200个整数读入数组xx中,求出数组xx中最大数max及最大数的个数ont和数组xx中值能被3整除或能被7整除的数的算术平均值pj(保留两位小数),结果max, cnt,pj输出到out92.dar中。
部分程序、读函数read_dat(intxx[200])及输出格式已给出。
试题程序:
#include<conio.h>
#include<stdi0.h>
#define N 200
void read_dar(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);
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.dat" , "w" ); read_dat (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%dkn%6.2 fin" ,max, cnt,pj ); fclose (fw);
解析
本题考查的知识点如下:
(1)运算符“%”的使用。
(2)判断结构中多个条件的布尔运算。
首先,要找出数组中最大的元素。先定义第1个元素为最大的元素,然后依次和后面的元素比较,若后面的数中有大于第1个元素的,则将这个数定义为最大的元素。再和后面的数进行比较。一个数a除以b取余所得的数为0,则a能被b整除。根据题意可知,被3整除和被7整除两个条件满足一个即可,所以两个条件之间用“或”运算。在本题中,要求算术平均值保留两位小数。使用的方法是:将和乘以100除以个数强制类型转换后再除以100。为了保证和有效,我们定义了一个长整型变量来记录和。因为个数也为整型,运算符“/”在这里的含义是整除,而我们要保留小数,所以要使用强制类型转换将和乘以100的结果转换为浮点类型,这样就可以实现保留两位小数。
转载请注明原文地址:https://kaotiyun.com/show/sgvZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
在数据库的三级模式体系结构中,存在两次映像,一次是从外模式到模式的映像,一次是______到______的映像。
散列法存储中处理碰撞的方法主要有两类:拉链法和_____。
SQL语言集数据查询、数据操纵、数据定义和数据控制功能为一体,其中语句GRANT、REVOKE是实现_____功能。
在SQL语言中,如果要为一个基本表增加列和完整性约束条件,应该使用SQL语句【】。
严格两阶段封锁协议要求对更新数据的封锁必须保持到事务_____。
系统中有N个进程,则某个进程等待队列中最多可有_____个进程,
完成科学地组织和存储数据并对数据进行高效地获取和维护的系统软件是______。
若关系模式R的规范化程度达到4NF,则R的属性之间不存在非平凡且非_____的多值依赖。
用于视图的数据包含
下面不属于对属性列和视图的操作权限的操作有
随机试题
根据我国《婚姻法》的规定,下列不属于夫妻人身关系的是()。
StaffSgt.NicholasLanierhasenteredwhathecallsthe"vastunknown."Acombatveteranandfathertofourdaughters,hecan’
医疗机构开展放射诊疗工作,应当具备的条件说法错误的是
A.无贫血B.轻度贫血C.中度贫血D.重度贫血E.极重度贫血Hb量<30g/L提示
客源管理是以()的个人信息和需求信息为中心。
下列关于借款费用资本化的暂停或停止的表述中,正确的有()。
马克思指出,实现人的全面发展的唯一途径是()。
改革开放这场历史上从未有过的大改革大开放,极大地调动了亿万人民的积极性,使我国成功实现的伟大转折是
设A是n阶非零实矩阵,A*是A的伴随矩阵,AT是A的转置矩阵,如果AT=A*,证明任一n维列向量均可由矩阵A的列向量线性表出.
J.Martin认为从结构化设计和分析来提高数据生产率的做法收效甚微,()因素影响其效果。Ⅰ.应用需求变化使系统改动很大,无法预料Ⅱ.数据格式的不一致,导致数据共享性差Ⅲ.没有高级数据库语言,没有良好的数据库设计
最新回复
(
0
)