1、三级数据库技术机试-213 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制函数 ReadDat(),实现从文件 IN.DAT中读取 1000个十进制整数到数组 xx中;请编制函数Compute(),分别计算出 XX中偶数的个数 even,奇数的平均值 ave1,偶数的平均值 ave2以及方差 totfc的值,最后调用函数 WriteDat()把结果输出到 OUT.DAT文件中。计算方差的公式如下:(分数:100.00)_三级数据库技术机试-213 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:10
2、0.00)1.请编制函数 ReadDat(),实现从文件 IN.DAT中读取 1000个十进制整数到数组 xx中;请编制函数Compute(),分别计算出 XX中偶数的个数 even,奇数的平均值 ave1,偶数的平均值 ave2以及方差 totfc的值,最后调用函数 WriteDat()把结果输出到 OUT.DAT文件中。计算方差的公式如下:(分数:100.00)_正确答案:(for(i=1;iMAX;i+)fscanf(fp,“%d,“,Lxxi);/读取文件中的数据存入变量 xxi中if(i+1)%10=0)/每行存 10个数fscanf(fp,“ “);/读取行后的换行符)解析:解析 本题考查文件的操作、奇偶判断和数学公式的计算。函数 ReadDat的作用是从文件中读取数据存入数组 xx中,因为数据存入文件的格式是每个数据被逗号隔开,所以fscanf(fp,“%d,“,xxi)语句中的字符串“%d,“要加入逗号。函数 Compute的作用是计算方差,思路是首先顺序读取数组 xx中的结点,若是偶数则累加存入 ave2,个数存入 even,若不是偶数(即为奇数)则累加结果存入 ave1,个数存入 odd。然后计算奇数和偶数的平均数,利用循环结构依次读取存放偶数的数组 yy,计算方差 totfc。