三级网络技术上机字符串排序.doc_第1页
三级网络技术上机字符串排序.doc_第2页
三级网络技术上机字符串排序.doc_第3页
三级网络技术上机字符串排序.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第79套函数ReadDat( )实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中; 请编制函数SortCharD( ), 其函数的功能是: 以行为单位对字符按ASCII码从大到小的顺序进行排序, 排序后的结果仍按行重新存入字符串数组xx中。最后main()函数调用函数WriteDat()把结果xx输出到文件OUT2.DAT中。 例: 原文: dAe,BfC. CCbbAA 结果: fedCBA., bbCCAA 原始数据文件存放的格式是: 每行的宽度均小于80个字符, 含标点符号和空格。 注意: 部分源程序存放在PROG1.C中。 请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串(单词)的倒置和删除。答案:void SortCharD(void) unsigned int i,j,k; /* 定义变量 */ int temp; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi)-1;j+) /*选择法排序*/ for(k=j+1;kstrlen(xxi);k+) if(xxijxxik) temp=xxij; xxij=xxik; xxik=temp; 第80套函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编制函数SORTCHARA(),其函数功能是:以行为单位对字符按从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文件OUT1.DAT . 例:原文:dAe,BfC. CCbbAA 结果:,.ABCdef AACCbb 原始数据文件存放的格式是: 每行的宽度均小于80个字符, 含标点符号和空格。 注意: 部分源程序存放在PROG1.C中。 请勿改动主函数main( )、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串(单词)的倒置和删除。void SortCharA(void) unsigned int i,j,k; /* 定义变量 */ int temp; for(i=0;imaxline;i+) for(j=0;jstrlen(xxi)-1;j+) /*选择法排序*/ for(k=j+1;kxxik) temp=xxij; xxij=xxik; xxik=temp; 第81套函数ReadDat()实现从文件in.dat中读取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 5 9 4 3 2 1部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串左右排序和比较。void jsSort() unsigned int i,j,k; /* 定义变量 */ int temp; for(i=0;i20;i+) for(j=0;jstrlen(xxi)/2-1;j+) /* 选择法排序 */ for(k=j+1;kstrlen(xxi)/2;k+) if(xxijxxik) temp=xxij; xxij=xxik; xxik=temp; for(j=0;jstrlen(xxi)/2;j+) /* 交换字符 */ k=j+(strlen(xxi)+1)/2; temp=xxij; xxij=xxik; xxik=temp; 第82套函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其ASCII值从小到大的顺序进行排序,下标为偶数的位置上的字符仍按原来的位置存放,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。例如:位置01234567源字符串h g f e d c b a 则处理后字符串 h a f c d e b g部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串左右排序和比较。void jsSort() unsigned int i,j,k; /* 定义变量 */ int temp; for(i=0;i20;i+) for(j=1;jstrlen(xxi)-1;j+=2) /*选择法排序*/ for(k=j+2;kxxik) temp=xxij; xxij=xxik; xxik=temp; 第83套函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组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 8部分源程序已给出。请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。-类型:字符串左右排序和比较。注:要注意当要进行右半部分排序时,一定要判断原字符串个数是否为奇数,若是则要half加1,本题对右半部分采用选择法对其进行升序排序。void jsSort() unsigned int i,j,k; /* 定义变量 */ int temp; for(i=0;i20;i+) for(j=0;jstrlen(xxi)/2-1;j+) /* 左侧排序 */ for(k=j+1;kstrlen(xxi)/2;k+) if(xxijxxik) temp=xxij; xxij=xxik; xxik=temp; for(j=(strlen(xxi)+1)/2;jstrlen(xxi)-1;j+) /* 右侧排序 */ for(k=j+1;kxxik) temp=xxij; xxij=xxik; xxik=temp; 第84套 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组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部分源程序已给出。请勿改动主函数main()、读函数ReadDat()和写函数WriteDat()的内容。 -类型:字符串左右排序和比较.注:先采用冒泡法对左边部分进行升序排序,然后将排序后的左半与右半按对应位进行调换。void jsSort() unsigned int i,j,k; /* 定义变量 */ int temp; for(i=0;i20;i+) f

温馨提示

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

评论

0/150

提交评论