2023年三级网络技术上机试题南开100题.pdf
《2023年三级网络技术上机试题南开100题.pdf》由会员分享,可在线阅读,更多相关《2023年三级网络技术上机试题南开100题.pdf(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、题目1请编写一个函数 jsValue(int m,int k,int x x),该函数的功能是:将大于整数m且紧靠m的k个素数存入数组XX传回。最后调用函数writeDat()读 取10组数据,分别得出结果且把结果输出到文献out.dat中。部分源程序存在文献progl.c中。例如:若输入1 7 5则应输出:19,23,29,31,37,请勿改动主函数main。和写函数writeDat。的内容。int isP(int m)(int i;for(i=2;i0;m+)lf(isP(m)xxs+=m;k;题目2已知数据文献IN.DAT中存有200个四位数,并已调制一函数jsVal(),其功能是:假如
2、四位数各位上的数字均是。或2或4或 6 或 8,则记录出满足此条件的个 数e n t,并把这些四位数按从大到小的顺序存入数组b中。最后main()函数调用写函数writeDat。把结果e n t以 及 数 组b中符合条件的四位数输出到OUT.DAT文献中。void jsVal()int ij,qw,bw,sw,gw;for(i=0;iMAX;i+)qw=ai/1000;bw=ai/100%10;sw=ai%100/10;gw=ai%10;if(qw&qw%2=0&bw%2=0&sw%2=0&gw%2=0)bcnt+=ai;)for(i=0;icnt-l;i+)for(j=i+l;jcnt;j+
3、)if(bibj)qw=bi;bi=bj;bj=qw;)题目3(字符型题)函数ReadDat()实现从文献IN.DAT中读取一篇英文文章存入到字符串数组x x中;请编制函数StrORO,其函数的功能是:以行为单位依次把字符串中所有小写字母。左边的字符串内容移到该串的右边存放,然后把小写字母。删除,余下的字符串内容移到已解决字符串的左边存放,之后把已解决的字符串仍按行重用读函数readDat。把这些数存入数组a中,请考生编新存入字符串数组x x中。最 后main()函数调用函数WriteDat。把结果xx输出到文献OUT5.DAT中student a am Ivoid StrOR(void)in
4、t i,rightoj,s,k;char tem80J;for(i=0;i=O;j-)k=0;memset(tem,0,80);righto=j;for(s=righto+l;sstrlen(xxi);s+)temk+=xxis;for(s=0;srighto;s+)if(xxis!=,o,)temk+=xxis;strcpy(xxi,tem);)else continue;)题目4函 数 ReadDat。实现从文献IN.DAT中读取一篇英文文章存入到字符串数组xx中,请编制函数StrOL(),其函数的功能是:以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排。最后把已解决的字符串(应不
5、含标点符号)仍按行重新存入字符串数组x x 中,最后调用函数writeDal()把结果x x 输出到文献 OUT6.DAT 中。例如:原文:You He MeI am a student.void StrOL(void)int ij,k,s,m,strl;char$tr8O;for(i=0;i=();j-)if(isalpha(xxij)k+;else for(m=l;m=k;m+)strs+=xxij+m;k=0;)if(!isalpha(xxij)strs+=for(m=l;m=k;m+)strs+=xxij+m;strs=0;strcpy(xxi,str);题目5(整数排序题)在文献in
6、.dat中有200个正整数,且每个数均在1000至 9999之间。函数ReadDat。读取这200个数存放到数组a a 中。请编制函数jsSort(),其函数的功能是:规定按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组bb 中,假如后三位的数值相等,则按原先的数值进行降序排列。最 后 调 用 函 数 WriteDat。把 结 果 b b 输出到文献结果:Me He Yououl.dat 中。例:解决前 6012 5099 9012 7025 8088解决后 9012 6012 7025 8088 5099void jsSort()(int ij,data;for
7、(i=0;i199;i+)for0=i+l;jaaj%1000|aai%1000=aaj%1000&aaiaaj)data=aai;aai=aaj;aaj=data;for(i=();i10;i+)bbi=aai;题目6 正整数排序在文献in.dat中有200个正整数,且每个数均在1000至 9999之间。函数ReadDat。读取这200个数存放到数组a a 中。请编制函数jsSort(),其函数的功能是:规定按每个数的后三位的大小进行降序排列,然后取出满足此条件的前10个数依次存入数组b 中,假如后三位的数值相等,则按原先的数值进行升序排列。最 后 调 用 函 数 WriteDat()把 结
8、 果 b b 输出到文献out.dat 中。例:解决前 9012 5099 6012 7025 8088解决后 5099 8088 7025 6012 9012void jsSort()for(i=0;i199;i+)forG=i+l;j200;j+)if(aai%1000aaj)data=aai;aai=aaj;aaj=data;for(i=0;i10;i+)bbi=aai;)题目7(结构体操作题)已知在文献IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4 位),产品名称me(字符型10位),单价dj(整型),数量si(整型),金额je(长整型)五部分组成。其
9、中:金额=单价*数量计算得出。函数ReadDat。是读取这100个销售记录并存入结构数组sell中。请编制函数SortDatO,其功能规定:按产品代码从大到小进行排列,若产品代码相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文献OUT6.DAT中。void SortDatOint ij;PRO xy;for(i=0;i99;i+)forG=i+l;j100;j+)int ij,data;i f(s t r c m p(s e l l i .dm,s e l l j .dm)O|s t r c m p(s e l l i .dm
10、,se l l j .dm)=O&s e l l i .j e s e l l j .j e)x y=s e l l i ;s e l l i =s e l l j ;s e l l j =x y;)题目8 (字符替换题)函 数R e a dD a t。实现从文献E N G.IN中读取一篇英文文 章,存 入 到 字 符 串 数 组XX中;请编制函数e n c r y p t C h a r(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的相应的位置上,最 后 调 用 函 数W r i t e D a t()把 结 果xx输出到文献P S 1.D A T 中。替代关系:f(p
11、)=p*l l m o d 2 5 6 (p是数组中某一个 字 符 的ASCH值,f(p)是计算后新字符的A S C I I值),假如计算后f(p)值小于等于32或大于130,则该字符不变,否则将f(p)所相应的字符进行替代。(注意中间变量用无符号整型),部分源程序存在文献p r o g l.c中。原始数据文献存放的格式是:每行的宽度均小于80个字符。vo i d e n c r yp tC h a r()i n t i j;f o r(i=0;i ma xl i n e;i+)f o r(j=0;j s tr l e n(xx i );j+)i f(xx i j *l l%2 56 13 0
12、)c o n ti n ue;e l s e xx i j =xx i j *l l%2 56;函 数R e a d D a t。实现从文献IN.DAT中读取一篇英文文 章 存 入 到 字 符 串 数 组x x中,请 编 制 函 数S o r t C h a r D O,其函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组x x中,最后调用函数wr i te D a t()把结果x x输出到文献OUT2.DAT中。例:原文:d A e.B f C.CCbbAA结果:f e d C B A.bbCCAAvo i d S o r tC h a r D(vo
13、 i d)(i n t i j,k,s tr l;c h a r c h;f o r(i=0;i ma xl i n e;i+)s tr l=s tr l e n(xx i );f o r(j=0;j s tr l-l;j+)f o r(k=j+l;k s tr l;k+)i f(xx i U xx i k )c h=xx i j ;xx i j =xx i k ;xx i k =c h;)题目10(替换字符题)函 数R e a d D a t。实现从文献IN.DAT中读取一篇英文文 章 存 入 到 字 符 串 数 组x x中,请 编 制 函 数C o n v e r t C h a r A(
14、),其函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字 题目9 (字符串排序题)母,假如是字母z,则改写成字母a。大写字母仍为大写字母,小写字母仍为小写字母,其他字符不变。把己解决的字符串仍按行重新存入字符串数组X X中,最后调用函数writeDat。把 结 果 x x 输出到文献OUTI.DAT 中。例:原文:Adb.Bcdzaabck.LLhj结果:Aec.Bdeabbcdl.LLikvoid ConvertCharA(void)int ij;for(i=0;imaxline;i+)for(j=0;jstrlen(xxi);j+)if(xxiU=z)xxij=a&xx
15、ij=y)xxij+=l;)题目11(字符串字母移位题)程序progl.c的功能是:把 s 字符串中的所有字母改写成该字母的下一个字母,字母z 改写成字母a。规定大写字母仍为大写字母,小写字母仍为小写字母,其它字符不做改变。请考生编写函数chg(char*s)实现程序规定,最 后 调 用 函 数 readwriteDAT()把结果输出到文献be Lout 中。例如:s 字符串中原有的内容为:Mn.l23Zxy,void chg(char*s)int I;for(I=0;I=a&si=A&si=Y)si+=l;)*题目12(结构体运算题题)已知在文献IN.DAT中存有100个产品销售记录,每个产
16、品销售记录由产品代码dm(字符型4 位),产品名称me(字符型10位),单价dj(整型),数量si(整型),金额je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数ReadDat。是读取这100个销售记录并存入结构数组sell中。请编制函数SortDatO,其功能规定:按产品名称从小到大进行排列,若产品名称相等,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,void SortDatOint ij;PRO xy;for(i=0;i99;i+)for(j=i+l;jO|strcmp(selli.inc9sellj.mc)=O&selli.jesellj.je)已知数据文
17、献IN.DAT中存有200个四位数,并已调xy=selli;selli=sellj;sellj=xy;题 目 13(结构体运算题)己知在文献IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4 位),产品名称me(字符型10位),单价dj(整型),数量si(整型),金额je(长整型)五部分组成。其中:金额=单价*数量计算得出。函数ReadDat。是读取这100个销售记录并存入结构数组sell中。请编制函数SortD atO,其功能规定:按产品代码从小到大进行排列,若产品代码相等,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteD
18、at。把结果输出到文献OUT9.DAT中。void SortDatOint ij;PRO xy;for(i=0;i99;i+)fora=i+l;jO|strcmp(sell|i.dm,sellj.dm)=O&selli.jesellj.je)xy=selli;selli=sellj;sellj=xy;用读函数readDat。把这些数存入数组a 中,请考生编制一函数jsV al(),其功能是:依次从数组a 中取出一个四位数,假如该四位数连续大于该四位数以后的五个数且该数是奇数(该四位数以后不满五个数,则不记录),则记录出满足此条件的个数e n t并把这些四位数按从小到大的顺序存入数组b 中,最后
19、调用写函数 writeDat()把结果ent以及数组b 中符合条件的四位数输出到OUT.DAT文献中。void jsVal()int ij,flag;for(i=0;iMAX-5;i+)for(j=i+l;jaj&ai%2)flag=l;else flag=O;break;if(flag=l)bcnt+=ai;)for(i=0;icnt-l;i+)for(j=i+l;jbUD flag=bi;bi=bU;b|j=nag;)题目15(整数各位数字运算排序题)已知数据文献IN.DAT中存有200个四位数,并已调用读函数readDat。把这些数存入数组a 中,请考生编制一函数jsV al(),其功能
20、是:若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值 题目 14(整数记录排序题)小于等于十位数字上的值,以及十位数字上的值小于等于个位数字上的值,并且原四位数是偶数,则记录出满足此条件的个数ent并把这些四位数按从小到大的顺序存入数组b 中,最后调用写函数writeDat。把结 果 e n t以及数组b 中符合条件的四位数输出到OUT.DAT文献中。void jsVal()int ij;int qw,bw,sw,gw;for(i=0;iMAX;i+)qw=ai/1000;bw=ai%1000/100;sw=ai%100/10;gw=ai%10;if(qw=bw)&(bw=s
21、w)&(sw=gw)&(ai%2=0)bcnt+=ai;)for(i=0;icnt-l;i+)for(j=i+l;jbj)qw=bi;bi=bj;bj=qw;)题目16(字符替换题)函 数 ReadDat。实现从文献IN.DAT中读取一篇英文文 章 存 入 到 字 符 串 数 组 x x 中,请 编 制 函 数StrCharJRO,其函数的功能是:以行为单位把字符串中所有字符的ASCII值右移4 位,然后把右移后的字符ASCII值再加上原字符的ASCII值,得到新的字符仍存入原字符串相应的位置上。最后把已解决的字符串仍按行重新存入字符串数组x x 中,最后调用函数writeDat()把结果x
22、x 输出到文献OUT8.DAT中。void StrCharJROint ij;for(i=0;imaxline;i+)for(j=0;jstrlen(xxi);j+)xxij+=(xxij4);(右移四位的表达方式)题目17(亲朋字符替换题)函数READDAT()实现从文献IN.DAT中读取一篇英 文 文章存入到字符串数组X X 中;请编制函数CHA(),其函数功能是:以行为单位把字符串中的第一个字符的ASCII值加第二个字符的ASCII值,得到第一个亲朋字符,第二个字符的ASCII值加第三个字 符 的 ASCII值,得到第二个新字符,依此类推一直解决到最后第二个字符,最后一个字符的ASCII
23、值加原第一个字符的ASCII值,得到最后一个新的字符,得到的新字符分别存放在原字符串相应的位置上。最后把已解决的字符串逆转后按行重新存入字符串数组XX中,最后调用函数WRITEDAT。把结果XX输出到文献OUT9.DAT中.原始数据文献存放的格式是:每行的宽度均小于80个字符,含标点符号和空格.void ChA(void)int ij;char ch;for(i=0;imaxline;i+)ch=xxi0;forG=0;jstrlen(xx(i)-l;j+)xxij+=xxij+ll;xxistrlen(xxi)-l+=ch;strrev(xxi);)题目18函 数 ReadDat。实现从文献
24、ENGIN中读取一篇英文文 章,存 入 到 字 符 串 数 组 XX中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组x x 的相应的位置上,最 后 调 用 函 数 WriteDal。把 结 果 x x 输出到文献PS10.DAT 中。替代关系:f(p)=p*ll mod 256(p 是数组中某一个字 符 的 ASCH值,f(p)是计算后新字符的ASCII值),假如原字符的ASCII值是偶数或计算后f(p)值小于等于3 2,则该字符不变,否则将f(p)所相应的字符进行替代。void encryptChar()int ij;for(i=0;ima
25、xline;i+)for(j=0;jstrlen(xxi);j+)if(xxiKj*ll%256=32|xxij%2=0)continue;else xxij=xxij*ll%256;题目19(单词个数记录题)编写一个函数 findStr(char*str,char*substr),该函数记录一个长度为2 的子字符串在另一个字符串中出现的次数。例如,假定输入的字符串为asdasasdfgasd as zx67 asd m klo,子字符串为 a s,函数返回值是 6。(表白/返回值是整数型)函 数 ReadWrite。实现从文献in.dat中读取两个字符串,并调用函数findStrO,最后把结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 三级 网络技术 上机 试题 南开 100
限制150内