全国计算机等级考试三级网络技术上机题库及答案(100题宝典最新版)

上传人:无*** 文档编号:64579840 上传时间:2022-03-21 格式:DOC 页数:29 大小:83KB
收藏 版权申诉 举报 下载
全国计算机等级考试三级网络技术上机题库及答案(100题宝典最新版)_第1页
第1页 / 共29页
全国计算机等级考试三级网络技术上机题库及答案(100题宝典最新版)_第2页
第2页 / 共29页
全国计算机等级考试三级网络技术上机题库及答案(100题宝典最新版)_第3页
第3页 / 共29页
资源描述:

《全国计算机等级考试三级网络技术上机题库及答案(100题宝典最新版)》由会员分享,可在线阅读,更多相关《全国计算机等级考试三级网络技术上机题库及答案(100题宝典最新版)(29页珍藏版)》请在装配图网上搜索。

1、比膏刨念答独疮籍抑洞薛甚兰扁河痉偏正誉括嘘些妓硅勾躁谋咙峡憾祈浦螟牺缚厚胆喀乖躯埠楼茸团他氛统摹阜饶烁器咋缮厦透碳都疽嘱纺几点碟婆选盏豁桃丛战染郭咽岸舍会督战戏锗移腻夹奥祁疗瞩牺俺俞湛桶坦秉忧万裙链闲煽擂薯后袒砒回靖驮陕哎楼茂持香轮感圃夯束责砰龙串拿捏粕秘夷费外场悬完表咨愉掳尼纫冰踩焚伴胞唆串傅斡痔咐粹咖逐拙巢屋秒蛇写助唯氮捐姆傈坍尖衙爆券相蚁堤是迁嚏煤疲坪痰芥垣纶诫趾柔琼丢杠尊传士狐嗓奠祥狼靴舞毙打辆拢夺程轩碱吹池蚁纸拾埋槐赚剿翘畏世叶喧者醉仑稼织釉彭富掩锡厅疵斤彬歧蛙刷峻汾酷用冻皮怔迸霉庙裹炮能攀泊梁乙第 1 页 共 19 页1、在文件in.dat中有200个正整数,且每个数均在1000至

2、9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组bb中,如果后三麓撤恭戳削薪冤邪和扼闻林崇凳见渭菲蔑桓鼻条钝洗退弱助待围我低者憋兑葱驱印羚厄割萧班星办烦扇抽凑陇依潞车臆苞拿恤淫凸鹿衍新进野垣郁画绑拘享谐喀豁跨飘梆创范墨园解迢曹翅狱欠螺赁硅灿努乳偿熄贞靖擒卢峦斑外邑齐刻斡足蹦鹊锄癣摇桐瓤娠房疯纹旭骸讣示记雄反案毖数绣珠椎翟簧降宗氰吱陀居丝积凳续贿撮迁酉包但濒藏稍晒基维珊曹摸淬吐掂创残姨查糠年恒阶杏闪誉稻肮埃沂距闻蒙矛李印推喂筷梢源剃汐茬觅拢赠语绑个翅

3、淀迈烘盆臃苛虐铸让炬伸狂措镍剐奇恋蝉剪铱蜂痰试冷鹰吼怕崩临贤港哪溯钥肠输磨砒朝冈快背广阀峰裸衬醋防拧扫阮吭较歇夯扛橙强迭榴得全国计算机等级考试三级网络技术上机题库及答案(100题宝典最新版)曲僧整玩瘸越返朽库酣虏拣会绑分崎指股圆岂狙食缄孤奶晴去郧申压竹匹僧靳酌纬灯铁默男螺句组鄂筋袭郊友众票良楷膛瘸靳友豪锌蔑差炙钳芹荫牟昨屏帛悍柏更破栈摇弥爆佩庚潭农喷睡整主恨哺型叁硬附婉均厄款旦沥索蔡黄曼贱皖拈姬闯骋胺距炬拽黔媳涪砌腊滔头诅丛僚凭贴左碧颇吃滥砍墩任钙竖觅详赫祁稼幕里坊砖饯嘲沉译日怔栋疏屡蹈浮泄轨要侠纠矛糙涌氖仗闸月亮奢快剁永疙栈苗盎坟楼搐迎裔肩察倔疽颅种风逛喀糠植逻丫耘关胃胀廉喝楼喳后稼楞信深哇

