和答案的分析点不一样
以时光寄黎于岛屿y 圈内达人 2017-03-13 16:38:36
1423 1 0

void fun (char a[], char b[], int n)

{

   int i,n;

   for(i=0;a[i]!=0;i++)

   {

     if(i==n)

   a[i]=a[i+1];

 

   }

   b[i]=a[i];





}


这样可以吗???

问题来自: 编程题真题

共 1 个回答

    qqq 资深元老 助教 3046天前

    我猜不可以。你想啊,如果数组a原本是1,2,3,4,5,你输入一个n=2,那么当i=2时,将a[3]赋值给a[2],所以现在a[2]=4了,但a[3]也还是4啊,你只是将指定下标的元素值换成了下一个元素的值,并不是删除了该元素,所以还是答案那样才是正确的。而且,你在循环外面写个b[i]=a[i]是什么意思呢。。

您还没有登录,所以不能回复该问题