C语言将字符串每个字符后面加上一个字符串?

C语言将字符串每个字符后面加上一个字符串?,第1张

C语言代码和运行结果如下:

输出符合样例,望采纳~

附源码:

#include <stdio.h>

#include <string.h>

void join(char *s1, char *s2) {

    char s[100]// 保存拼接结果

    int i, j, k = 0

    for (i = 0s1[i] != '\0'++i) {

        s[k++] = s1[i]// 先复制s1中的1个字符

        for (j = 0s2[j] != '\0'++j)

            s[k++] = s2[j]// 再拼接整个s2

    }

    strcpy(s1, s)// 最后再将拼接好的s复制回s1

}

int main() {

    char s1[100] = "ABCD"

    char s2[100] = "*"

    join(s1, s2)

    printf("%s\n", s1)

    return 0

}

第一种是从固定位置插入特定字符串(例子里面假设是从第三位开始,所以公式里面的数字是3)【公式为红色字体部分)

第二种是从字符串里面指定的字符后面插入字符串(公式在编辑栏里面)

PS:例子里面C列是需要插入的特定字符串

1、添加字符实现

添加字符或字符串

如果想在字符串 土堆 后面或者前面添加 碎念 字符串。

可以使用 + 号实现字符串的连接,或者使用方法 .join() 来连接字符串。

.join() 方法

官方是这样介绍的:

S.join(iterable) ->str Return a string which is the concatenation of the strings in the iterable. The separator between elements is S.

.join() 方法中传递的参数需要是可迭代的,另外,是使用S作为可迭代参数的分割。

通过以上几点,我们可以这样理解:

a.join(b) ,比如 b=123456,是可以迭代的。这个方法的作用就是把a插入到b中每个字符中。1a2a3a4a5a6就是输出。

''.join([a, b]) 是比较常见的用法。 '' 是空字符,意味着在a, b之间加入空字符,也就是将a, b进行了连接。

实现添加

a = '撒旦士大试试夫'

b = '土堆试夫'

print(a + b)print(''.join([a, b]))

2、插入字符实现

首先将字符串转换为列表,然后使用列表的 .insert() 方法来插入字符。

.insert() 用法

L.insert(index, object) -- insert object before index

注意: .insert() 方法不返回参数,直接在对 L 进行修改。

将对象插入到指定位置的前面。比如 ['a', 'b'].insert(1, 'c') ,那么最后的输出就是`['a', 'c', 'b']。

这个方法是属于列表的方法。

实现插入

a = '撒旦士大试试夫'

b = '土堆'str_list = list(a)str_list.insert(4, b)a_b = ''.join(str_list)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11927007.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存