首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include<stdio.h> 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);
有以下程序: #include<stdio.h> 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);
admin
2020-10-26
27
问题
有以下程序:
#include<stdio.h>
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;
fun(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://jikaoti.com/ti/rWD0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列各序列中不是堆的是()。
数据库设计中反映用户对数据要求的模式是()。
若有语句:void*p=malloc(80);,则以下叙述错误的是()。
设有定义:inta;floatb;执行scanf("%2d%f",&a,&b);语句时,若从键盘输入876543.0<回车>则a和b的值分别是()。
算法的有穷性是指()。
下列叙述中正确的是()。
与数学表达式x>=y>=z对应的C语言表达式是()。
有以下不完整函数intfun(char*p){char*t=p;while(*t++);return(______________);}该函数的功能是:计算p所指字符串占用内存单元的个数,作为函数值返回。return语句下划线处应填入的是(
下面属于软件设计阶段产生的文档是()。
下面对软件工程描述正确的是
随机试题
被告人张某,A省B市人,与其妻李某一向感情和睦。2015年3月,张某所在的企业因资不抵债破产倒闭,张某失业在家,经常与其妻李某争吵。2015年11月5日,被告人张某与李某又因家庭琐事发生争执,被告人张某对李某拳脚相加,一气之下李某即要收拾行李回娘家。被告人
TheNewOldAgeA)TheJapaneseseniorcitizenswhofoundedJeebaknewtheyweremakinghistorywhentheycoinedtheircomp
男性,72岁。哮喘史40年,近5年来发生双下肢水肿,近1周哮喘加重,白天发作每周>2次,每天夜间均有发作,活动受限,没有急性加重症状。下列对该患者的诊断最有意义的是
国有建设用地按用途分,可以分为()。
编制供应采购计划的输出结果是()。
下列关于接入技术特征的描述中,正确的是
Howlongdidthedebatelast?
TheEconomistIntelligenceUnit(EIU)earnestlyattemptstomeasurewhichcountrywillprovidethebestopportunitiesforahealth
SpeakerA:Excuseme,couldyoutellmewheretheentrancetothesubwayis?SpeakerB:______
WaystoTakeIttotheNextLevelNomatterwhatyou’redoing,therecomesatimewhenyouaregoingtowanttotakethings
最新回复
(
0
)