求大神讲解下C语言基础题【题5】下面程序的运行结果是 15 main(){int i=5;printf(“%d\n”,sub(i));}int sub(int n){ int a; if(n==1) return 1;a=n+sub(n-1);return(a);}请问下a=6+sub(5)a=2+sub(1) 联立不是解得sub(5)=-3么?【

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/04 11:58:24
求大神讲解下C语言基础题【题5】下面程序的运行结果是 15 main(){int i=5;printf(“%d\n”,sub(i));}int sub(int n){ int a; if(n==1) return 1;a=n+sub(n-1);return(a);}请问下a=6+sub(5)a=2+sub(1) 联立不是解得sub(5)=-3么?【

求大神讲解下C语言基础题【题5】下面程序的运行结果是 15 main(){int i=5;printf(“%d\n”,sub(i));}int sub(int n){ int a; if(n==1) return 1;a=n+sub(n-1);return(a);}请问下a=6+sub(5)a=2+sub(1) 联立不是解得sub(5)=-3么?【
求大神讲解下C语言基础题
【题5】下面程序的运行结果是 15
main()
{int i=5;
printf(“%d\n”,sub(i));
}
int sub(int n)
{ int a; if(n==1) return 1;
a=n+sub(n-1);
return(a);
}
请问下
a=6+sub(5)
a=2+sub(1) 联立不是解得sub(5)=-3么?
【题6】以下程序的运行结果是 5 10 9
#include
f(int a[])
{ int i=0;
while (a[i]

求大神讲解下C语言基础题【题5】下面程序的运行结果是 15 main(){int i=5;printf(“%d\n”,sub(i));}int sub(int n){ int a; if(n==1) return 1;a=n+sub(n-1);return(a);}请问下a=6+sub(5)a=2+sub(1) 联立不是解得sub(5)=-3么?【
【题5】 该程序为递归调用,运行结果为
sub(5) = 5 + sub(4),
sub(4) = 4 + sub(3),
sub(3) = 3 + sub(2),
sub(2) = 2+ sub(1),
sub(1) = 1,
因此sub(5) = 5+4+3+2+1 = 15.
【题6】a+1的意思是将数组指针向前移动一位,即将数组{5,10,9,11,7作参数传给函数f().
子函数循环语句满足a[i]