全国计算机等级考试三级网络技术100题全.docx

上传人:文*** 文档编号:68358135 上传时间:2022-12-27 格式:DOCX 页数:148 大小:185.17KB
返回 下载 相关 举报
全国计算机等级考试三级网络技术100题全.docx_第1页
第1页 / 共148页
全国计算机等级考试三级网络技术100题全.docx_第2页
第2页 / 共148页
点击查看更多>>
资源描述

《全国计算机等级考试三级网络技术100题全.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试三级网络技术100题全.docx(148页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第1题:下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。请编 写函数num(int m,int k,int xx)实现函数的要求,最后调用函数readwriteDAT。把结果输出 到文件out.dat中。例如:若输入17, 5,则应输出:19, 23, 29, 31, 37。注意:部分源程序已给出。请勿改动主:函数main。和函数readwrileDAT。的内容。类型:素数。void num(int m,int k,int xx) /*标准答案*/ (int data=m+1;int half,n=O,I;while(l)(half=data/2;for(I=2;IhalD(xx

2、n=data;n+;if(n=k)break;data+;#include #include void readwriteDAT();void num(int m,int kjnt xx) main() int m, n, xx1000;clrscr();printf(nnPlease enter two integers:0);scanf(M%d,%dH, &m, &n );num(m, n, xx);for(m = 0 ; m n ; m+)printf(H%d 二 xxm);printf(Hnn);readwriteDAT();void readwriteDATO int m, n, x

3、x1000, i;FILE *rf, *wf;rf=fopen(nin.dat; V);wf = fopen(out.datH, nwn);for(i = 0;i 10; i+) fscanf(rf, %d %d, &m, &n);num(m, n, xx);for(m = 0 ; m n ; m+) fprintf(wf, n%d , xxm);fprintf(wf, ,n);fclose(rf);fclose(wf);卜题2:已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat。把这些数 存入数组a中,请考生编制一函数jsVal(),其功能是:如果四位数各位上的数字均

4、是。或2或4 或6或8,则统计出满足此条件的个数ent,并把这些四位数按从大到小的顺序存入数组b中。 最后main。函数调用写函数writeDat()把结果ent以及数组b中符合条件的四位数输出到 OUT.DAT文件中。注意:部分源程序存在文件PROG1.C文件中。程序中已定义数组:a200,b200,已定义变量:ent请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat。和写函数 writeDat。的内容。void jsVal() /* 标准答案*/int bb4;int I,j,k,flag;for (I=0;I200;I+)bblOJ=aI/l 000;bb

5、l=all% 1000/100;bb2=aI% 100/10;bb3=aI%10;for (j=0;j4;j+) if(bbj%2=0) flag=l;elseflag=O;break;if (flag=l) bcnt=aI;cnt+;for(I=0;Icnt-1 ;I+) for(j=I+l;jcnt;j+)if(bIbj)k=bI;bI=bj;bj=k;#include #define MAX 200int aMAX, bMAX, ent = 0;voidjsVal() void readDat() inti;FILE *fp;fp = fopen(in.datM, HrM);for(i

6、= 0 ; i MAX ; i+) fscanf(fp, H%dM, &aij);fclose(fp);void main() int i;readDat();jsVal();printf(满足条件的数=%dn”, ent);for(i = 0 ; i ent; i+) printf(%d , bi);printf(Hnn);writeDat();system(upauseM);writeDat() HLE *fp;int i;fp = fopen(out.datM, wn);fprintf(fp, H%dn, ent);for(i = 0 ; i ent; i+) fprintf(fp, M

7、%dnH, bi);fclose(fp);题3:函数READDAT ()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组 XX中清编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写字母O左边的 字符串内容移到该串的右边存放,然后并把小写字母0删除,余下的字符串内容移到一处理字 符串的左边存放.最后把己处理的字符串仍按行重新存入字符串数组XX中,最后调用函数 WRITEDAT()把结果XX输出到文件OUT.DAT中.例如:原文:You can create an index on any field.you have the correct record.结果:n an

8、y field.You can create an indexrd.yu have the crrect rec原始数据文件存放的格式是:每行的宽度均小于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=xxlstrl-l;for(k=strl-l ;kO;k) xx

9、Ik=xxIk-l;xxI0=ch;# includenstdio.h# includestring.h# includeuconio.huchar xx5080J;int maxline=0;int ReadDat(void);void WriteDat(void);void StrOR(void) void main() clrscrO; if(ReadDat() printfCCant open the file!nM); return;StrOR();WriteDatO;system(upauseM); )ini ReadDat(void)FILE *fp;int i=0;char *

10、p;if(fp=fopen(Hin.dat,T,)=NULL) return 1; while(fgets(xxi,80,fp)!=NULL) p=strchr(xxiAn*);if(p) *p=0;i+; ) maxline = i; fclose(fp);return 0; void WriteDat(void) FILE *fp;int i;fp=fopen(out.dat,“w); for(i=0;imaxline;i+) printf(n%snxxi); fprintf(fp,M%sn,xxi); fclose(fp);题4:函数ReadDat()实现从文件IN.DAT中读取一篇英文

11、文章存入到字符串数组xx中; 请编制函数SlrOL(),其函数的功能是:以行为单位对行中以空格或标点符号为分隔的所有 单词进行倒排,同时去除标点符号,之后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组XX中。 最后main。函数调用函数WriteDat。把结果xx输出到文件OUT6.DAT中。例如:原文:You He MeI am a student.结果:Me He Youstudent a am I原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。类型:字符串(单词)的倒置和删除。答案:void StrOL(void) /*标准答案*/int I,j,k,

12、strl,l;char c;for(I=0;Imaxline;I+)for(j=0;j=,A,&c=,a&c=z,)llc=,;else xxILj= ;for(l=0;l=,a,&xxlI=A&xxlI=0) for(j=k;j=0;j-)ppj+lJ=ppLj; pp0=xxlI; k+;I-; strcat(ch,pp);strcpy(pp,;if(I=-l)break;while(xxlI,z,)&I=0)for(j=k;j=0;j-)ppj+l=pp|j; pp0=xxlI;k+;I-;)strcat(ch,pp); strcpy(pp,k=0;if(I=-l)break;strcp

13、y(xxl,ch);)# includeustdio.h# includestring.h# includeHconio.hH# includenctype.hMchar xxl5Ol8O;int maxline=0;ini ReadDat(void);void WriteDat(void);void StrOR(void) void main()clrscr();if(ReadDat()printfCCant open the file!nn);return;StrOR();WriteDatO;system(npausen);)int ReadDat(void)FILE *fp;int i=

14、0;char *p;if(fp=fopen(Min.dat,;,r,)=NULL) return 1;while(fgets(xxi,80,fp)!=NULL)p=strchr(xxi,An);if(p) *p=0;i+;maxline=i;fclose(fp);return 0;void WriteDat(void)FILE *fp;int i;fp=fopen(outdat,w);for(i=0;imaxline;i+)printfC%sn,xxi);fprintf(fp,n %snM ,xx i);fclose(fp);题5:在文件in.dat中有200个正整数,且每个数均在1000至9

15、999之间。函数ReadDat() 读取这200个数存放到数组aa中。请编制函数jsSort。,其函数的功能是:要求按每个数的 后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后 三位的数值相等,则按原先的数值进行降序排列。最后调用函数WriteDat。把结果bb输出 到文件out.dat中。例:处理前 6012 5099 9012 7025 8088处理后 9012 6012 7025 8088 5099注意:部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。void jsSort。/* 标准答案

16、*/int I,j,data;for(I=0;I199;I+)for(j=I+l;jaaj%1000)data=aaI;aaI=aaj;aaj=data;else if(aaI% 1000=aaj% 1000)if(aaIaaj)data=aaI;aaI=aaj;aaj=data;Ifbr(I=0;I 10;I+)bbI=aaI;#include#include#includeint aa200,bb10;void jsSort() void main()readDat();jsSort();writeDat();system(npausen);)readDat()FILE *in;int i

17、;in=fopen(in.dal,T);for(i=0; i200; i+) fscanf(in,d,&aai);fclose(in);writeDat()FILE *out;int i;clrscr();out=fopen(out.datn,wn);for(i=0; i10; i+) printf(,i=%d,%dn,i+ l,bbi); fprintf(out/%dn,bbi);fclose(out);题6:在文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数ReadDat() 读取这200个数存放到数组aa中。请编制函数jsSort。,其函数的功能是:要求按每个

18、数的 后三位的大小进行降序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后 三位的数值相等,则按原先的数值进行升序排列。最后调用函数WriteDat。把结果bb输出 到文件out.dat中。例:处理前 9012 5099 6012 7025 8088处理后 5099 8088 7025 60129012注意:部分源程序已给出。请勿改动主函数main。、读数据函数ReadDat。和输出数据函数WriteDat()的内容。void jsSort() /*标准答案*/int I,j,data;for(I=0;I199;I+)for(j=I+l ;j200;j+)if (aaI% 1000

19、aa(j)data=aaI;aaI=aaU;aa|j=data;1for(I=0;I10;I+)bbI=aaI;#include#include#includeint aa200,bb10;void jsSort()()void main()(readDat();jsSort();writeDat();system(,pausen);)readDat()(FILE *in;inti;in=fopen(Hin.dat,Y,);for(i=0; i200; i+) fscanf(in,H%d,M,&aai);fclose(in);)writeDat()(FILE *out;int i;clrscr

20、();out=fopen(,out.dat,w,);for(i=0; i10; i+)printf(,i=%d,%dn,i+l,bbi); fprintf(out,%dnM,bbi);Ifclose(out);题7:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代码 dm(字符型4位),产品名称me(字符型10位),单价dj(整型),数量si(整型),金额je(长整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat。是读取这100个销售记录 并存入结构数组sell中。请编制函数SortDat(),其功能要求:按产品代码从大到小进行排列, 若产品代码相同

21、,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell中,最后 调用函数WriteDat。把结果输出到文件OUT10.DAT中。注意:部分源程序存放在PROGI.C中。请勿改动主函数main()、读数据函数ReadDat。和输出数据函数WriteDat。的内容。void SortDat() /*标准答案*/int I,j;PRO xy;for(I=0;I99;I+)for(j=I+l;j100;j+)if(strcmp(sellI.dm,sellj.dm)0)xy=sell I ;sellI=sell j ;sell j=xy;else if(strcmp(sellI.dm,sellj

22、.dm)=O)if(sellI.jesellj.je)xy=sellI; sellI=sellj; sellj=xy;PROG l.C#include#include#include#include#include#define MAX 100typedef struct char dm5; /* 产品代码*/ char产品名称*/int dj; /* 单价*/ int si; /*数量*/ long je; /* 金额*/ PRO;PRO sellMAXJ;void ReadDat();void WriteDat();void SortDat() void main() memset(sel

23、l,0,sizeof(sell);ReadDat();SortDat();WriteDatO; void ReadDat() FILE *fp;char str8O,chll;int i;fp=fopen(IN.DAT?T);for(i=0;i100;i+)fgets(str,8O,fp);memcpy(selli.dm,str,4);memcpy(selli.mc,str+4,10);memcpy(ch,str+14,4);ch4=0;selli.dj=atoi(ch);memcpy(ch,str+18,5);ch5=0;selli.sl=atoi(ch);selli.je=(long)se

24、lli.dj*selli.sl;fclose(fp);)void WriteDat(void)FILE *fp;int i;fp=fopen(OUT10.DAT,wn);for(i=0;i第题8:函数ReadDat。实现从文件ENGIN中读取一篇英文文章,存入到字符串数组 xx中:请编制函数encryptChar。,按给定的替代关系对数组xx中的所有字符进行替代,仍 存入数组xx的对应的位置上,最后调用函数WriteDat。把结果xx输出到文件PS1.DAT中。替代关系:f(p)=p*ll mod256(p是数组中某一个字符的ASCH值,f(p)是计算后新字符 的ASCII值),如果计算后f(

25、p)值小于等于32或大于130,则该字符不变,否则将f(p)所对 应的字符进行替代。注意:部分源程序已给出。原始数据文件存放的格式是:每行的宽度均小于80个字符。 请勿改动主函数main。、读数据函数ReadDat。和输出数据函数WriieDat。的内容。void encryptChar。/*标准答案*/int I;char *pf;fbr(I=O;I 130ll*pf* 11 %256=32);else*pf=*pf*ll%256;pf+; )或者:void encryptChar() int i,j;char *p;for(i=0;imaxline;i+)for(j=0;jstrlen(x

26、xi);j+) p=(xxij*ll)%256;if(p130)else xxij=p; )PROG1.C#include#include#include#includeunsigned char xx5O8OJ;int maxline=O;/*文章的总行数*/int ReadDat(void);void WriteDat(void);void encryptChar() void main()(clrscr();if(ReadDat()printf(数据文件ENGIN不能打开! n007M);return;)encryptChar();WriteDatO;system(upauseM);in

27、t ReadDat(void) ( FILE *fp;int i=0;unsigned char *p;if(fp=fopen(eng.in,r)=NULL) return 1; while(fgets(xxi,80,fp)!=NULL) p=strchr(xxi,n,);if(p)*p=0;i+; ) maxline=i;fclose(fp);return 0;)void WriteDat(void)(FILE *fp;int i;fp=fopen(,psl.dat,;wn);for(i=0;imaxline;i+) printf(M%snM,xxi);fprintf(fp,n%snM,xx

28、i); fclose(fp);第题9:函数ReadDat()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx 中;请编制函数SortCharD(),其函数的功能是:以行为单位对字符按从大到小的顺序进行 排序,排序后的结果仍按行重新存入字符串数组xx中。最后main。函数调用函数WriteDat。 把结果xx输出到文件OUT2.DAT中。例:原文:dAe,BfC.CCbbAA结果:fedCBA., bbCCAA原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。注意:部分源程序存放在PROG1.C中。请勿改动主函数main()、读数据函数ReadDat。和输出数据

29、函数WriteDat。的内容。类型:字符串(单词)的倒置和删除。答案:void SortCharD(void) /*标准答案*/int I,j,k,strl;char ch;for(I=0;Imaxline;I+)strl=strlen(xxI);for(j=0;jstrl-l ;j+)for(k=j+l ;kstrl;k+)if(xxIUxxIk) ch=xxIj; xxIJj=xxIk; xxIk=ch; )PROG1.C#include #include #include char xx5O8O;int maxline = 0 ; /*文章的总行数*/int ReadDat(void);

