您现在的位置: 中国IT实验室 >> 计算机等级考试 >> 最新试题 >> 文章正文
全国计算机等级考试三级C语言上机题91-100

ChinaITLab收集整理  2006-3-11  保存本文  推荐给好友  QQ上看本站  收藏本站


 题目91
请编制程序prog1.c,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数cnt1和偶数的个数cnt2以及数组xx下标为偶数的元素值的算术平均值pj(保留2位小数)。
结果cnt1,cnt2,pj输出到out.dat中。
部分程序、读数据函数read_dat(int xx[200])及输出格式已给出。
#include
#include
#define N 200

void read_dat(int xx[N])
{
 int i,j;
 FILE *fp;

 fp=fopen("in.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,j,sum;
 int cnt1,cnt2,xx[N];
 float pj;
 FILE *fw;

 clrscr();
 fw=fopen("out.dat","w");
 read_dat(xx);
/
 sum=0; pj=0.0; cnt1=cnt2=0;
 for(i=0;i { if(xx[i]%2) cnt1++;
 else cnt2++;
 if(i%2==0) {pj+=xx[i];sum++;}
 }
 pj/=sum;

/

printf("\n\ncnt1=%d,cnt2=%d,pj=%6.2f\n",cnt1,cnt2,pj);
fprintf(fw,"%d\n%d\n%6.2f\n",cnt1,cnt2,pj);
fclose(fw);
}



☆题目92
请编制程序prog1.c,从文件IN.DAT中读取200个整数至数组xx中,求出最大数max及最大数的个数cnt和数组xx中能被3整除或能被7整除的算术平均值pj(保留2位小数)。
 结果max,cnt,pj输出到OUT.DAT中。
 部分程序、读数据函数read_dat(int xx[200])及输出格式已给出。
#include
#include
#define N 200

void read_dat(int xx[N])
{
 int i,j;
 FILE *fp;

 fp=fopen("in.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 m,temp,n,sum;
 int cnt,xx[N],max ;
 float pj;
 FILE *fw;

 clrscr();
 fw=fopen("out.dat","w");
 read_dat(xx);
/
 cnt=0; max=xx[0]; pj=0.0; n=0;
 for(m=0;m if(max for(m=0;m {if(xx[m]==max) cnt++;
 if(xx[m]%3==0||xx[m]%7==0)
 { pj+=xx[m]; n++; }
 }
 pj/=n;

/

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);
}


☆题目93
请编制函数ReadDat()实现从文件IN.DAT中读取1000个十进制整数到数组xx中;请编制函数Compute(),分别计算出xx中奇数的个数odd,偶数的个数even,平均值aver以及方差totfc的值,最后调用函数WriteDat()把结果输出到OUT.DAT文件中。
 计算方差的公式如下:
 N 2
 totfc=1/N ∑ (xx[i]-aver)
 i=1
 原始数据文件存放的格式是:每行存放10个数,并用逗号隔开。(每个数均大于0且小于等于2000)
 部分源程序存在文件prog1.c中。
 请勿改动主函数main()和输出数据函数writeDat()的内容。
#include
#include
#include
#define MAX 1000

int xx[MAX],odd=0,even=0;
double aver=0.0,totfc=0.0;
void WriteDat(void);

int ReadDat(void)
{
 int i;
 FILE *fp;

 if((fp=fopen("IN.DAT","r"))==NULL) return 1;
/编制函数ReadDat
 for(i=0;i { fscanf(fp,"%d,",&xx[i]);
 if((i+1)%10==0)
 fscanf(fp,"\n");
 }
/
 fclose(fp);
 return 0;
}

void Compute(void)
{ int i;
 for(i=0;i { if(xx[i]%2) odd++;
 else even++;
 aver+=xx[i];
 }
 aver/=MAX;
 for(i=0;i totfc+=(xx[i]-aver)*(xx[i]-aver);
 totfc/=MAX;
}

[1] [2] [3] [4] 下一页  





 相关文章  热门文章
应付计算机等级二级考试新大纲:公共基础知识
计算机等级考试三,四级证书
计算机等级考试一,二级证书
2006年4月1日计算机等级考试公共基础知识考
2006年全国计算机等级考试四级考试大纲
2006年全国计算机等级考试三级信息管理技术
2006年全国计算机等级考试二级Access考试大
全国计算机等级考试详细的介绍
全国计算机等级考试四级通关攻略
全国计算机等级考试上机考试应试技巧

 文章评论


认证培训
热门专题       more
相关下载
论坛新帖
博 客