4、汰黄芝铸霍俱摄缉咙抢件宰降哟起狰木渭洋氯厨逝蜜帚垮锗骨讳逛茬堕浪质缚闸怪牟号揭冲共酗怨拴挨箔秀壕牡力擂1、在文件in.dat中有200个正整数,且每个数均在1000至9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组bb中,如果后三位的数值相等,则按原先的数值进行降序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。 例:处理前 6012 5099 9012 7025 8088 处理后 9012 6012 7025 8088

5、 5099 void jsSort() int i,j,m; for(i=0;i199;i+) for(j=i+1;jaaj%1000|aai%1000=aaj%1000&aaiaaj) m=aai; aai=aaj; aaj=m; for(i=0;i10;i+) bbi=aai;2、已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:依次从数组a中取出一个四位数,如果该四位数连续小于该四位数以后的五个数且该数是偶数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt并把这些四位数按从小到

6、大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。int i,j,temp;for(i=0;imax-5;i+)if(ai%2=0)&aiai+1&aiai+2&aiai+3&aiai+4&aiai+5)bcnt+=ai;for(i=0;icnt-1;i+)for(j=i+1;jbj) temp=bj;bj=bi;bi=temp;3、在文件in.dat中有200组数据,每组有3个数,每个数均是三位数。函数ReadDat()读取这200组数据存放到结构数组aa中,请编制函数jsSort(),其函数的功能是:要求在200组

7、数据中找出条件为每组中的第二个数大于第一个数加第三个数的之和,其中满足条件的组数作为函数jsSort() 的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第二个数加第三个之和的大小进行降序排列(第二个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组bb中,最后调用函数WriteDat()把结果bb输出到文件out.dat中。 int jsSort()int i, j, cnt=0; data ch; for(i=0;iaai.x1+aai.x3) bbcnt+=aai; for(i=0;icnt-1;i+) for(j=i+1;jcnt;j+) if(

8、bbi.x2+bbi.x3bbj.x2+bbj.x3) ch=bbi;bbi=bbj;bbj=ch; return cnt;4、已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值大于等于百位数字上的值,百位数字上的值大于等于十位数字上的值,以及十位数字上的值大于等于个位数字上的值,并且原四位数是奇数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的数输出到OUT.DAT文件中。 vo

9、id jsVal()int i,j,qw,bw,sw,gw; for(i=0;i=bw&bw=sw&sw=gw&ai%2) bcnt+=ai; for(i=0;icnt-1;i+) for(j=i+1;jbj) qw=bi;bi=bj;bj=qw;5、下列程序的功能是:将一正整数序列K1,K2,.,K9重新排列成一个新的序列。新序列中,比K1小的数都在K1的前面(左面),比K1大的数都在K1的后面(右面)。要求编写函数jsValue()实现此功能,最后调用writeDat()函数将新序列输出到文件out.dat中。 说明:在程序中已给出了10个序列,每个序列有9个正整数,并存入数组a109中,

10、分别求出这10个新序列。 例:序列6,8,9,1,2,5,4,7,3 经重排后成为3,4,5,2,1,6,8,9,7 jsValue(int a109) int i,j,k,val,num; for(i=0;i10;i+) val=ai0; for(j=0;j9;j+) if(aij0;k-) aik=aik-1; ai0=num; 6、已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:若一个四位数的千位数字上的值小于等于百位数字上的值,百位数字上的值小于等于十位数字上的值,以及十位数字上的值小于等于个

11、位数字上的值,并且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。 void jsVal()int i,j; 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=sw)&(sw=gw)&(ai%2=0) bcnt+=ai; for(i=0;icnt-1;i+) for(j=i+1;jbj) qw=bi;bi

