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; +}