下列程序的输出结果是_______。 fun() { static int x=5; if(x++>5)printf("%d",x); else printf("%d",x++); } main() {

admin2010-05-22  28

问题 下列程序的输出结果是_______。    fun()    {    static int x=5;    if(x++>5)printf("%d",x);    else printf("%d",x++);    }    main()    {    fun();fun();    }

选项 A、67
B、69
C、68
D、78

答案4

解析 模块的代码开始运行后,使用static语句声明的变量会—直保持其值,直至该模块复位或重新启动。在第1次调用fun函数时,x的初值为5,if语句的条件不成立,执行else printf("%d"x++);语句,输出6,执行后x的值变为7,由于x是静态局部变量,在函数调用结束后,它并不释放,仍保留x=7。在第2次调用fun函数时,if语句的条件成立,执行printf("%d",x);语句,输出8。
转载请注明原文地址:https://jikaoti.com/ti/uzI0FFFM
0

最新回复(0)