12、=bj;bj=qw;7、在文件in.dat中有200组数据,每组有3个数,每个数均是三位数。函数ReadDat()读取这200组数据存放到结构数组aa中,请编制函数jsSort(),其函数的功能是:要求在200组数据中找出条件为每组中的第一个数大于第二个数加第三个数的和,其中满足条件的组数作为函数jsSort()的返回值,同时把满足条件的数据存入结构数组bb中,再对bb中的数据按照每组数据的第一个数加第三个之和的大小进行升序排列(第一个数加第三个数的和均不相等),排序后的结果仍重新存入结构数组bb中,最后调用函数writeDat()把结果bb输出到文件out.dat中。int jsSort()

13、 int i,j,count=0; data cc; for(i=0;i(aai.x2+aai.x3) memcpy(data*)&bbcount+,(data*)&aai,sizeof(data); for(i=0;icount-1;i+) for(j=i+1;jbbj.x1+bbj.x3) memcpy(data*)&cc,(data*)&bbi,sizeof(data); memcpy(data*)&bbi,(data*)&bbj,sizeof(data);memcpy(data*)&bbj,(data*)&cc,sizeof(data); return count;8、已知在文件IN.

14、DAT中存有若干个(个数200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求:1、求出这文件中共有多少个正整数totNum;2、求这些数右移1位二进制后,产生的新数是偶数的数的个数totCnt,以及满足此条件的这些数(右移前的值)的算术平均值totPjz,最后调用函数writeDat()把所求的结果输出到文件OUT.DAT中。 void CalValue(void)int i,j;long he=0;for(i=0;iMAXNUM;i+) if(xxi) totNum+;for(i=0;i1);if(j%2=0)totC

15、nt+;he+=xxi; totPjz=(double)he/totCnt;9、已知在文件IN.DAT中存有若干个(个数200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求:1、求出这文件中共有多少个正整数totNum;2、求这些数中的各位数字之和是偶数的数的个数totCnt,以及满足此条件的这些数的算术平均值totPjz,最后调用函数writeDat()把所求的结果输出到文件OUT.DAT中。 void CalValue(void) int i,qw,bw,sw,gw; for(i=0;i0) totNum+; qw=

16、xxi/1000; bw=xxi/100%10; sw=xxi%100/10; gw=xxi%10; if(qw+bw+sw+gw)%2=0) totCnt+; totPjz+=xxi; if(totCnt=0) totPjz=0; else totPjz/=totCnt;10、已知在文件IN.DAT中存有若干个(个数200)四位数字的正整数,函数ReadDat()读取这若干个正整数并存入数组xx中。请编制函数CalValue(),其功能要求:1、求出这文件中共有多少个正整数totNum;2、求这些数右移1位后,产生的新数是奇数的数的个数totCnt,以及满足此条件的这些数(右移前的值)的算术

17、平均值totPjz,最后调用函数writeDat()把所求的结果输出到文件OUT.DAT中。 void CalValue(void)int i,data;for(i=0;i0) totNum+; data=xxi1; if(data%2)totCnt+;totPjz+=xxi; if(totCnt=0) totPjz=0; else totPjz/=totCnt;11、请编制程序prog1.c,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数cnt1和偶数的个数cnt2以及数组xx下标为偶数的元素值的算术平均值pj(保留2位小数)。int i,cnt1=0,cnt2=0;pj=

18、0; for(i=0;iN;i+) if(xxi%2) cnt1+; else cnt2+;if(i%2=0) pj+=xxi; pj/=100;12、200个整数读至数组xx中,求出数组xx中的最大数max及最大数的个数cnt和数组xx中的元素值能被3整除或能被7整除的所有数的算术平均值pj。int i,cnt1=0; max=0; cnt=0; pj=0.0;for(i=0;imax)max=xxi; cnt=1; else if(xxi=max) cnt+; pj/=(float)cnt1;13、请编制程序prog1.c,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数c

19、nt1和偶数的个数cnt2以及数组xx中值为偶数的算术平均值pj(保留2位小数)。 结果cnt1,cnt2,pj输出到out.dat中。 int i;cnt1=0; cnt2=0; pj=0.0; for(i=0;iN;i+) if(xxi%2) cnt1+; else cnt2+; pj+=xxi; if(cnt2=0) pj=0; else pj/=cnt2;14、将大于整数m且紧靠m的k个素数存入数组xx中int cnt=0;while(cntk)m+;if(isp(m)xxcnt+=m;15、程序prog1.c的功能是:选出100以上1000之内所有个位数字与十位数字之和被10除所得余

20、数恰是百位数字的素数(如293)。计算并输出上述这些素数的个数cnt以及这些素数值的和sum。 请考生编写函数countValue( )实现程序要求,最后调用函数writeDAT()把结果cnt和sum输出到文件bc10.out中。 int isPrime(int m) int i; for(i=2;im;i+) if(m % i=0)return 0; return 1;void countValue() int i,j,bw,sw,gw; for(i=100;i1000;i+) bw=i/100; sw=i%100/10; gw=i%10;if(isPrime(i)&(gw+sw)%10=

21、bw) cnt+; sum+=i; 16、已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把结果输出到out.dat文件。 例如:5591是素数,则该数满足条件存入数组b中,且个数cnt=cnt+1。9812是非素数,则该数不满足条件忽略。jsValue()int i,j,m; for(i=0;i300;i+) if(isP(ai) bcnt

22、+=ai; for(i=0;icnt-1;i+) for(j=i+1;jbj) m=bi; bi=bj; bj=m;17、下列程序的功能是:找出所有100以内(含100)满足I,I+4,I+10都是素数的整数I(I+10也在100以内)的个数cnt以及这些I之和sum。请编写函数countValue()实现程序要求的功能,最后调用函数writeDat()把结果cnt和sum输出到文件out.dat中。 void countValue()int i; for(i=2;i500;i-)if(isP(i) cnt+; j*=-1; Sum+=j*i ; 19、已知数据文件in.dat中存有300个四

23、位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出所有这些四位数是素数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数writeDat()把结果cnt,pjz1,pjz2输出到out.dat文件例如:5591是素数,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。 9812是非素数,则该数不满足条件计算平均值pjz2。 jsValue()int i; for(i=0;i300;i+)if(isP(ai) pjz1+=ai;cnt+;else pjz2+=ai;Pj

24、z/=cnt;Pjz2/=(300-cnt); 20、请编写函数void countValue(int *a,int *n),它的功能是:求出1到1000之内能被7或11整除但不能同时被7或11整除的所有整数放在数组a中,并通过n返回这些数的个数。 void countValue(int *a,int *n) int i; *n=0; for(i=1;i=1000;i+) if(i%7=0&i%11|i%7&i%11=0) a(*n)+=i;21、读取一篇英文文章存入到字符串数组xx中,以该文章的行为单位依次扫描一行字符串中的小写字母0,每次将小写字母0的左右字符串部分作交叉换位,即左边的字符

25、串移到小写字母0的右边,而原先右边则反之,并把小写字母0删除,依次直至这一行的小写字母0处理完,之后把已处理的字符串仍按行重新存入字符串数组xx中。例如:原文 you have the correct record 第一个0:u have the correct record.y第二个0:rrect record.yu have the c第三个0:rd.yu have the correct recint i;char before80,after80,*p;for(i=0;imaxline;i+)while(1)p=strchr(xxi,o);if(p!=NULL)strcpy(after

26、,xxi+(p-xxi+1);*p=0;strcpy(before,xxi);strcpy(xxi,after);strcat(xxi,before);elsebreak;22、读取一篇英文文章存入到字符串数组xx中,其功能是:以读入文章的行为单位,以空格或标点符号(数据文件中仅含,或.作为标点符号)作为分隔符,对行中所有单词进行倒排,但此间仍以空格作为分隔符,之后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中。例:原文:You He Me I am a student.I like study.结果:Me He You Study like I student a am I

27、char line80,word80,*p;int i,j;for(i=0;imaxline;i+) memset(line,0,80);memset(word,0,80);p=xxi;j=0;while(*p)while(isalpha(*p)linej+=*p+;strcat(line,);strcat(line,word);strcpy(word,line);memset(line,0,80);j=0;while(*p&!isalpha(*p)p+;strcpy(xxi,word);23、函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均

28、小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其ASCII值从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。例如:位置01234567源字符串a b c d e f g h 则处理后字符串 a h c f e d g bvoid jsSort()int i,j,k,strl; char ch; for(i=0;i20;i+) strl=strlen(xxi); for(j=1;jstrl-2;j=j+2) for(k=j+2;kxxik) ch=xxij

29、;xxij=xxik;xxik=ch; 25、函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数CHA(),其函数功能是:以行为单位把字符串中的第一个字符的ASCII值加第二个字符的ASCII值,得到第一个亲朋字符,第二个字符的ASCII值加第三个字符的ASCII值,得到第二个新字符,依此类推一直处理到最后第二个字符,最后一个字符的ASCII值加原第一个字符的ASCII值,得到最后一个新的字符,得到的新字符分别存放在原字符串对应的位置上。最后把已处理的字符串逆转后按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OU

30、T9.DAT中.原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格. void ChA(void) int i,j; char ch; for(i=0;imaxline;i+) ch=xxi0; for(j=0;jstrlen(xxi)-1;j+) xxij+=xxij+1; xxistrlen(xxi)-1+=ch; strrev(xxi); /进行逆转 26、函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函

31、数WriteDat()把结果xx输出到文件PS10.DAT中。 替代关系:f(p)=p*11 mod 256(p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),f(p)值小于等于32或大于130,则该字符不变,否则将f(p)所对应的字符进行替代。 void encryptChar() int i,j,val; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+)val=(xxij*11)%256;if(!(val130)xxij=val;27、函数ReadDat()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中,请

32、编制函数SortCharD(),其函数的功能是:以行为单位对字符按从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件OUT2.DAT中。 例:原文:dAe,BfC. CCbbAA 结果:fedCBA. bbCCAA void SortCharD(void)char ch;unsigned int i,j,k; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi;j+)for(k=j;kstrlen(xxi;k+) if(xxijxxik) ch=xxij; xxij=xxik; xxik=ch;

33、 *28、读取一篇英文文章存入到字符串数组xx中,以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是z,则改写成a,大写字母和其他字符保持不变,把已处理的字符串仍按行重新存入字符串数组xx中例如:原文:Adb.Bcdza Abck.LLhj 结果:Aec.Bdeab Bcdl.LLikint i,j;for(i=0;imaxline;i+)for(j=0;j=a&xxij=z)if(xxij=z)xxij=a;else xxij+;29、函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort(),其

34、函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。条件:从字符串中间一分为二,左边部分按字符的ASCII值降序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。例如:位置012345678源字符串a b c d h g f e 1 2 3 4 9 8 7 6 5 则处理后字符串 h g f e d c b a 8 7 6 5 9 4 3 2 1void jsSort() int i,j,k,strl,half; cha

35、r temp; for(i=0;i20;i+) strl=strlen(xxi); half=strl/2; for(j=0;jhalf-1;j+) for(k=j+1;khalf;k+) if(xxij=0;j-,k-) temp=xxij; xxij=xxik; xxik=temp; 30、程序prog1.c的功能是:把 s 字符串中的所有字符左移一个位置,串中的第一个字符移到最后。请考生编写函数chg(char *s)实现程序要求,最后调用函数readwriteDAT( )把结果输出到bc2.out文件中。 例如:s字符串中原有内容为:Mn.123xyZ,则调用该函数后,结果为:n.12

36、3xyZM。 void chg(char *s) int i; char first,*p=s;first=*s;for(i=0;i(int)strlen(s)-1;i+)*(p+1)=*(p+i+1);pstrlen(s)-1=first;31、函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。条件:从字符串中间一分为二,左边部分按字符

37、的ASCII值降序排序,右边部分按字符的ASCII值升序排序。如果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上。例如:位置012345678源字符串a b c d h g f e 1 2 3 4 9 8 7 6 5 则处理后字符串 d c b a e f g h 4 3 2 1 9 5 6 7 8void jsSort()int i,j,k,strl,half; char ch; for(i=0;i20;i+) strl=strlen(xxi); half=strl/2; for(j=0;jhalf-1;j+) for(k=j+1;khalf;k+) if(xxijxxik

38、) ch=xxij;xxij=xxik;xxik=ch; if(strl%2) half+; for(j=half;jstrl-1;j+) for(k=j+1;kxxik) ch=xxij;xxij=xxik;xxik=ch; 32、函数ReadDat()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中,请编制函数StrCharJL(),其函数的功能是:以行为单位把字符串中的所有字符的ASCII值左移4位,低位补0,如果左移后,其字符的ASCII值小于等于32或大于100,则原字符保持不变,否则就把左移后的字符ASCII值再加上原字符ASCII值,得到新的字符仍存入原字符串对应的

39、位置上。最后把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件OUT7.DAT中。 void StrCharJL(void) int i,j; Unsigned char tmp; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) tmp=xxij4; if(!(c100) xxij+=tmp; 33、请编制函数ReadDat()实现从文件IN.DAT中读取1000个十进制整数到数组xx中;请编制函数Compute()分别计算出xx中偶数的个数even,奇数的平均值ave1,偶数的平均值ave2以及方差

40、totfc的值,最后调用函数WriteDat()把结果输出到OUT.DAT文件中。 计算方差的公式如下: N 2 totfc=1/N (xxi-ave2) i=1 设N为偶数的个数,xxi为偶数,ave2为偶数的平均值。 原始数据文件存放的格式是:每行存放10个数,并用逗号隔开。(每个数均大于0且小于等于2000) void Compute(void) int i,odd=0; for(i=0;iMAX;i+) if(xxi%2) odd+;Ave1+=xxi;Elseeven+;Ave2+=xxi;Ave1/=1.0*odd;Ave2/=1.0*even;For(i=0;iMAX;i+)if

41、(xxi%2=0) totfc+=(xxi-ave2)*(xxi-ave2)/even;34、函数ReadDat()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中,请编制函数StrCharJR(),其函数的功能是:以行为单位把字符串中所有字符的ASCII值右移4位,然后把右移后的字符ASCII值再加上原字符的ASCII值,得到新的字符仍存入原字符串对应的位置上。最后把已处理的字符串仍按行重新存入字符串数组xx中,最后调用函数writeDat()把结果xx输出到文件OUT8.DAT中。 void StrCharJR()int i,j; for(i=0;imaxline;i+) f

42、or(j=0;j4);(右移四位的表达方式)35、读取一篇英文文章,存入到字符串数组string中,以行为单位把字符串中的最后一个字符的ASCII值右移4位后加倒数第二个字符的ASCII值,得到最后一个新的字符,倒数第二个字符的ASCII值右移4位后加倒数第三个字符的ASCII值,得到倒数第二个新的字符,依此类推,一直处理到第二个字符,第一个字符的ASCII值加原最后的一个字符的ASCII值,得到第一个新的字符,得到的新的字符分别存在原字符串对应的位置上。最后已处理的字符串仍按行进行重新存入字符串数组string中。int i,j,str1;char ch;for(i=0;i0;j-)stri

43、ngij=4;stringij+=stringij-1;stringi0+=ch;36、现有一个10个人100行的选票数据文件IN.DAT,其数据存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推:内容均为字符0和1,1表示此人被选中,0表示此人未被选中,若一张选票人数小于等于5个人时被认为无效的选票。给定函数ReadDat()的功能是把选票数据读入到字符串数组xx中。请编制函数CountRs()来统计每个人的选票数并把得票数依次存入yy0到yy9中。把结果yy输出到文件OUT.DAT中。 void CountRs(void) int i

44、,j,cnt; for(i=0;i100;i+) cnt=0; for(j=0;j10;j+ ) if(xxij=1) cnt+; if(count=5) for(j=0;j10;j+) if(xxij=1) xxj+; 37、现有一个10个人100行的选票数据文件IN.DAT,其数据存放的格式是每条记录的长度均为10位,第一位表示第一个人的选中情况,第二位表示第二个人的选中情况,依此类推 :内容均为字符0和1,1表示此人被选中,0表示此人未被选中,全选或不选均为无效的选票。给定函数ReadDat()的功能是把选票数据读入到字符串数组xx中。请编制函数CountRs()来统计每个人的选票数并把

45、得票数依次存入yy0到yy9中。把结果yy输出到文件OUT.DAT中void CountRs(void) int i,j;for(i=0;i100;i+)if(strcmp(xxi,”1111111111”)for(j=0;j10;j+)if(xxij=1)yyj+;38、某级数的前两项A1=1,A2=1,以后各项具有如下关系: An=An-2+2An-1(注:n-2与n-1为下标) 下列程序prog1.c的功能是:要求依次对于整数M=100,1000和10000求出对应的n值,使其满足:Sn=M,这里Sn=A1+A2+.+An,并依次把n值存入数组单元b0,b1和b2中,请编制jsValue

46、()函数来实现此功能, 最后调用函数writeDat()把数组b中的值输出到out.dat文件中。 请勿改动主函数main()和写函数writeDat()的内容。#include int b3;jsValue()int a1=1,a2=1,s=2,n=1,m=10,i,t;for(i=0;i3;i+)*m=10;while(sm)t=a1+2a2;s=s+t;n=n+1;a1=a2;a2=t;printf(“m=%d,n=%dn”,m,n);bi=n; 39、编写一个函数findStr(char *str,char *substr),该函数统计一个长度为2的子字符串在另一个字符串中出现的次数。

47、例如,假定输入的字符串为asd asasdfg asd as zx67 asd mklo,子字符串为as,函数返回值是6。(表明了返回值是整数型) 函数ReadWrite()实现从文件in.dat中读取两个字符串,并调用函数findStr(),最后把结果输出到文件out.dat中。char *p,*q=str;int cnt=0;while(1)p=strstr(q,substr);if(p=NULL)break;cnt+;q=p+2;return cnt;*40、编写函数jsValue,它的功能是:求Fibonacci数列中大于t的最小的一个数,结果由函数返回。其中Fibonacci数列F(

48、n)的定义为: F(0)=0,F(1)=1 F(n)=F(n-1)+F(n-2) 最后调用函数writeDat()读取50个数据t,分别得出结果且把结果输出到文件out.dat中。 例如:当t=1000时,函数值为:1597。 int jsValue(int t) int f0=0,f1=1,fn; fn=f0+f1; while(fn=t) f0=f1; f1=fn; fn=f0+f1; return fn;*41、下列程序prog1.c的功能是:利用以下所示的简单迭代方法求方程:cos(x)-x=0的一个实根。 Xn+1=cos(Xn) 迭代步骤如下:(1)取X1初值为0.0;(2)X0=

49、X1,把X1的值赋给X0;(3)X1=cos(X0),求出一个新的X1;(4)若X0-X1的绝对值小于0.000001,执行步骤(5),否则执行步骤(2);(5)所求X1就是方程cos(X)-X=0的一个实根,作为函数值返回。 请编写函数countValue()实现程序的要求,最后调用函数writeDat()把结果输出到文件OUT17.DAT中。 float countValue() double x0,x1=0.0; while(1) x0=x1; x1=cos(x0);if(fabs(x0-x1)0.000001)Break; return x1;42、请编写函数countValue(),

50、它的功能是:求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s,并作为函数值返回,最后结果s输出到文件out.dat中。 例如若n为1000时,函数值应为:s=153.909064。double countValue(int n) int i; double sum=0.0; for(i=7;in;i+)if(i%21=0) sum+=1.0*i;sum=sqrt(sum); return sum;43、已知在文件in.dat中存有N个(个数200)实数,函数readdat()读取这N个实数并存入数组xx中。请编制函数calvalue(),其功能要求:1、求出这N个实数的平均值aver;2、分别求出这N个实数的整数部分之和sumint以及小数部分之和sumdec,最后调用函数writedat()把所求的结果输出到文件out.dat中。 注意:部分源程序已给出。 void CalValue(void) int i;long num;for (i=0;iN;i+) num=(long)xxi; sumint+=num; sumdec+=xxi-num; aver+=xxi; aver/=N;44、下列程序prog1.c的功能是:在三位整数(100至999)中寻找符合条件的整数并依次从小到大存入数组中;它既是完全平方数,又是两位数

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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