30、void WriteDat(void);void SortCharD(void)int I,j,k,strl;char ch;for(I=0;Imaxline;I+)strl=strlen(xxI);for(j=0;jstrl-l ;j+)for(k=j+l ;kstrl;k+)if(xxIjxxIk) ch=xxl|jj; xxIj=xxIk;xxIk=ch;void main()(clrscr();if(ReadDat() printf(数据文件IN.DAT不能打开!n007);return ;SortCharD();WriteDat();system(upauseH); )ini Rea

31、dDat(void)(HLE *fp;int i = 0 ;char *p;if(fp = fopen(IN.DATn, Y) = NULL) return 1 ;while(fgets(xxi, 80, fp) != NULL) p = strchr(xxi, n);if(p) *p = 0 ;i+;maxline = i;fclose(fp);return 0; )void WriteDat(void)(FILE *fp;inti;clrscr();fp = fopen(OUT2.DAT,W);fbr(i = 0 ; i maxline ; i+) printf(%sn,xxi);fpri

32、ntf(fp, M%snM, xxi);fclose(fp);卜第题10:请编制函数ConvertCharAO,其函数的功能是:以行为单位把字符串中的所有 小写字母改写成该字母的下一个字母,如果是字母z,则改写成字母a,大写字母和其它字符 保持不变。把已处理的字符串仍按行重新存入字符串数组xx中。最后main。函数调用函数 WriteDat。把结果xx输出到文件OUT3.DAT中。例:原文:Adb.Bcdzaabck.LLhj结果:Aec.Bdeabbcdl.LLik原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。注意:部分源程序存放在PROG 1.C中。请勿改动主函数

33、main()、读数据函数ReadDat。和输出数据函数WriteDat。的内容。类型:字符串(单词)的倒置和删除。答案:void ConvertCharA(void) /*标准答案*/int I,j,str;for(I=0;Imaxline;I+)str =strlen(xxI);for(j=0;j=a,&xxIj=y)xxIj+=l;)PROG1.C#include #include #include char xx5080;int maxline = 0 ; /*文章的总行数*/int ReadDat(void);void WriteDat(void);void ConvertCharA(

34、void) void main() clrscr();if(ReadDat() printf(数据文件IN.DAT不能打开!n007”);return ;)ConvertCharA();WriteDat();system(npause);int ReadDat(void) FILE *fp ; int i = 0 ; char *p ;if(fp = fopenCIN.DAT, V) = NULL) return 1 ;while(fgets(xxi, 80, fp) != NULL) p = strchr(xxi, n);if(p) *p = 0 ;i+ ;)maxline = i; fcl

