欢迎访问题库宝!

阅读以下说明和C函数,填补代码中的空缺,将解答填入答题纸的对应栏内。[说明]函数removeDuplicates(chai *str)的功能是移除给定字符串中的重复字符,使每种字符仅保留一个,其方法是

题库宝 分享 时间: 加入收藏

考试:初级软件水平考试

科目:(初级)程序员(在线考试)

问题:

阅读以下说明和C函数,填补代码中的空缺,将解答填入答题纸的对应栏内。[说明]函数removeDuplicates(chai *str)的功能是移除给定字符串中的重复字符,使每种字符仅保留一个,其方法是:对原字符串逐个字符进行扫描,遇到重复出现的字符时,设置标志,并将其后的非重复字符前移。例如,若str指向的字符串为"aaabbbbscbsss",则函数运行后该字符串为"absc"。[C代码] voidremoveDuplicates(char *str) { inti,len=strlen(str); /*求字符串长度*/ if(______)return; /*空串或长度为1的字符串无需处理*/ for(i=0;i<len;i++){ int flag=0; /*字符是否重复标志*/ int m; for(m=______; m<len;m++){ if(Str[i]==str[m]){ ______; break; } } if (flag) { int n,idx=m; /*将字符串第idx字符之后、与str[i]不同的字符向前移*/ for(n=idx+1; n<len; n++) if(Str[n]!=str[i]){ str[idx]=str[n];______; } str[______]='0'; /*设置字符串结束标志*/ } } }

答案:


相关标签:

(初级)程序员     函数     字符     说明     给定     每种    

热门排序

推荐文章

(Ⅲ)是( ) 假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间为10μs,由缓冲区送至用户区的时间是5μs,系统对每个磁盘块数据的处理时间为2μs。若用户需要将大小为10个磁盘块的Doc文件逐块从磁盘读入缓冲区 ( )指信息的主要质量属性可以被证实或者证伪的程度。 已知某二叉树的先序遍历序列为A B C D E F、中序遍历序列为B A D C F E,则可以确定该二叉树( )。 阅读下列说明,回答下列问题。[说明]某嵌入式刹车控制软件,应用于汽车刹车控制器,该软件需求如下:1.模式选择:采集模式控制离散量信号In_D1并通过模式识别信号灯显示软件当前工作模式。在信号In_D1 IETF定义的多协议标记交换(MPLS)是一种第三层交换技术。MPLS网络由具有IP功能、并能执行标记分发协议(LDP)的路由器组成。负责为网络流添加和删除标记的是()。 某项目主要由A~I任务构成,其计划图(如下图所示)展示了各任务之间的前后关系以及每个任务的工期(单位:天),该项目的关键路径是B→E→G→I。在不延误项目总工期的情况下,任务A最多可以推迟开始的时间是 网络配置如图所示,其中使用了一台路由器、一台交换机和一台集线器,对于这种配置,下面的论断中正确的是(6)。 在UML语言中,下图中的a、b、c三种图形符号按照顺序分别表示 ( ) 。 在下图所示的网络中需要实现接入交换机作为PC的网关,实现不同网段用户间通信。根据以下SW2的配置进行命令填空或者解释,将 (1)-(5)写在对应的答题纸上:<HUAWEI> system-view[H
221381
领取福利

微信扫码领取福利

微信扫码分享