#include<string.h>
#include<ctype.h>
#include<stdio.h>
/*插入函数 ccode待插入的字符 anystring被插入的字符串 spos插入到字符串的位置*/
void cinsert(char ccode,char *anystring,int spos) ;
/*删除函数 anystring被删除的字符串 spos删除第几个字符*/
void cdelete(char *anystring,int spos) ;
int main(void)
{
char p[] = "helloworld" ;
cinsert('Y' , p , 6) ;
printf("往第6个位置插入字符Y:p = %s\n",p);
cdelete(p , 6);
printf("删除字符串中的第6个字符:p = %s\n",p);
return 0 ;
}
/*插入函数 ccode待插入的字符 anystring被插入的字符串 spos插入到字符串的位置*/
void cinsert(char ccode,char *anystring,int spos)
{
int p;
p=strlen(anystring); /*字符串的长度*/
spos=spos<0?0:spos; /*插入范围*/
spos=spos>=p?p:spos;
for(;p>=spos;p--)
anystring[p+1]=anystring[p]; /*从数组最后那那个元素开始向上加*/
anystring[spos]=ccode; /*插入该字符*/
}
/*删除函数 anystring被删除的字符串 spos删除第几个字符*/
void cdelete(char *anystring,int spos)
{
int p;
p=strlen(anystring); /*字符串的长度*/
if(p>0&&spos>=0&&spos<=p){
while(spos<p)
{
anystring[spos]=anystring[spos+1];
spos++;
}
}
}
运行结果: