单选题 有以下程序:
#include <stdio.h>
void fac2(int);
void fac1(int n)
{ printf("*");
if(n>0)fac2(n-1);
}
void fac2(int n)
{ printf("#");
it(n>0)fac2(--n);
}
main()
{ fac1(3); }
程序的运行结果是______。
【正确答案】 A
【答案解析】[解析] 函数fac1中嵌套函数fac2,而fac2为递归函数。程序执行过程为:调用函数fac1(3),输出*,3>0成立,调用函数fac2(2),输出#,2>0成立,调用fac2(1),输出#,1>0成立,调用fac2(0),输出#,0>0不成立,返回。fac2(1),再返回fac2(2),再返回fac1(3),函数调用结束。程序的运行结果是:*###,故A选项正确。