1、计算机三级网络技术上机真题100题计算机三级网络技术上机真题 100 题题目1下列程序的功能是:将大于整数 m且紧靠m的k个素数存入数组xx。 请编写函数 num(int m,int k,int xx) 实现函数的要求 ,最后调用函数 readwriteDAT() 把结果输出到文件 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;Ihalf)xxn=d
2、ata;n+;if(n=k) break;data+; 题目 2:已知数据文件 IN.DA T 中存有 200 个四位数 , 并已调用读函数readDatQ把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位 数各位上的数字均是 0 或 2 或 4 或 6 或 8, 则统计出满足此条件的个数 cnt, 并 把这些四位数按从大到小的顺序存入数组 b中。最后main()函数调用写函数writeDat()把结果ent以及数组b中符合条件的四位数输出到 OUT.DAT文件 中。 注意: 程序中已定义数组 : a200, b200, 已定义变量 : cntvoid jsVal() /
3、* 标准答案 */ int bb4;int I,j,k,flag;for (I=0;I200;I+)bb0=aI/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 (bIbj)k=bI;bI=bj;bj=k;题目 3:函数 READDA T ()实现从文件 IN.DA T 中读取一篇英文文章存 入到字符串数组XX中;请编制函
4、数STROR0,其函数功能是:以行为单位把字符 串中的所有小写字母 O 左边的字符串内容移到该串的右边存放 ,然后并把小写 字母 O 删除,余下的字符串内容移到已处理字符串的左边存放 .最后把已处理的 字符串仍按行重新存入字符串数组 XX 中,最后调用函数 WRITEDAT() 把结果 XX 输出到文件 OUT.DA T 中.例如: 原文 :You can create an index on any field.you have the correct record.结果: n any field.Y ou can create an indexrd.yu have the crrect r
5、ec原始数据文件存放的格式是 :每行的宽度均小于 80 个字符 ,含标点符号和空 格 .类型:字符串(单词)的倒置和删除。 void StrOR(void) /* 标准答案 */int I,j,k,index,strl;char ch;for(I=0;Imaxline;I+)strl=strlen(xxI);index=strl;for(j=0;jstrl;j+)if(xxIj=o)for(k=j;k=index;j-)ch=xxIstrl-1;for(k=strl-1;k0;k-)xxIk=xxIk-1;xxI0=ch;题目 4:函数 ReadDat( )实现从文件 IN.DA T 中读取一
6、篇英文文章存入到字 符串数组 xx 中 ; 请编制函数 StrOL( ), 其函数的功能是 : 以行为单位对行中以 空格或标点符号为分隔的所有单词进行倒排, 同时去除标点符号,之后把已处 理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中。最后main()函 数调用函数 WriteDat()把结果xx输出到文件OUT6.DA T中。例如: 原文: You He MeI am a student.结果 : Me He Y oustudent a am I原始数据文件存放的格式是 : 每行的宽度均小于 80 个字符 , 含标点符号和 空格。类型:字符串(单词)的倒置和删除。 void St
7、rOL(void) /* 标准答案 */ int I,j,k,strl,l;char c;for(I=0;Imaxline;I+)for(j=0;j=A&c=a&c=z)|c= ) ;else xxIj= ; for(l=0;l=a&xxlI=A&xxlI=0)for(j=k;j=0;j-)ppj+1=ppj; pp0=xxlI; k+;I-; strcat(ch,pp);strcpy(pp, );k=1;if(I=-1)break;while(xxlIz)&I=0)for(j=k;j=0;j-)ppj+1=ppj;pp0=xxlI;k+; I-;strcat(ch,pp); strcpy(p
8、p,);k=0;if(I=-1)break;strcpy(xxl,ch);题目 5:在文件 in.dat 中有 200 个正整数,且每个数均在 1000至 9999 之 间。函数ReadDat(读取这200个数存放到数组aa中。请编制函数jsSort(),其 函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此 条件的前 10 个数依次存入数组 b2 中,如果后三位的数值相等,则按原先的数 值进行降序排列。最后调用函数 WriteDat() 把结果 bb 输出到文件 out.dat 中。例:处理前 6012 5099 9012 7025 8088处理后 9012 6012 70
9、25 8088 5099void jsSort() /* 标准答案 */int I,j,data;for(I=0;I199;I+)for(j=I+1;jaaj%1000)data=aaI;aaI=aaj;aaj=data;else if(aaI%1000=aaj%1000)if(aaIaaj)data=aaI;aaI=aaj;aaj=data;for(I=0;I10;I+)bbI=aaI;题目 6:在文件 in.dat 中有 200 个正整数,且每个数均在 1000 至 9999 之 间。函数ReadDat(读取这200个数存放到数组aa中。请编制函数jsSort(),其 函数的功能是:要求按
10、每个数的后三位的大小进行降序排列,然后取出满足此 条件的前10个数依次存入数组b中,如果后三位的数值相等,则按原先的数值 进行升序排列。最后调用函数 WriteDat() 把结果 bb 输出到文件 out.dat 中。例:处理前 9012 5099 6012 7025 8088处理后 5099 8088 7025 6012 9012void jsSort() /* 标准答案 */int I,j,data; for(I=0;I199;I+)for(j=I+1;j200;j+)if (aaI%1000aaj)data=aaI;aaI=aaj;aaj=data;for(I=0;I10;I+)bbI=
11、aaI;题目 7:已知在文件 IN.DA T 中存有 100 个产品销售记录,每个产品销售 记录由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整型), 数量sl(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得 出。函数ReadDat(是读取这100个销售记录并存入结构数组 sell中。请编制函 数SortDat(),其功能要求:按产品代码从大到小进行排列,若产品代码相同, 则按金额从大到小进行排列,最终排列结果仍存入结构数组 sell 中,最后调用 函数 WriteDat() 把结果输出到文件 OUT10.DA T 中。void SortDat()
12、/* 标准答案 */int I,j;PRO xy;for(I=0;I99;I+)for(j=I+1;j100;j+)if(stremp(sellI.dm,sellj.dm)0)xy=sellI;sellI=sellj;sellj=xy;else if(stremp(sellI.dm,sellj.dm)=0)if(sellI.jesellj.je)xy=sellI; sellI=sellj; sellj=xy;题目8:函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到 字符串数组 xx 中;请编制函数 eneryptChar() ,按给定的替代关系对数组 xx 中 的所有字符
13、进行替代, 仍存入数组 xx 的对应的位置上,最后调用函数 WriteDat()把结果xx输出到文件 PS1.DAT中。替代关系:f(p)=p*11 mod 256 (p 是数组中某一个字符的 ASCII 值, f(p) 是计算后新字符的 ASCII 值),如果计 算后f(p)值小于等于32或大于130,则该字符不变,否则将f(p)所对应的字符 进行替代。注意:部分源程序已给出。原始数据文件存放的格式是:每行的宽度均小 于 80 个字符。void encryptChar() /* 标准答案 */int I;char *pf;for(I=0;I130|*pf*11%256=32);else*pf=*
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1