问题描述:
在指定位置上插入值。
程序代码:
#include <stdio.h>
#define SIZE 100
/*
*csdn学院--2016级
*目的:让代码见证成长(作为一个初学的菜鸟,如
*大家有发现错误,欢迎指正!)
*文件名称:Myfun157.c
*问题描述:在指定位置上插入值
*作者:小臣小仁
*完成日期:2017年5月28日
*/
int insert(int [],int,int,int);
int main()
{
int i,n=10;//数组中指定元素的值
int d[SIZE]={1,6,8,12,18,22,26,36,48,88};
int locate;
int value;
do{
printf("Please enter the location you want to insert:");
scanf("%d %d",&locate,&value);
}while(locate>n-1);//判断是否超出数组有用数据的长度
n=insert(d,n,locate,value);
//输出插入结果
for(i=0;i<n;i++)
printf(" %d",d[i]);
printf("\n");
return 0;
}
/*在长度为len的数组arr的loc位置插入val*/
int insert(int arr[],int len,int loc,int val)
{
int i=len;
while(i>loc)
{
arr[i]=arr[i-1];
i--;
}
arr[i]=val;//在i==val写入val
len++;//插入数据后的长度
return len;
}
输出结果
心得体会: