2011年全国计算机等级考试四级考试上机题

日期:12-29| http://www.59wj.com |四级上机题库|人气:921

2011年全国计算机等级考试四级考试上机题

 1、 已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:将第1个数与第200个数进行比较, 若两数不等, 则取较大者作为下列统计用的符合条件数,若两数相等, 则不作为符合条件数; 将第2个数与第199个数进行比较,若两数不等, 则同样取较大者, 若两数相等, 则同样不作为符合条件数; 直至第100个数与第101个数比较为止, 接着计算出这些符合条件数中的最小值min、最大值max以及这些符合条件数的平均值aver。最后main()函数调用写函数writeDat()把结果输出到OUT.DAT文件中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、min、max、aver

请勿改动数据文件IN.DAT中的任何数据、主函数main()、
读函数readDat()和写函数writeDat()的内容。

*/#include 
#define MAX 200int a[MAX], min, max;double aver ; 
void jsVal()
{
 int b[MAX/2], i, n=0;
 for(i = 0; i < MAX/2; i++)
 if(a[i]!=a[MAX-i-1])
 b[n++] = a[i] > a[MAX-i-1] ? a[i] : a[MAX-i-1];
 max=min=b[0]; aver=b[0];
 for(i = 1; i < n; i++)
 { aver+=b[i];
 if(b[i] > max) max=b[i]; else if(b[i] < min) min=b[i];
 }
 aver=aver/n;/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 readDat() ;
 jsVal() ;
 printf("结果min=%d,max=%d,aver=%6.2lf\n", min, max, aver) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 fp = fopen("out.dat", "w") ;
 fprintf(fp, "%d\n%d\n%6.2lf\n", min, max, aver) ;
 fclose(fp) ;}

希望与更多计算机等级考试的网友交流,

.

www.59wj.com

 2、已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:从数组a的头开始,依次取每20个数中的最小值组成一个数, 这样可以获得10个新数并存入数组b中,接着把数组b中的数按从大到小的顺序重新存入数组b中。最后main()函数调用写函数writeDat()把结果b输出到OUT.DAT文件中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、b[10]
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX], b[10];void jsVal(){/**/
 int i,j,k=0,t;
 for(i=0; i < 10; i++)
 { b[i]=a[k++];
 for(j=1; j < 20; j++,k++)
 if(b[i] > a[k]) b[i]=a[k];
 }
 for(i=0; i < 9; i++)
 { k=i;
 for(j=i+1; j < 10; j++)
 if(b[j] > b[k]) k=j;
 if(k!=i){t=b[i]; b[i]=b[k]; b[k]=t;}
 }/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 int i ;
 readDat() ;
 jsVal() ;
 for(i = 0 ; i < 10 ; i++)
 printf("b[%d]=%d\n", i, b[i]) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 int i ;
 fp = fopen("out.dat", "w") ;
 for(i = 0 ; i < 10 ; i++) fprintf(fp, "%d\n", b[i]) ;
 fclose(fp) ;}

希望与更多计算机等级考试的网友交流,

.


 

www.59wj.com

3、已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:将第1个数减第200个数, 若差值大于零, 则取差值作为下列统计用的符合条件数,若差值小于等于零, 则差值不作为符合条件数; 将第2个数减第199个数,若差值大于零, 则同样取差值, 若差值小于等于零, 则差值同样不作为符合条件数;直至第100个数减第101个数为止,接着统计出这些符合条件数中的最大5个不重复的数按从大到小顺序存入数组b中。最后main( )函数调用写函数writeDat()把结果b输出到OUT.DAT文件中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、b[5]
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX], b[5];void jsVal(){/**/
 int t[MAX/2],i,j,k=0,tt;
 for(i=0; i < MAX/2; i++)
 { tt=a[i]-a[MAX-i-1];
 if(tt>0) t[k++]=tt;
 }
 for(i=0; i < 5; i++) b[i]=0;
 for(i=0; i < k; i++)
 if(b[0] < t[i]) b[0]=t[i];
 for(j=1; j < 5; j++)
 for(i=0; i < k; i++)
 if(t[i]>b[j] && t[i] < b[j-1]) b[j]=t[i];/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 int i ;
 readDat() ;
 jsVal() ;
 for(i = 0 ; i < 5 ; i++)
 printf("b[%d]=%d\n", i, b[i]) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 int i ;
 fp = fopen("out.dat", "w") ;
 for(i = 0 ; i < 5 ; i++) fprintf(fp, "%d\n", b[i]) ;
 fclose(fp) ;}

www.59wj.com

