最赞回答 / weixin_慕盖茨2597418
就是你在最下面给n赋值为5,那么调用函数之后就变成了result=factorial(5-1)*5,函数在计算的时候发现了自己,函数就只能调用了自己,factorial(5-1)就重新从factorial这个函数的头开始判断和计算,因为4>0且4不等于0和1,所以factorial(4)又等于factorial(4-1)*4,然后此时result=factorial(4-1)*4*5,然后函数又发现了自己,再次调用自身,一直进行阶乘,直到result=factorial(2-1)*2*3*4*5,这...
2021-12-11
最赞回答 / 慕仔2076805
#include <stdio.h>int main(){ char c = 'a'; int n; //将c赋值给n float f; //将c赋值给f double d; //将c赋值给d n=c; f=n; d=f; printf("%d\n",n); printf("%f\n",f); printf("%lf\n",d); return 0; }
2021-12-08
最新回答 / weixin_慕标8477849
不能去掉n==1,去掉你第一天就没结果了,return后面可以跟表达式,不用另外设置sum。递归就是调用本身的函数,你把1、2、3代入进去算就理解了,这个其实很简单,就是把每个值的结果累加。
2021-12-08
最赞回答 / NuNuuu
因为第一条语句是a++后执行,++a是先执行,第一条输出语句 输出完a后 a+1,到第二条a已经是101了,第二条是++a 所以是先执行+1,所以是101+1=102
2021-12-08
最新回答 / 慕婉清8060688
先计算a>3和a+3的结果,11>3为真,所以括号里结果为1。11+3=14,所以括号内结果为14。然后1*11=11,14/3的余数是2,所以结果为11-2=9。
2021-12-07