1、计算机三级数据库技术(上机操作)机试模拟试卷 2及答案与解析 一、程序设计题 1 已知数据文件 in dat中存有 200个四位数。并已调用读函数 readDat()把这些数存人数组 a中,请编写函数 jsVal(),其功能是:如果四位数各位上的数字均是奇数,则统计出满足此条件的个数 cnt,并把这些四位数按从大到小的顺序存入数组b中。最后 main()函数调刚写函数 writeDat()把结果 cnt以及数组 b中符合条件的四位数输出到 out dat文件中。 【试题程序】 #include #define MAX 200 int aMAX, bMAX cnt=0; void writeDa
2、t(); void jsVal() void readDat() int i; FILE*fp; fp=fopen(”in dat”, ”r t); for(i一 0; iMAX; i+) fscanf(fp, ”0Ad”, felose(fp); void main() int i; readDat(); jsVal(); printf(“满足条件的数 = d n”, cnt); for(i=0; ient; i+) printf(“ d”, b i); printf(“ n”); writeDat(); void writeDat() FILE*fp; int i; fp=fopen(“o
3、ut dat”, “w”); fprintf(fp, “ d n”, ent); for(i=0; icnt; i+) fprintf(fp, “9, 6d n”, bi); fclose(fp); 计算机三级数据库技术(上机操作)机试模拟试卷 2答案与解析 一、程序设计题 1 【正确答案】 void jsVal() int i j; *定义变量 * int al, a2, a3, a4; int temp; for(i=0IiMAXli+) al=a门 10; *数位分解 * a2=aEi-I 100 10; a3=ari 1000 100; a4=aEi 1000; if(al 2=1 a2 2=一 1 8L a3 2=1 8Ljcnttj+) if(bibj) tempbi; bi=bj; bEj=temp;