4、 已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:从数组a的头开始,依次每20个数的平均值组成一个新数,这样可以获得10个新数并存入数组b中,接着把数组b中的数按从小到大的顺序重新存入数组b中。最后main( )函数调用写函数writeDat()把结果b输出到OUT.DAT文件中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、b[10]
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX];double b[10] ;void jsVal(){/**/
 int i,j,k=0;
 double t;
 for(i=0; i<10; i++)
 { b[i]=a[k++];
 for(j=1; j<20; j++)
 b[i]+=a[k++];
 b[i]/=20;
 }
 for(i=0; i < 9; i++)
 { k=i;
 for(j=i+1; j<10; j++)
 if(b[k] > b[j]) k=j;
 if(k!=i)
 { t=b[k]; b[k]=b[i]; b[i]=t;}
 }/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 int i ;
 readDat() ;
 jsVal() ;
 for(i = 0 ; i < 10 ; i++)
 printf("b[%d]=%7.2lf\n", i, b[i]) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 int i ;
 fp = fopen("out.dat", "w") ;
 for(i = 0 ; i < 10 ; i++) fprintf(fp, "%7.2lf\n", b[i]) ;
 fclose(fp) ;}

www.59wj.com

 5、已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中, 请考生编制一函数jsVal(),其功能是: 将第1个数减第200个数, 若差值小于零, 则取差值的绝对值作为下列统计用的符合条件数, 若差值大于等于零, 则差值不作为符合条件数; 将第2个数减第199个数, 若差值小于零, 则同样取差值的绝对值, 若差值大于等于零, 则差值同样不作为符合条件数;直至第100个数减第101个数为止,接着计算出这些符合条件数中的最小值min、最大值max以及这些符合条件数的平均值aver。最后main()函数调用写函数writeDat()把结果输出到文件OUT.DAT中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、min、max、aver
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX], min, max;double aver ;void jsVal(){/**/
 int b[MAX/2],t,i,k=0;
 for(i=0; i < MAX/2; i++)
 { t=a[i]-a[MAX-i-1];
 if(t < 0) b[k++]=-t;
 }
 max=min=b[0]; aver=b[0];
 for(i=1; i < k; i++)
 { aver+=b[i];
 if(max < b[i]) max=b[i]; else if(min > b[i]) min=b[i];
 }
 aver/=k;/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 readDat() ;
 jsVal() ;
 printf("结果min=%d,max=%d,aver=%6.2lf\n", min, max, aver) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 fp = fopen("out.dat", "w") ;
 fprintf(fp, "%d\n%d\n%6.2lf\n", min, max, aver) ;
 fclose(fp) ;}

www.59wj.com

 6、 已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:从数组a的头开始,依次取每20个数中的最小值组成一个数, 这样可以获得10个新数并存入数组b中,接着把数组b中的数按从大到小的顺序重新存入数组b中。最后main()函数调用写函数writeDat()把结果b输出到OUT.DAT文件中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、b[10]
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX], b[10];void jsVal(){/**/
 int i,j,k=0;
 for(i=0; i < 10; i++)
 { b[i]=a[k++];
 for(j=1; j < MAX/10; j++,k++)
 if(b[i]>a[k]) b[i]=a[k];
 }

 for(i=0; i < 9; i++)
 for(j=i+1; j < 10; j++)
 if(b[i] < b[j])
 { k=b[i]; b[i]=b[j]; b[j]=k;}/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 int i ;
 readDat() ;
 jsVal() ;
 for(i = 0 ; i < 10 ; i++)
 printf("b[%d]=%d\n", i, b[i]) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 int i ;
 fp = fopen("out.dat", "w") ;
 for(i = 0 ; i < 10 ; i++) fprintf(fp, "%d\n", b[i]) ;
 fclose(fp) ;}

www.59wj.com

7、 已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:从数组a的头开始,依次每20个数的平均值组成一个新数,这样可以获得10个新数并存入数组b中,接着把数组b中的数按从大到小的顺序重新存入数组b中。最后main( )函数调用写函数writeDat()把结果b输出到OUT.DAT文件中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、b[10]
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX];double b[10] ; void jsVal(){/**/
 int i,j,k=0; double t;
 for(i=0; i < 10; i++)
 { b[i]=a[k++];
 for(j=1; j < MAX/10; j++)
 b[i]+=a[k++];
 b[i]/=MAX/10;
 }
 for(i=0; i < 9; i++)
 { k=i;
 for(j=i+1; j < 10; j++)
 if(b[k] < b[j]) k=j;
 if(k!=i)
 { t=b[i]; b[i]=b[k]; b[k]=t;}
 }/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 int i ;
 readDat() ;
 jsVal() ;
 for(i = 0 ; i < 10 ; i++)
 printf("b[%d]=%7.2lf\n", i, b[i]) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 int i ;
 fp = fopen("out.dat", "w") ;
 for(i = 0 ; i < 10 ; i++) fprintf(fp, "%7.2lf\n", b[i]) ;
 fclose(fp) ;}

www.59wj.com

