首页 | 考研 | MBA | 专升本 | 成考 | 自考 | 高考 | 中考 | 出国 | 外语 | 电脑 | 公务员 | 司法 | 财考 | 资格考试 | 论文写作
  计算机二级考试 | 计算机一三四级考试 | 软件水平 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 | JAVA资格
 淘学考试计算机正文
 

2006年9月全国计算机等级考试四级上机试题
 
 
 


编辑:xujie 时间:2007-11-27 来源:淘学考试网 推荐好友




机试一:
考试时间:9月23日 15:30
   抽到题目:已知数据文件IN.DAT中存有200个两位数且相邻的两个数之间均不相等,并已调用函数readDat()把这些数存入数组b中,请考生编制一个函数jsVal(),实现的功能是对经常上下波动的数据可采用只记录峰值的数据压缩方法,即每次将采样到的当前值和前一次值比较,如数据变化方向改变(原递增现递减或原递减现递增),说明已过峰值,这时就将当前值记录下来,接着将结果依次存入数据b中(从0开始存放),注意数组b中的第一个数据a[0]原样存入b[0]单元中。最后调用输出函数writeDat()把结果c输出到文件OUT.DAT中。
例如:原数据: 35,69,87,73,62,54,60,70,......
压缩后: 35,73,60,......
注意:部分源程序存在文件PROG1.C文件中。程序中已定义:a[200]、b[200]。
请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat的内容。

补充函数:

