#include <stdio.h>
#include <string.h>

void insertc(char *str, char c, int n) {
    int len = strlen(str);
    if (n < 0 || n > len) {
        printf("插入位置无效!\n");
        return;
    }
    for (int i = len; i >= n; i--) {
        str[i+1] = str[i]; // 后移一位
    }
    str[n] = c; // 插入字符
}

int main() {
    char str[100], c;
    int n;
    printf("请输入字符串:");
    scanf("%s", str);
    printf("请输入要插入的字符:");
    getchar(); // 抵消scanf后的回车符
    c = getchar();
    printf("请输入要插入的位置:");
    scanf("%d", &n);
    insertc(str, c, n);
    printf("插入结果:%s\n", str);
    return 0;
}

该代码实现了 insertc() 函数,该函数将字符 c 插入到字符串 str 的第 n 个位置。在 main() 函数中,用户输入字符串、字符和插入位置,调用 insertc() 函数后输出插入结果。例如,在字符串 'abcdedg' 的第 5 个位置插入 'm',插入结果为 'abcdmedg'。

该函数首先判断插入位置是否有效,如果无效则输出错误信息。然后,将字符串从插入位置开始向后移动一位,最后将字符插入到指定位置。

该代码示例可以帮助您更好地理解 C 语言中的字符串操作,并为您的代码编写提供参考。

C语言字符串插入字符函数 - insertc() 实现与示例

原文地址: https://www.cveoy.top/t/topic/odAB 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录