8、 已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:将第1个数与第200个数进行比较, 若两数不等, 则取较小者作为下列统计用的符合条件数,若两数相等, 则不作为符合条件数; 将第2个数与第199个数进行比较,若两数不等, 则同样取较小者, 若两数相等, 则同样不作为符合条件数; 直至第100个数与第101个数比较为止, 接着计算出这些符合条件数中的最小值min、最大值max以及这些符合条件数的平均值aver。最后main()函数调用写函数writeDat()把结果输出到OUT.DAT文件中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、min、max、aver
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX], min, max;double aver ;void jsVal(){/**/
 int i,j,m,k=0;
 min=9999; max=0; aver=0.0;
 for(i=0; i < MAX/2; i++)
 if(a[i]!=a[MAX-i-1])
 { k++; m=a[i]>a[MAX-i-1]?a[MAX-i-1]:a[i];
 aver+=m;
 if(max < m)max=m; else if(min>m) min=m;
 }
 aver/=k;/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 readDat() ;
 jsVal() ;
 printf("结果min=%d,max=%d,aver=%6.2lf\n", min, max, aver) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 fp = fopen("out.dat", "w") ;
 fprintf(fp, "%d\n%d\n%6.2lf\n", min, max, aver) ;
 fclose(fp) ;}

www.59wj.com

9、 已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:从数组a的头开始,依次每20个数的平均值组成一个新数,这样可以获得10个新数并存入数组b中,接着把数组b中的数按从大到小的顺序重新存入数组b中。最后main( )函数调用写函数writeDat()把结果b输出到OUT.DAT文件中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、b[10]
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX];double b[10] ;void jsVal(){/**/
 int i,j,k=0; double t;
 for(i=0; i < 10; i++)
 { b[i]=a[k++];
 for(j=1; j < MAX/10; j++)
 b[i]+=a[k++];
 b[i]/=MAX/10;
 }
 for(i=0; i < 9; i++)
 { k=i;
 for(j=i+1; j < 10; j++)
 if(b[k] < b[j]) k=j;
 if(k!=i)
 { t=b[i]; b[i]=b[k]; b[k]=t;}
 }/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 int i ;
 readDat() ;
 jsVal() ;
 for(i = 0 ; i < 10 ; i++)
 printf("b[%d]=%7.2lf\n", i, b[i]) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 int i ;
 fp = fopen("out.dat", "w") ;
 for(i = 0 ; i < 10 ; i++) fprintf(fp, "%7.2lf\n", b[i]) ;
 fclose(fp) ;}

www.59wj.com

10、已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中, 请考生编制一函数jsVal(),其功能是: 将第1个数减第200个数, 若差值小于零, 则取差值的绝对值作为下列统计用的符合条件数, 若差值大于等于零, 则差值不作为符合条件数; 将第2个数减第199个数, 若差值小于零, 则同样取差值的绝对值, 若差值大于等于零, 则差值同样不作为符合条件数;直至第100个数减第101个数为止,接着计算出这些符合条件数中的最小值min、最大值max以及这些符合条件数的平均值aver。最后main()函数调用写函数writeDat()把结果输出到文件OUT.DAT中。
 注意: 部分源程序存在文件PROG1.C文件中。
 程序中已定义: a[200]、min、max、aver
 请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。*/#include #define MAX 200int a[MAX], min, max;double aver ;void jsVal(){/**/
 int i,t,k=0;
 max=0; min=10000;
 aver=0.0;
 for(i=0; i < MAX/2; i++)
 { t=a[i]-a[MAX-i-1];
 if(t < 0)
 { t=-t; k++; aver+=t;
 if(max < t) max=t; else if(min>t) min=t;
 }
 }
 aver/=k;/**/}void readDat(){
 int i ;
 FILE *fp ;
 fp = fopen("in.dat", "r") ;
 for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
 fclose(fp) ;}void main(){
 readDat() ;
 jsVal() ;
 printf("结果min=%d,max=%d,aver=%6.2lf\n", min, max, aver) ;
 writeDat() ;}writeDat(){
 FILE *fp ;
 fp = fopen("out.dat", "w") ;
 fprintf(fp, "%d\n%d\n%6.2lf\n", min, max, aver) ;
 fclose(fp) ;}

如果觉得《2011年全国计算机等级考试四级考试上机题》四级上机题库,jsj不错,可以推荐给好友哦。

本文Tags: 计算机等级考试 - 上机题库 - 四级上机题库,jsj,
在百度中搜索相关文章:2011年全国计算机等级考试四级考试上机题
在谷歌中搜索相关文章:2011年全国计算机等级考试四级考试上机题
在soso中搜索相关文章:2011年全国计算机等级考试四级考试上机题
在搜狗中搜索相关文章:2011年全国计算机等级考试四级考试上机题
相关分类导航|
热门推荐|