下面程序的输出结果是( )。 #include<iostream.h> #include<string.h> voidmain( ) { charp1[10],p2[10]; strcpy(p1,"abc"); strcpy(p2,"ABC"); charstr[50]="xyz"; strcpy(str+2,strcat(p1,p2)); cout<<str; }
A.start( )
B.init( )
C.paint( )
D.draw( )
参考答案:C
解析:在被调用过程中,有这样的语句“StaticSum”,因为变量Sum是局部变量,局部变量除了可以用Dim语句声明外,还可用Static语句将变量声明为静态变量,它在程序运行过程中可保留变量的值。具体过程分析如下: 调用Sat(1),在被调过程中N=1,执行For Next循环,Sat(1)=Sum=1; 调用sat(2),在被调过程中N=2,执行For Next循环,Sat(2)=Sum=4; 调用Sat(3),在被调过程中N=3,执行For Next循环,Sat(3)=Sum=10; 调用Sat(4),在被调过程中N=4,执行For Next循环,Sat(4)=Sum=20; 不难看出,最后输出的结果S值应为1+4+10+20=35,所以选项C)是正确的。