c语言编程在数组a中间插入一个数的元素,输出执行插入前后的数组

2025-02-26 02:58:48
推荐回答(2个)
回答1:

#include
#define MAX 100
void printArr(int* arr,int c,int iMark)
{
if(c<=0)
printf("null\n");
else
{
int i;
for(i=0;i {
if(i==iMark)
printf("^%-5d",arr[i]);
else
printf("%-6d",arr[i]);
}
printf("\n");
}
}
int main()
{
int a[MAX];
int lastIndex=0;
while(1)
{
int n=0,index=0;
printf("insert:");
scanf("%d",&n);
printf("to:");
scanf("%d",&index);

printArr(a,lastIndex,-1);

index=(index>=lastIndex)?lastIndex:index;
int i=0;
for(i=lastIndex;i>index;i--)
a[i]=a[i-1];
a[index]=n;

lastIndex++;

printArr(a,lastIndex,index);

if(lastIndex>=MAX) break;
}
}

回答2:

有点慢