三级网络机试字符串问题.doc

上传人:工**** 文档编号:559647566 上传时间:2024-03-20 格式:DOC 页数:4 大小:36.01KB
返回 下载 相关 举报
三级网络机试字符串问题.doc_第1页
第1页 / 共4页
三级网络机试字符串问题.doc_第2页
第2页 / 共4页
三级网络机试字符串问题.doc_第3页
第3页 / 共4页
三级网络机试字符串问题.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《三级网络机试字符串问题.doc》由会员分享,可在线阅读,更多相关《三级网络机试字符串问题.doc(4页珍藏版)》请在金锄头文库上搜索。

1、题目11 程序prog1.c的功能是:把 s 字符串中的所有字母改写成该字母的下一个字母,字母z改写成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其它字符不做改变。 请考生编写函数chg(char *s)实现程序要求,最后调用函数readwriteDAT( )把结果输出到文件bc1.out中。 例如:s 字符串中原有的内容为:Mn.123Zxy,则调用该函数后,结果为:No.123Ayz。 注意:部分源程序存在文件prog1.c文件中。 请勿改动主函数main( )和输出数据函数readwriteDAT()的内容。void chg(char *s)while(*s) if(*s=z

2、|*s=Z) *s-=25; s+; else if(*s=a&*s=A&*s=Y) *s+=1;s+; else s+;题目19 编写一个函数findStr(char *str,char *substr),该函数统计一个长度为2的子字符串在另一个字符串中出现的次数。例如,假定输入的字符串为asd asasdfg asd as zx67 asd mklo,子字符串为as,函数返回值是6。 函数ReadWrite()实现从文件in.dat中读取两个字符串,并调用函数findStr(),最后把结果输出到文件out.dat中。 注意:部分源程序存在文件prog1.c中。 请勿改动主函数main()和

3、其它函数中的任何内容,仅在函数findStr()的花括号中填入你编写的若干语句。int findStr(char *str,char *substr) int n=0; char *p , *r; while ( *str ) p=str; r=substr; while(*r) if(*r=*p) r+; p+; else break; if(*r=0) n+; str+; return n;题目43 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的

4、字符按其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;xxIj=xxIk;xxIk=ch; 题目44 函数ReadDat()实现从文件in.da

5、t中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组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

6、 5 9 4 3 2 1部分源程序存在文件prog1.c中。void jsSort() int i,j,k,strl,half; char 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; 题目50 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单

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

8、lf; char temp; for(i=0;i20;i+) strl=strlen(xxi); half=strl/2; for(j=0;jhalf-1;j+) for(k=j+1;kxxik) temp=xxij; xxij=xxik; xxik=temp; for(j=half-1,k=strl-1;j=0;j-,k-) temp=xxij; xxij=xxik; xxik=temp; 题目71 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序

9、,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。条件:从字符串中间一分为二,左边部分按字符的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+) str

10、l=strlen(xxI); half=strl/2; for(j=0;jhalf-1;j+) for(k=j+1;khalf;k+) if(xxIjxxIk) 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; 题目63 程序prog1.c的功能是:把 s 字符串中的所有字符左移一个位置,串中的第一个字符移到最后。请考生编写函数chg(char *s)实现程序要求,最后调用函数readwriteDAT( )把结果输出到bc2.out文件中。 例如:s字符串中原有内容为:Mn.123xyZ,则调用该函数后,结果为:n.123xyZM。 注意:部分源程序存在文件prog1.c文件中。void chg(char *s) int i; char ch=*s; for(i=0;istrlen(s)-1;i+) si=si+1; sstrlen(s)-1=ch;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号