int f(int a[],int n) { if(n%2==0){ if(n>=1) return f(a,n-1)-

问题描述:

int f(int a[],int n) { if(n%2==0){ if(n>=1) return f(a,n-1)-a[n-1]; else return 0;} else { if(n>=1)
int f(int a[],int n)
{ if(n%2==0){
if(n>=1) return f(a,n-1)-a[n-1];
else return 0;}
else { if(n>=1)return f(a,n-1)+a[n-1];
else return 0;}
}
main()
{int aa[5]={1,2,3,4,5},s;
s=f(aa,5); printf("%d\n",s);
}
求输出结果,
1个回答 分类:综合 2014-12-03

问题解答:

我来补答
结果是:3;
该程序的意思是,该数组的奇数减去偶数再求和;
#include
int f(int a[],int n)
{
if(n%2==0)
{
if(n>=1)
return f(a,n-1)-a[n-1];//整除且》=1除的时候,返回,继续调用该函数;这样好控制数组的下标问题;
else
return 0;
}
else
{
if(n>=1)
return f(a,n-1)+a[n-1];//不整除的时候,返回,继续调用该函数;,这样好控制数组的下标问题;
else
return 0;
}
}
main()
{
int aa[5]={1,2,3,4,5},s;
s=f(aa,5); //调用子函数;
printf("%d\n",s);
}
 
 
展开全文阅读
剩余:2000
上一页:不是奥数题