柠檬试题库
search
首页
计算机
公务员
驾照
关于
share
有以下程序 #include
int fun() { static int x=1; x*=2; return x; } main() { int i,s=1; for(i=1;i<=2;i++) s=fun(); printf("%d\n",s); } 程序运行后的输出结果是
A.0
B.1
C.4
D.8
热度🔥1,906
参考答案:C
解析:
【解析】fun函数中的x为静态局部变量,占用固定的内存单元,下一次调用时仍可保留上次调用时的值。也就是说,如果多次调用fun函数,x的定义只在第一次调用时有效,从第二次调用开始,x的定义相当于不存在,直接使用x的值。主函数中调用两次fun函数:第一次调用:x=1,x=x*2=2,s=2;第二次调用:(直接用上次x的值)x=x*2=4,s=4。因此C选项正确。
复制题目向AI提问
content_copy
content_copy
扫码免费计算机二级刷题
2025年计算机等级考试题库
推荐
执行下列程序段后,变量 S 的值是 Dim S As Integer, n As Integer S = 0 : n = 1 Do While n < 100 S = S + n n = n + 1 Loop
某人为计算n!(0<n<=12)编写了下面的函数过程:Private Function fun(n As Integer)As Long Dim p As Long p=1 For k=n-1 To 2 Step-1 p=p * k Next k fun=p End Function 在调试时发现该函数过程产生的结果是错误的,程序需要修改。下面的修改方案中有3种是正确的,错误的方案是( )。
下列关于服务器技术的描述中,错误的是()
标签
二级C语言
调用
fun
函数
int