问题 单项选择题

以下程序的执行结果是( )。 #include<iostream.h> #include<iomanip.h> void fun(int n) { if(n!=0) { fun(n-1); for(int i=1; i<=n; i++) cout<<setw(3)<<i; cout<<end1; } } void main() { fun(3); }

A.0 0 1 0 1 2

B.1 1 2 1 2 3

C.1 2 2 3 3 3

D.1 2 3

答案

参考答案:B

解析: 首先由程序中的主函数main入手,调用fun函数,参数为3。fun(n)函数在其内部,当n不等于0时,递归调用fun(n-1)。当参数为3时,fun(3)调用fun(2)…,然后利用for循环输出i值,当n=1时,只输出1,输出回车后,就跳入fun(2),输出1,2,最后输出是1,2,3。

单项选择题 A3/A4型题
单项选择题