diff --git a/2208/C语言/源码/字符串-3.c b/2208/C语言/源码/字符串-3.c
new file mode 100644
index 0000000..c1af17c
--- /dev/null
+++ b/2208/C语言/源码/字符串-3.c
@@ -0,0 +1,41 @@
+#include <stdio.h>
+#include <string.h>
+
+int main() {
+    char str1[200], str2[100];
+    int i, j, index;
+
+    printf("���������ַ���:");
+    fgets(str1, sizeof(str1), stdin);
+    str1[strcspn(str1, "\n")] = '\0'; // ȥ�����з�
+
+    printf("������Ҫ������ַ���:");
+    fgets(str2, sizeof(str2), stdin);
+    str2[strcspn(str2, "\n")] = '\0'; // ȥ�����з�
+
+    printf("������Ҫ�����λ��:");
+    scanf("%d", &index);
+
+    int len1 = strlen(str1);
+    int len2 = strlen(str2);
+
+    // ������λ���Ƿ���Ч
+    if (index < 0 || index > len1) {
+        printf("����λ����Ч\n");
+        return 1;
+    }
+
+    // �ƶ��ַ����ڳ��ռ�
+    for (i = len1; i >= index; i--) {
+        str1[i + len2] = str1[i];
+    }
+
+    // ���� str2
+    for (j = 0; j < len2; j++) {
+        str1[index + j] = str2[j];
+    }
+
+    printf("�������ַ���: %s\n", str1);
+
+    return 0;
+}