用c++怎么写这题,求大佬帮助
任务二:编写函数(或方法):将某已知数组的奇数项组合成一个新的数组。在主函数(或主方法)中调用该函数(或方法),并循环输出新数组的内容。要求:
在主函数(或主方法)中定义一个已初始化值的数组,该数组中的值为:1,2,3,4,5,6,7,8,9,10,11。
编写函数(或方法),函数(或方法)名为:OddArray;它有一个输入参数,数据类型为数组;它的返回值类型为数组。它实现如下功能:将参数数组中的奇数项存入结果数组,并返回该数组。
在主函数(或主方法)中定义一个新的数组,用于获取OddArray的返回值,然后显示该返回值(显示结果应为1,3,5,7,9,11)。
随手写了一个实现,可能需要简单调试一下
int * OddArray(int *s, int n)
{
int *t = new int;
for (int i = 0; i < n; i += 2)
*t++ = s;
return t-n/2;
} 写的可能啰嗦了一些,新人{:10_257:}
void main()
{
int *OddArray(int p[]);
int getNum1(int m[]);
int a={1,2,3,4,5,6,7,8,9,10,11};
int *p1,num;
p1=OddArray(a);
num=getNum1(p1);
for(int i=0;i<num;i++)
{
cout<<*(p1+i)<<"";
}
cout<<endl;
delete p1;
system("pause");
}
int *OddArray(int p[])
{
int *p2=new int;
int m=0;
for(int i=0;i<11;i++)
{
if((p%2)!=0)
{
*(p2+m)=p;
m++;
}
}
return p2;
}
int getNum1(int m[])
{
int n=0;
for (int x=0;x<100;x++)
{
if (m<0) break;
n++;
}
return n;
}
页:
[1]