void jsVal()
{ int i;
b[0]=a[0];cnt=1;
for(i=1;i
if((a>a[i-1]&&a>a[i+1])||(a}

机试二:
考试时间:9月23日 15:00
  已知在文件IN.DAT中存有N个实数(N<200), 函数ReadDat( )是读取这N个实数并存入数组xx中。请编制函数CalValue( ), 其功能要求:
1.求出这N个实数的平均值aver;
2.分别求出这N个实数中大于平均值aver的实数的整数部分值之和sumint以及该实数的小数部分值之和sumdec, 最后调用函数WriteDat()把所求的结果输出到文件OUT2.DAT中。
注意: 部分源程序存放在PROG1.C中。
请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

void CalValue(void)

{

int i ;

long val ;

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

aver += xx ;

aver /= (double) N ;

for(i = 0 ; i < N ; i++) {

if(xx > aver) {

val = (long) xx ;

sumint += val ;

sumdec += (xx - val) ;

}

}

}

机试三:
考试时间:9月23日 14:00
   抽到题目:已知在文件IN.DAT中存有10x20个实数, 并已通过函数ReadDat( )数组aa[10][20]中。请编制函数jsVal(), 其功能要求:
1.分别剔除每行的第一个和最后一个数,求出剩余18个数的平均值存入数组bb[10]中;
2.将bb[10]中的数按从达到小顺序排列,结果仍存入bb[10]中。 最后调用函数WriteDat()把所求的结果输出到文件OUT.DAT中。

注意: 部分源程序存放在PROG1.C中。

请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
int aa[10][20];
float bb[10];
void jsVal()
{
int i,j;
float a;
for(i=1;i<=10;i++)
{
bb=0;
for(j=1;j<=19,j++)
bb+=aa[j];
bb/=18;
}
for(i=1;i<10;i++)
for(j=1;j<=10-i;j++)
if(bb
{
a=bb[j];
bb[j]=bb[j-1];
bb[j-1]=a;
};
}

机试四:
   1.已知数据文件IN.DAT中存有10组每组20个四位数的数据, 每个数据间用空格分隔,并已调用读函数readDat()把这10组数据存入数组aa中(其中,aa定义为int aa[10][20]),请考生编制一函数jsVal(), 其功能是: 首先计算每组中的数属于奇数的算术平均值,然后取每组小于其算术平均值的最大一个四位数依次存入数组bb?其中,数组bb定义为int bb[10],其中bb[0]为第一组中符合条件的数,bb[1]为第二组中符合条件的数,其它依此类推),最后调用输出函数writeDat()把结果bb输出到文件OUT.DAT中。
注意: 部分源程序存在文件PROG1.C文件中。程序中已定义全局变量: aa[10][20]、bb[10]
请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

void jsVal()
{ int i,j,max,cnt;
double aver;
for(i=0;i<10;i++)
{ aver=0.0; cnt=0; max=0;
for(j=0;j<20;j++)
if(aa[j]%2) { cnt++; aver+=aa[j];}
if(cnt==0) aver=0.0;
else aver/=(double)cnt;
for(j=0;j<20;j++)
if(aa[j]max) max=aa[j];
bb=max;
}
机试五:
   已知数据文件IN.DAT中存有10组每组20个四位数的数据, 每个数据间用空格分隔,并已调用读函数readDat()把这10组数据存入数组aa中(其中,aa定义为int aa[10][20]),请考生编制一函数jsVal(), 其功能是: 首先计算每组中的数中十位数位置上的数字是3、6、9的数的算术平均值,然后取每组小于其算术平均值的最大一个四位数依次存入数组bb中(其中,数组bb定义为int bb[10],其中bb[0]为第一组中符合条件的数,bb[1]为第二组中符合条件的数,其它依此类推),最后调用输出函数writeDat()把结果bb输出到文件OUT.DAT中。
注意: 部分源程序存在文件PROG1.C文件中。程序中已定义全局变量: aa[10][20]、bb[10]
请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。
void jsVal()
{ int i,j,max,cnt,sw;
double aver;
for(i=0;i<10;i++)
{ aver=0.0; cnt=0; max=0;
for(j=0;j<20;j++)
{ sw=aa[j]0/10;
    if(sw==3||sw==6||sw==9) { cnt++; aver+=aa[j];}
}
if(cnt==0) aver=0.0;
else aver/=(double)cnt;
for(j=0;j<20;j++)
  if(aa[j]max) max=aa[j];
bb=max;
}
}

机试六:
   已知在文件IN.DAT中存有N个实数(N<200), 函数ReadDat( )读取这N个实数并存入数组xx中。请编制函数CalValue( ), 其功能要求是:
  1.求出这N个实数的平均值aver;
  2.分别求出这N个实数的整数部分值的平均值averint 以及其小数部分值的平均值averdec。
最后调用函数WriteDat( )把所求的结果输出到文件OUT10.DAT中。
注意: 部分源程序存放在PROG1.C中。
请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
void CalValue(void)
{
int i ;
for(i=0; i
aver += xx ;
averint += (int) xx ;
}
averdec = aver - averint ;
aver /= (double) N ;
averint /= (double) N ;
averdec /= (double) N ;
}

机试七:
已知数据文件IN.DAT中存有10组每组20个四位数的数据, 每个数据间用空格分隔,并已调用读函数readDat()把这10组数据存入数组aa中(其中,aa定义为int aa[10][20]),请考生编制一函数jsVal(), 其功能是: 首先计算每组中的数的最大值和最小值的算术平均值,然后取每组小于其算术平均值的最大一个四位数依次存入数组bb中(其中,数组bb定义为int bb[10],其中bb[0]为第一组中符合条件的数,bb[1]为第二组中符合条件的数,其它依此类推),最后调用输出函数writeDat()把结果bb输出到文件OUT.DAT中。
  注意: 部分源程序存在文件PROG1.C文件中。
  程序中已定义全局变量: aa[10][20]、bb[10]
  请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

void jsVal()
{ int i,j,max1,max2,min,cnt;
double aver;
for(i=0;i<10;i++)
{ aver=0.0; cnt=0; min=9999; max1=max2=0;
for(j=0;j<20;j++)
{ if(aa[j]>max1) max1=aa[j];
if(aa[j] }
aver=(double)(max1+min)/2.0;
for(j=0;j<20;j++)
if(aa[j]max2) max2=aa[j];
bb=max2;
}
}

机试八:
已知在文件IN.DAT中存有N个实数(N<200), 函数ReadDat( )是读取这N个实数并存入数组xx中。请编制函数CalValue( ), 其功能要求:
1.求出这N个实数的小数部分值的平均值aver;
2.分别求出这N 个实数中其小数部分值大于平均值aver的该数的整数部分值之和sumint以及该数的小数部分之和sumdec, 最后调用函数WriteDat()把所求的结果输出OUT5.DAT文件中。
  注意: 部分源程序存放在PROG1.C中。
  请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。

void CalValue(void)
{
int i ;
long val ;
float dec ;

for(i = 0 ; i < N ; i++) {
val = (long) xx ;
aver += xx - val ;
}
aver /= (double) N ;
for(i = 0 ; i < N ; i++) {
val = (long) xx ;
dec = xx - val ;
if(dec > aver) {
sumint += val ;
sumdec += (xx - val) ;
}
}
}

 

 

 相 关 内 容



.

  推荐课程
 
 
 
 
 
 
 考试资料
  软件水平
 微软认证
版权信息 - 关于我们 - 联系方式 - 服务承诺 - 客户投诉 - 广告服务 - 网站合作 - 会员服务 - 友情链接 - 站长统计3
1 不良信息
举报中心
文明办网文明上网举报电话:15964542668
举报邮箱:topej@163.com
2 网络110
报警服务
服务热线:15964542668 电子邮件:guoyong@topej.com 服务 QQ:350125289
淘学之家(www.topej.com)旗下网站 ICP注册号:鲁ICP备07016860号