c语言由键盘任意输入一串字符,再输入一个字符和一个位置,将此字符插入在此串字符的这个位置上。如:原串为abcdef,插入字符为k,位置为2,新串为abkcdef。代码
时间: 2024-05-03 13:20:13 浏览: 95
如下:
```
#include<stdio.h>
#include<string.h>
int main() {
char str[100], c;
int pos, len;
printf("请输入需要插入字符的串:");
scanf("%s", str);
printf("请输入需要插入的字符:");
scanf(" %c", &c);
printf("请输入需要插入的位置(从0开始):");
scanf("%d", &pos);
len = strlen(str);
if(pos > len) {
printf("插入位置超过字符串长度!");
return 0;
}
for(int i = len; i > pos; i--) {
str[i] = str[i-1];
}
str[pos] = c;
printf("新串为:%s", str);
return 0;
}
```
注意:代码中的 `scanf("%s", str);` 在输入字符串时存在缓存溢出的问题,建议使用 `fgets()` 函数获取输入,如下所示:
```
fgets(str, sizeof(str), stdin);
```
阅读全文