输入两串字符,实现将字符二插入到字符一的指定位置c语言
时间: 2024-05-04 18:21:55 浏览: 13
下面是一个示例代码,可以实现将字符二插入到字符一的指定位置:
```c
#include <stdio.h>
#include <string.h>
void insert(char str1[], char str2[], int pos)
{
int len1 = strlen(str1);
int len2 = strlen(str2);
// 将字符二插入到字符一的指定位置
for (int i = len1 - 1; i >= pos; i--) {
str1[i + len2] = str1[i];
}
for (int i = 0; i < len2; i++) {
str1[pos + i] = str2[i];
}
}
int main()
{
char str1[100], str2[100];
int pos;
printf("请输入字符串一:");
scanf("%s", str1);
printf("请输入字符串二:");
scanf("%s", str2);
printf("请输入要插入的位置(从0开始):");
scanf("%d", &pos);
insert(str1, str2, pos);
printf("插入后的字符串为:%s\n", str1);
return 0;
}
```
在这个示例代码中,我们先定义了一个 `insert` 函数,用于将字符二插入到字符一的指定位置。然后在 `main` 函数中,我们读入了两个字符串以及要插入的位置,然后调用 `insert` 函数将字符二插入到字符一的指定位置。最后,我们输出插入后的字符串。
需要注意的是,在这个示例代码中,我们假设字符一的长度足够容纳字符二,如果字符一的长度不够,那么插入操作就会导致字符溢出。为了避免这种情况,我们可以在插入操作之前,先判断字符一的长度是否足够容纳字符二。