2012年计算机三级数据库上机题及参考答案(10)
4202 点击·0 回帖
![]() | ![]() | |
![]() | 58.已知数据文件IN.dat中存有200个四位数,并已挪用读函数readDat()把这些数存入数组a中,请编写函数primecount(),其功能是:如不美观四位数各个位上的数字均是奇数,则统计出知足此前提的个数count并把这些四位数按从大到小的挨次存入数组b中。最后main()函数挪用写函数writeDat(),把结不美观count以及数组b中合适前提的四位数输出到OUT.dat文件中。 【谜底】 void primecount() { int i, thou, hun, ten, data, j; for (i=0; i<200; i++) { thou = a/1000; hun = a%1000/100; ten = a%100/10; data = http://www.examw.com/ncre/three/db/149533/a%10; if (thou%2!=0 ;; hun%2!=0 ;; ten%2!=0 ;; data%2!=0) { b = a; count++; } } for (i=0; i for (j=i+1; j if (b < b) { data = http://www.examw.com/ncre/three/db/149533/b; b = b; b = data; } } 59.函数RData()实现从文件IN.dat中篡夺一篇英文文章,存入到字符串数组original中;请编写函数encryptChar(),其功能是:按给定的替代关系对数组original中的所有字符进行替代后,仍存入数组original的对应的位置上。最后挪用函数WData(),把结不美观original输出到OUT.dat文件中。 替代关系:f(p)=p*11 mod 256(p是数组中某一个字符的ASCII值,f(p)是计较后新字符的ASCII值),如不美观原字符的ASCII值是偶数或计较后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。 原始数据文件存放的名目是:每行的宽度均小于80个字符。 【谜底】 void encryptChar() { int i; char *pf; for (i=0; i { pf = original; while (*pf != 0) { if (*pf%2 ;; *pf*11%256>32) *pf = *pf*11%256; pf++; } } } 60.已知数据文件IN.dat中存有200个四位数,并已挪用读函数readDat()把这些数存入数组a中,请编写函数diffVal(),其功能是:把一个四位数的千位数字上的值,减去百位数字上的值,再减去十位数字上的值,最后减去个位数字上的值,如不雅概念出的值大于等于0且原四位数是奇数,则统计出知足此前提的个数count并把这些四位数按巨细到大的挨次存入数组b中。最后挪用写函数writeDat(),把结不美观count以及数组b中合适前提的四位数输出到OUT.dat文件中。 【谜底】 void diffVal() { int i, thou, hun, ten, data, j; for (i=0; i { thou = a/1000; hun = a%1000/100; ten = a%100/10; data = http://www.examw.com/ncre/three/db/149533/a%10; if ((thou-hun-ten-data>=0) ;; a%2==1) { b = a; count++; } } for (i=0; i for (j=i+1; j if (b > b) { data = http://www.examw.com/ncre/three/db/149533/b; b = b; b = data; } } | |
![]() | ![]() |