编写一个函数void insert(int a[ ], int n, int y ),它的功能是:把y值插入到有n个数的有序的a数组中

2024-11-08 14:42:13
推荐回答(3个)
回答1:

void insert( int a[ ], int n, int y ){

a = new int[n];

a[0] = y;

要有n个数的有序的a数组中。就需要给数组int a[]初始化为长度为n的数组。即int a[]=new int[n]。然后将int类型的y值赋值给数组int a[]的第一个下标a[0]。

一维数组是由数字组成的以单纯的排序结构排列的结构单一的数组。一维数组是计算机程序中最基本的数组。通过给出的数组名称和这个元素在数组中的位置编号(即下标),程序可以引用赋值数组中的任意一个元素。

扩展资料:

对于数组而言,程序的执行部分使用的是数组变量而不是数组类型。需要注意的是:在引用时,下标可以是整型变量或整型表达式。如果使用表达式,会先计算表达式以确定下标。程序只能逐个应用数组中的元素而不能一次引用整个数组。

当在说明部分定义了一个数组变量后,编译程序会在内存空间中开辟一串连续的存储单元。运用数组可以方便地处理大规模的数据。

回答2:

不是我说,最近怎么老是看到求 INSERT类的函数

C/C++不准通过数组来返回!

是不是同一个老师给你们下的套啊!?

回答3:

1)
void insert( int a[ ], int n, int number )
{ int i;
for(i=n;i>0;i--)
{
a[i]=a[i-1];
}
a[0]=number;
}
2)
void insert( int a[ ], int n, int number )
{ a[n+1]=number;
}
3)
void insert( int a[ ], int n, int number )
{ int i;
for(i=n;i>(n/2);i--)
{
a[i]=a[i-1];
}
a[n/2]=number;
}