A-A+

以下程序的输出的结果是 int x=3; main() { int i; for (i=1;

2022-08-05 20:04:23 问答库 阅读 171 次

问题详情

以下程序的输出的结果是 int x=3; main() { int i; for (i=1;i<x;i++) incre(); } incre() { staic int x=1; x*=x+1; printf(" %d",x); }
A.3 3
B.22
C.26
D.25请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:C
解析:本题首先定义一个全局变量x并赋初值为3,主函数中使用这个全局变量控制循环次数,循环执行了2次,调用两次tncre()函数。第一次调用incre(),定义一个静态变量x并赋初值1,然后执行“x*=x+1”,使x的值变为2;第二次调用incre()函数时,静态变量将保留上一次退出时的值即2,执行语句“x*=x+1”后,x的值变成6,输出x的值为6。所以,4个选项中C为所选。

考点:程序