yuAriellexi
yuAriellexi
2018-09-13 14:57
采纳率: 52.4%
浏览 699

思路解答 面试题 字符串替换函数

发现大家这道题都没有写main函数,是因为是给定一个字符串,所以只写函数就可以了么?
因为我的代码会受到输入char数组的影响,我先定义了一个很大的char数组,然后循环第一个字符串,如果遇到%s就替换,我可以通过设置char 数组全是'0',然后输入多少个char字符,来确定char数组的长度. 循环完后,要把char数组全部补充到a后面,所以我还要再删掉后面的'0',对么?

 题目描述
请你实现一个简单的字符串替换函数。原串中需要替换的占位符为"%s",请按照参数列表的顺序一一替换占位符。若参数列表的字符数大于占位符个数。则将剩下的参数字符添加到字符串的结尾。

给定一个字符串A,同时给定它的长度n及参数字符数组arg,请返回替换后的字符串。保证参数个数大于等于占位符个数。保证原串由大小写英文字母组成,同时长度小于等于500。

测试样例:
"A%sC%sE",7,['B','D','F']
返回:"ABCDEF"
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • caozhy
    已采纳

    既然题目保证长度小于等于500,那么你先定义了一个很大的char数组是可以的。
    不过,既然你是c++,那么直接字符串连接就可以,c++有现成的string,不需要char数组了,具体做法看:https://blog.csdn.net/sharp_up/article/details/77131932

    程序要运行,作为完整程序,肯定是要main函数,但是题目或者在线测试平台(oj平台)可能不需要你写出来。

    点赞 评论

相关推荐