柠檬试题库
search
首页
计算机
公务员
驾照
关于
share
有以下程序 #include
int f ( int m ) { static int n=0; n+=m; return n; } main() { int n=0; printf ( "%d,", f(++n) ); printf ( "%d\n", f(n++) ); } 程序运行后的输出结果是
A.3,3
B.1,1
C.2,3
D.1,2
热度🔥1,554
参考答案:D
解析:
【解析】该题目中首先区别++n和n++,第一次调用f函数时,将++n(n自增1后再参与运算)作为参数进行传递,此时变量m的值为1,执行n+=m;后,n=1,将1返回主函数,并输出。第二次调用f函数时,将n++(n参与运算后再自增1)作为参数进行传递,此时变量m的值为1,执行语句n+=m;,由于n是静态存储变量,因此n=2,将2返回主函数并输出。因此D选项正确。
复制题目向AI提问
content_copy
content_copy
扫码免费计算机二级刷题
2025年计算机等级考试题库
推荐
世界上公认的第一台电子计算机诞生在()。
以下叙述中错误的是
假定有如下语句:answer$=MsgBox("String1", , "String2", "String3", 2)执行该语句后,将显示一个信息框,单击其中的“确定”按钮,则answer$的值为( )。
计算机对汉字信息的处理过程实际上是各种汉字编码间的转换过程,这些编码主要包括( )。
标签
二级C语言
函数
int
变量
输出