新手求助 急!急!!急!!!
怎样从一个指定数组中取一个随机数,然后将这个随机数从原数组中去除,生成一个新的数组。请各位朋友帮忙解答一下
谢谢!!!
搜索更多相关的解决方案:
朋友
----------------解决方案--------------------------------------------------------
void fun(int a[], int size, int aim)
{
int iDel = 0;
for (int i=0; i<size; i++)
{
if (a[i] != aim) a[i-iDel] = a[i];
else iDel++;
}
}
[[it] 本帖最后由 随心 于 2008-3-6 19:13 编辑 [/it]]
----------------解决方案--------------------------------------------------------
上楼的帅哥,我有点看不懂能帮忙解释一下吗?
----------------解决方案--------------------------------------------------------
用rand()产生随机数呀。。
----------------解决方案--------------------------------------------------------
俺也不懂啊
----------------解决方案--------------------------------------------------------
比如这个数组有N个元素
用rand()产生一个随机数M
M%N得一个数就是那个序号啊
----------------解决方案--------------------------------------------------------
/* 修改了一下随心的函数,只是修改下*/
/*
int a[] : 接受一个int 数组作为参数(函数参数中int a[] 等同于 int * a)
int size : 数组a的长度
int aim : 需要删除的元素的值
此函数返回数组中剩余元素的数量。(这是必要的)
*/
int fun(int a[], int size, int aim)
{
int i, iDel = 0;
for (i = 0; i < size; i++)
{
if (a[i] != aim)
a[i-iDel] = a[i];
else
iDel++;
}
return (i - iDel);
}
/* 楼主是要随机从数组中抽取一个元素,然后删除吧 */
[[it] 本帖最后由 cosdos 于 2008-3-6 23:00 编辑 [/it]]
----------------解决方案--------------------------------------------------------