首页 | 外语类 | 职业资格 | 公务员 | IT认证 | 财务会计 | 学历类 | 建筑工程 | 医药类 | 外贸类 | 知道 | 论坛   
  二级考试 | 考试动态 | 政策大纲 | 报考指南 | 一级考试 | 三级考试 | 四级考试 | 综合指导
  当前位置:中华考试网 > IT 认证 > 计算机等级考试 > 综合指导 > 文章内容
  
2006年9月全国等级考试三级c语言上机题库(八十二)
中华考试网     [ 2006-12-13 ]

题目82(无忧id 64 素数题)

 

已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出所有这些四位数是素数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果cnt,pjz1,pjz2输

出到out.dat文件。

例如:5591是素数,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。

9812是非素数,则该数不满足条件计算平均值pjz2。

部分源程序存在文件prog1.c中。

程序中已定义数组:a[300],已定义变量:cnt,pjz1,pjz2

请勿改动主函数main()、读函数ReadDat()和写函数writeDat()的内容。

#include <stdio.h>

int a[300],cnt=0;

double pjz1=0.0,pjz2=0.0;

 

int isP(int m)

{int i;

 

for(i=2;i<m;i++)

if(m%i==0)return 0;

return 1;

}

 

jsValue()

{int i;

for(i=0;i<300;i++)

if(isP(a[i])) {pjz1+=a[i];cnt++;}

else pjz2+=a[i];

if(cnt==0) pjz1=0;

else pjz1/=cnt;

if(300-cnt==0) pjz2=0;

else pjz2/=(300-cnt);

}

 

main()

{

int i;

 

readDat();

jsValue();

writeDat();

printf("cnt=%d\n满足条件的平均值pzj1=%7.2f\n不满足条件的平均值pzj2=%7.2f\n",cnt,pjz1,pjz2);

}

 

readDat()

{

FILE *fp;

int i;

fp=fopen("in.dat","r");

for(i=0;i<300;i++)fscanf(fp,"%d",&a[i]);

fclose(fp);

}

 

writeDat()

{

FILE *fp;

int i;

fp=fopen("out.dat","w");

fprintf(fp,"%d\n%7.2f\n%7.2f\n",cnt,pjz1,pjz2);

fclose(fp);

}

考试编辑:admin

 评论与纠错
请您发表评论或文章错误报告。查看所有评论
 注意文明用语并遵守相关规定
 48小时热文排行
 今日更新
 真题排行
 模拟题排行
关于本站  网站声明  广告服务  联系方式  站内导航  友情链接
Copyright © 2007 中华考试网(Examw.com) All Rights Reserved