全国计算机三级数据库、网络上机题库完整答案 下载本文

if(qw+bw==sw+gw&& qw+bw==(gw-qw)*10)

{ cnt++; sum+=i; } /*统计满足条件的数的个数并对其求和*/ } }

54.已知在文件IN54.DAT中存有N个(个数<200)实数,函数ReadDat()读取这N个实数并存入数组xx中。请编制函数Calvalue(),其功能要求:(1)求出这N个实数的平均值aver;(2)分别求出这N个实数的整数部分之和sumint以及小数部分之和sumdec,最后调用函数WriteDat()把所求的结果输出到文件OUT54.DAT中。

注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【参考答案】

void Calvalue(void) {

int i;

double x,sum=0;

for (i=0;i

sumint=sumint+(int)xx[i]; x=xx[i]-(int)xx[i]; sumdec=sumdec+x; sum=sum+xx[i]; }

aver=sum/N; }

55.已知在文件IN55.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数Calvalue(),其功能要求:(1)求出文件中共有多少个正整数totNum;(2)求出这些数中的各位数字之和是偶数的数的个数totCnt,以及满足此条件的这些数的算术平均值totPjz,最后调用函数WriteDat()把所求的结果输出到文件OUT55.DAT

注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【参考答案】 void Calvalue(void) {

int i,thou,hun,ten,data; int ab;

float sum=0;

for(i=0;i

if(xx[i]>0) totNum++; /*求正整数的个数*/ else break;

thou=xx[i]/1000; /*求四位数的千位数字*/

hun=xx[i]00/100; /*求四位数的百位数字*/ ten=xx[i]0/10; /*求四位数的十位数字*/ data=xx[i]; /*求四位数的个位数字*/ ab=thou+hun+ten+data; if (ab%2==0)

{ totCnt++; sum=sum+xx[i]; } /*统计各位数字之和是奇数的个数并累加求和*/ }

totPjz=sum/totCnt; /*求满足条件的数的平均值*/ }

56.已知在文件IN56.DAT中存有若干个(个数<200)4位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求是:(1)求出这个文件中共有多少个正整数totNum。(2)求出这些数中的各位数字之和是奇数的个数totCnt,以及满足此条件的这些数的算术平均值totPjz。最后,调用函数WriteDat()把所有结果输出到文件OUT56.DAT中。

注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【参考答案】 void CalValue(void) {

int i,thou,hun,ten,data,ab; for(i=0;i

if(!xx[i]) break;

if(xx[i]>0) totNum++; /*求正整数的个数*/

thou=xx[i]/1000; /*求四位数的千位数字*/ hun=xx[i]00/100; /*求四位数的百位数字*/ ten=xx[i]0/10; /*求四位数的十位数字*/ data=xx[i]; /*求四位数的个位数字*/ ab=thou+hun+ten+data; if(ab%2)

{ totCnt++; totPjz+=xx[i]; } /*统计各位数字之和是奇数的个数并累加求和*/ }

totPjz/=totCnt; /*求满足条件的数的平均值*/ }

57.已知在文件IN57.DAT中存有若干个(个数<200)4位数字的正整数,函数ReadDat()是读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求是:(1)求出这个文件中共有多少个正整数totNum。(2)求这些数右移一位后,产生的新数是奇数的数的个数totCnt,以及满足此条件的这些数(右移前的值)的算术平均值totPjz。最后调用函数WriteDat()把所有结果输出到文件OUT57.DAT中。

注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【参考答案】

void CalValue(void) {

int i,data;

for(i=0;i

if(!xx[i]) break;

if(xx[i]>0) totNum++; /*统计正整数的个数*/ data=xx[i]>>1; /*将数右移一位*/

if(data%2) /*如果产生的新数是奇数*/ { totCnt++; totPjz+=xx[i]; } /*统计满足条件的数的个数并求和*/ }

totPjz/=totCnt; /*计算满足条件的数的平均值*/ }

58.已知在文件IN58.DAT中存有若干个(个数<200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数Calvalue(),其功能要求:(1)求出这个文件中共有多少个正整数totnum;(2)求这些数右移1位后,产生的新数是偶数的数的个数totcnt,以及满足此条件的这些数(右移前的值)的算术平均值totpjz,最后调用函数WriteDat()把所求的结果输出到文件OUT58.DAT中。

注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。 【参考答案】 void Calvalue(void) {

int i,data;

for(i=0;i

if(!xx[i]) break;

if(xx[i]>0) totNum++; /*统计正整数的个数*/ data=xx[i]>>1; /*将数右移一位*/

if(data%2==0) /*如果产生的新数是偶数*/ { totCnt++; totPjz+=xx[i]; } /*统计满足条件的数的个数并求和*/ }

totPjz/=totCnt; /*计算满足条件的数的平均值*/ }

59.请编制函数ReadDat(),实现从文件IN59.DAT中读取1 000个十进制整数到数组xx中;请编制函数Compute()分别计算出xx中偶数的个数even、奇数的个数odd、奇数的平均值ave1、偶数的平均值ave2以及所有偶数的方差totfc的值,最后调用函数WriteDat()把结果输出到OUT59.DAT文件中。 计算方差的公式如下:

设N为偶数的个数,xx[i]为偶数,ave2为偶数的平均值。

原始数据文件存放的格式是:每行存放10个数,并用逗号隔开(每个数均大于0且小于等

于2 000)。

注意:部分源程序已给出。请勿改动主函数main()和输出数据函数WriteDat()的内容。 【参考答案】

void Compute(void) {

int i, yy[MAX]; for(i=0;i<1000;i++) if(xx[i]%2==0)

{ even++; ave2+=xx[i]; yy[even-1]=xx[i]; } else

{ odd++; ave1+=xx[i]; }

ave1/=odd; /*求数组xx中所有奇数的平均值*/ ave2/=even; /*求数组xx中所有偶数的平均值*/ for(i=0;i

totfc+=(yy[i]-ave2)*(yy[i]-ave2)/even;/*计算所有偶数的方差*/ }

60.请编制函数ReadDat(),实现从文件IN60.DAT中读取1 000个十进制整数到数组xx中;请编制函数Compute()分别计算出xx中奇数的个数odd、奇数的平均值ave1、偶数的平均值ave2及所有奇数的方差totfc的值。最后调用函数WriteDat()把结果输出到OUT60.DAT文件中。

计算方差的公式如下:

设N为奇数的个数,xx[i]为奇数,ave1为奇数的平均值。

原始数据的存放格式是:每行存放10个数,并用逗号隔开(每个数均大于0且小于等于2 000)。

注意:部分源程序已给出。请勿改动主函数main()和输写函数WriteDat()的内容。 【参考答案】

void Compute(void) {

int i,yy[MAX]; for(i=0;i<1000;i++) if(xx[i]%2!=0)

{ odd++; ave1+=xx[i]; yy[odd-1]=xx[i]; } else

{ even++; ave2+=xx[i]; }

ave1/=odd; /*求数组xx中所有奇数的平均值*/ ave2/=even; /*求数组xx中所有偶数的平均值*/ for(i=0;i

totfc+=(yy[i]-ave1)*(yy[i]-ave1)/odd; /*计算所有奇数的方差*/ }

61.请编制函数ReadDat(),实现从文件IN61.DAT中读取1 000个十进制整数到数组xx中;请编制函数Compute(),分别计算出xx中奇数的个数odd、偶数的个数even、平均值aver及