c语言scanf后程序直接结束

scanf后结束运行,无法继续程序

#include
#include

void delete( char *a, int m, int n)
{
int i, j, k;
int length;
length = strlen(a);
for (i = m-1+n; i <=length; i++) {
*(a+m-1) = *(a+i);
m++;
}
}

int main( void )
{
char a[256];
int i, m, n,length;
char t;
scanf("%d %d",&m,&n);
for(i = 0;i<256;i++){
t = getchar();
a[i] = t;
if(a[i] == '\n') break;
}
a[i] = '\0';
delete( a, m, n);
length = strlen(a);
for(i = 0;i
printf("%c", a[i]);
}

return 0;

}

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^