从键盘输入两个字符串存入char a[50]和char b[20],输入n值,将字符串b插入在字符串a下标n开始的位置。 说明:可根据需要定义其他变量。 【样例输入】 abcdef ABC 3 【样例输出】 abcABCdef
时间: 2024-02-21 19:02:12 浏览: 76
C++中带空格字符串的输入问题解决
好的,这是一个关于字符串插入的问题。下面是一份示例代码,可以实现上述功能:
```c
#include <stdio.h>
#include <string.h>
int main() {
char a[50], b[20];
int n, lena, lenb, i, j;
printf("请输入字符串a:");
gets(a);
printf("请输入字符串b:");
gets(b);
printf("请输入插入位置n:");
scanf("%d", &n);
lena = strlen(a);
lenb = strlen(b);
// 将字符串b插入在字符串a下标n开始的位置
for (i = lena; i >= n; i--) {
a[i + lenb] = a[i];
}
for (i = 0, j = n; i < lenb; i++, j++) {
a[j] = b[i];
}
printf("插入后的字符串为:%s\n", a);
return 0;
}
```
代码的思路是先输入字符串a、字符串b和插入位置n,然后计算出字符串a和字符串b的长度。接着,从字符串a的最后一位开始,将每个字符向后移动lenb个位置,留出插入字符串b的位置。最后,从插入位置n开始,依次将字符串b中的字符插入到字符串a中即可。
阅读全文