35、ose(fp); return 0 ;void WriteDat(void)(FILE *fp ; int i;clrscr();fp = fopen(OUT3.DAT”, W);for(i = 0 ; i =,a&*s=A&*s=Y)*s+=l;s+;else s+;或者:void chg(char *s) int i,k;k=strlen(s);for(i=0;ik;i+) if(si=z,llsi=Z,) si-=25;else if(isalpha(si) si+; PROG1.C#include #include #include #include #define N 81 void

36、 readwriteDAT();void chg(char*s) main()(char aN;clrscr();printf(HEnter a string : ); gets(a);printf(The original string is : ); puts(a);chg(a);printf(MThe string after modified :);puts (a);readwriteDAT();system(,pausen);)void readwriteDAT()(inti;char aN;FILE *rf, *wf;rf = fopen(nin.datu, nrn);wf=fop

37、en(out.datM, nwH);for(i = 0 ; i 10 ; i+) fscanf(rf, n%sH, a);chg(a);fprintf(wf, H%snM, a);fclose(rf);fclose(wf);第题12:已知在文件IN.DAT中存有100个产品销售记录,每个产品销售记录由产品代 码dm(字符型4位),产品名称me(字符型10位),单价dj(整型),数量si(整型),金额je(长 整型)四部分组成。其中:金额=单价*数量计算得出。函数ReadDat。是读取这100个销售记 录并存入结构数组sell中。请编制函数SortDatO,其功能要求:按产品名称从小到大进行排

38、列,若产品名称相同,则按金额从小到大进行排列.最终排列结果仍存入结构数组sell中,最 后调用函数WriteDat()把结果输出到文件OUT5.DAT中。注意:部分源程序存放在PROG1.C中。请勿改动主函数main()、读数据函数ReadDat。和输出数据函数WriteDat。的内容。void SortDal。/*标准答案*/int IJ;PRO xy;for(I=0;I99;I+)for(j=I+l;j100;j+)if(strcmp(sel 1 I .dm,sell j .dm)0) xy=seIlI;sellI=seUj;sellj=xy; else if(strcmp(sellI.dm,sellj.dm)=O) if(sellI.jesell|j.je)xy=sellIJ; sellI=sellj; sellj=xy;PROG1.C#include#include#include #include #include#define MAX 100 typedef struct char dm5;/* 产品代码*/ char mcU

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com