首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include void fun(int n) { static int k=0; if(n
有以下程序: #include void fun(int n) { static int k=0; if(n
admin
2017-07-05
13
问题
有以下程序:
#include
void fun(int n)
{ static int k=0;
if(n<0){printf("一");n=一n;}
k+=n%10;printf("%d,",k);
if(n/10)fun(n/10);
}
main()
{ int x=一12;
tun(x);printf("\n");
}
程序运行后的输出结果是( )。
选项
A、一2,3,
B、一1,一2,
C、一2,一3,
D、一2,1
答案
A
解析
fun()函数使用了静态变量,静态变量只在声明时初始化一次。首先实参的数值是一12,if判断后输出负号,并令n=12,计算k+=n%10→k+=2→2,因此输出2,然后将数值除以10,结果为1,递归调用fun()函数。第二次调用fun(),此时n=1,k=2,计算k+=n%10→k+=1→3,因此打印3。故最后打印结果为一2,3,。故答案为A选项。
转载请注明原文地址:https://kaotiyun.com/show/XdDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是()。#include<stdio.h>intfun(intx){inta;if(x==0‖x==1)return3;else
下列4个关于C语言的结论中错误的是()。
下面程序的功能是输出数组s中最大元素的下标,请填空。main(){intk,p,s[]={1,-9,7,2,-10,3};for(p=0,k=p;p<6;p++)if(s[p]>s[k])______printf("%d\n",k);}
以下程序的输出结果是______。#include<string.h>main(){printf("%d\n",strlen("IBM\n012\1\\"));}
若有定义语句:inta=3’b=2,c=1;,以下选项中错误的赋值表达式是
下列关于逻辑运算符两侧运算对象的叙述中正确的是()。
对如下二叉树:ABDECF进行后序遍历的结果为()。
深度为5的满二叉树有()个叶子节点。
在深度为7的满二叉树中,度为2的节点个数为()。
随机试题
测量仪器的规定计量特性不受损也不降低,其后仍可在额定工作条件下运行而能承受的极端条件,这样的条件称为__________。
高含水层封堵后,要注意调整()的注水量,保持接替层的生产能力。
关于子宫肉瘤的病因学,下列哪些正确:
脊椎骨折脱位好发于
下列不会引起脓血症的细菌是
某3年期贷款合同中约定,该贷款本金分成第一年和后两年两个时间段偿还,利息则根据实际的占用时间计算,则该还款方式属于()。
关于有限理性模型内容的说法,正确的是()。
行政监察机关在行政监察中具有以下哪些职权?()
下列无语病的一句是()。
Insomecountrieswhereracialprejudiceisacute,violencehassocometobetakenforgrantedasameansofsolvingdifference
最新回复
(
0
)