c语言中一个字符串排序题

c语言中一个字符串排序题

ID:21019517

大小:26.00 KB

页数:5页

时间:2018-10-18

c语言中一个字符串排序题_第1页
c语言中一个字符串排序题_第2页
c语言中一个字符串排序题_第3页
c语言中一个字符串排序题_第4页
c语言中一个字符串排序题_第5页
资源描述:

《c语言中一个字符串排序题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、c语言中的一个字符串排序题标签:日志原文:http://blog.sohu.com/people/!amlhbnFpYW5nZGV5aW1pQGNoaW5hcmVuLmNvbQ==/93893217.html题目3:函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数STROR(),其函数功能是:以行为单位把字符串中的所有小写字母O左边的字符串内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已处理字符串的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OU

2、T.DAT中.例如:原文:Youcancreateanindexonanyfield.youhavethecorrectrecord.结果:nanyfield.Youcancreateanindexrd.yuhavethecrrectrec原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格.-------------------类型:字符串(单词)的倒置和删除。答案:voidStrOR(void)/*标准答案*/{intI,j,k,index,strl;charch;for(I=0;I

3、trl;for(j=0;j=index;j--){ch=xx[I][strl-1];for(k=strl-1;k>0;k--)xx[I][k]=xx[I][k-1];xx[I][0]=ch;}}}或者:voidStrOR(void){inti;chara[80],*p;for(i=0;i

4、){memset(a,0,80);memcpy(a,xx[i],p-xx[i]);strcpy(xx[i],p+1);strcat(xx[i],a);p=strchr(xx[i],'o');}}}或者:voidStrOR(void)/*我的非指针解法*/{inti,righto,j,k;chartem[80];for(i=0;i=0;j--){if(xx[i][j]=='o'){righto=j;break;}}for(j=righto+1;j

5、rlen(xx[i]);j++)tem[k++]=xx[i][j];for(j=0;j

6、前面字符串的结束位置*p1='')。这时完成左右互换。最后一个while()循环的作用是删除新串中的所有小写字母'o',采用的删除方法是不是'o'的字母一律留下,否则不留(即相当于删除。)voidStrOR(void){inti;char*p1,*p2,t[80];for(i=0;i

7、*p2;p2++;}*p1='';}}或者:注:该题的主要算法是先让两字符指针都指向串尾,然后使一指针(p1)往前移动,当出现不是字母时则表示在p1+1与p2之间是一个单词,并将该单词存入一变量(t1),最后将t1连接到新串中(t);接着再往前找第二个单词,依次类推直到字符串头。由此可知新串就是原串中各单词的倒排。voidStr0L(void){inti,k;char*p1,*p2;chart[80],t1[80];for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。