从一个字符串s的第i个字符(不包括此字符)开始删除n个字符


/*
* 从一个字符串s的第i个字符(不包括此字符)开始删除n个字符"dadh5asdadd"
*
*/
#include <stdio.h>
#include <string.h>
void del(char *p,int i,int n)
{
int cnt;
int j;
for(cnt=0; ;cnt++)
if (*(p+cnt)=='\0')
{
break;
}

if ((i+n)>=cnt)
{
*(p+i)='\0';
printf("%s",p);
printf("\n");
return;
}
/*if (i==cnt)
{
printf("%s",p);
printf("\n");
return ;
}*/
for(j=i;;j++)
{
if(*(p+j+n)=='\0')
break;
*(p+j)=*(p+j+n);
}
*(p+j)='\0';
printf("%s",p);
printf("\n");
}

void main()
{ char a[]="mynameislhp";
int b=strlen(a);
printf("字符串是%s\n字符串的长度是 %d",a,b);
printf("\n");
int i=5;
int n=6;
printf("开始从第%d个字符开始删除%d个字符",i,n);
printf("\n");
printf("删除后的字符串是:\n");
del(a,i,n);
int c=strlen(a);
printf("the string numbers is %d",c);
printf("\n");
}

posted @ 2014-05-06 20:36  旺仔小馒头  阅读(874)  评论(0编辑  收藏  举报