《计算机三级网络技术上机试题100道(南开100)题目及答案考试题库》由会员分享,可在线阅读,更多相关《计算机三级网络技术上机试题100道(南开100)题目及答案考试题库(138页珍藏版)》请在金锄头文库上搜索。
1、 题目1:请编写函数num(int m,int k,int xx),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组xx传回。最后调用函数readwriteDAT(),从in.dat文件中读取10组数据,分别得出结果,且把结果输出到文件out.dat中。 例如:若输入17 5,则应输出:19 23 29 31 37。void num(int m, int k, int xx)int data = m+1;int half, n = 0, i;while(1)half = data/2;for (i=2; i half)xxn = data;n+;if (n = k)break;data+
2、; 题目2:已知数据文件IN.DAT中存有200个四位数, 并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是: 如果四位数各位上的数字均是0或2或4或6或8, 则统计出满足此条件的个数cnt, 并把这些四位数按从大到小的顺序存入数组b中。最后main()函数调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 程序中已定义数组: a200, b200, 已定义变量: cntvoid jsVal()int bb4;int i, j, k, flag;for (i=0; i200; i+)bb0 = ai
3、/1000;bb1 = ai%1000/100;bb2 = ai%100/10;bb3 = ai%10;for (j=0; j4; j+)if (bbj%2 = 0)flag = 1;elseflag = 0;break;if (flag = 1)bcnt = ai;cnt+;for (i=0; icnt-1; i+)for (j=i+1; jcnt; j+)if (bi bj)k = bi;bi = bj;bj = k;3题目: 题目3:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写
4、字母O左边的字符串内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已处理字符串的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT.DAT中.例如:原文:n any field .Yu can create an index you have the correct record. 结果: n any field.Yu can create an index rd.yu have the crrect rec void StrOR(void)int i, j, k;char buf80;for (i=0;
5、 i=0)j-;if (j 0)continue;xxij = 0;strcpy(buf, &xxij+1);k = j = 0;while (xxij)while (xxij!=o & xxij)j+;if (!xxij)strcat(buf, &xxik);break;xxij = 0;strcat(buf, &xxik);j+;k = j;strcpy(xxi, buf);4题目: 题目4:函数ReadDat( )实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中; 请编制函数StrOL( ), 其函数的功能是: 以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排,最后
6、把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中。最后调用函数WriteDat()把结果xx输出到文件OUT.DAT中。 例如: 原文: You He Me I am a student. 结果: Me He You student a am Ivoid StrOL(void)int i, j, k, strl, l;for (i=0; imaxline; i+)for (j=0; j(int)strlen(xxi); j+)if (!isalpha(xxij) & xxij!= )xxij = ;for (l=0; l= 0)for (j=k; j=0; j-)ppj+1 =
7、 ppj;pp0 = xxli;k+;i-;strcat(ch, pp);strcpy(pp, );k = 0;if (i = 0)for (j=k; j=0; j-)ppj+1 = ppj;pp0 = xxli;k+;i-;strcat(ch, pp);strcpy(pp, );k = 0;if (i 0)break;strcpy(xxl, ch); 题目5:在文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前
8、10个数依次存入数组bb中,如果后三位的数值相等,则按原先的数值进行降序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。例:处理前 6012 5099 9012 7025 8088 处理后 9012 6012 7025 8088 5099void jsSort() int i, j, data;for (i=0; i199; i+)for (j=i+1; j aaj%1000)data = aai;aai = aaj;aaj = data;else if (aai%1000 = aaj%1000)if (aai aaj)data = aai;aai = aaj;aa
9、j = data;for (i=0; i10; i+)bbi = aai; 题目6:在文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行降序排列,然后取出满足此条件的前10个数依次存入数组bb中,如果后三位的数值相等,则按原先的数值进行升序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。例:处理前 9012 5099 6012 7025 8088 处理后 5099 8088 7025 6012 9012void js
10、Sort()int i, j, data;for (i=0; i199; i+)for (j=i+1; j200; j+)if (aai%1000 aaj)data = aai;aai = aaj;aaj = data;for (i=0; i10; i+)bbi = aai; 题目7:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数ReadDat()是读取这100个销售记录并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT10.DAT中。 void SortDat()int i, j;PRO xy;for (i=0; i99; i+)for (j=i+1; j100; j+)if (strcmp(selli.dm, sellj.dm) 0)xy = selli;selli = sellj;sellj = xy;else if (strcmp(selli.dm, sellj.