首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #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
34
问题
有以下程序:
#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"#defineN3#defineM3voidfun(inta[M][N]){printf("%d\n",*(a[1]+2));}main()
若要求定义具有10个int型元素的一维数组a,则以下定义语句中错误的是
阅读下面程序,则执行后的结果是#include"stdio.h"main(){charstr[]="tomeetme",*p;for(p=str;p<str+7;p+=2)putchar(*p);printf(
数据库系统的主要特点为数据集成性、数据的高______和低冗余性、数据独立性和数据统一管理和控制。
设有定义:doublex[lO],*p=x;,以下能给数组x下标为6的元素读人数据的正确语句是
交换两个变量的值,不允许用临时变量,应该使用下列()位运算符。
下列关于逻辑运算符两侧运算对象的叙述中正确的是()。
在关系模型中,若属性A是关系R的主码,属性A的取值不能为空,称为约束。
随机试题
根据(),债权资本适度的资本结构会增加股东的价值。
MethodsusedinteachingEnglishtoyoungchildrenarenotalways______forstudents.
A、腺病毒肺炎B、金黄色葡萄球菌肺炎C、急性感染性喉炎D、支气管哮喘E、肺炎球菌肺炎病情重,稽留热多见
A.桂枝B.半夏C.陈皮D.人参E.白术实脾散的组成药物中含有
能帮助诊断深部脓肿的方法是
整体到货的塔器安装,垫铁点焊固定后的后续工作是()。
关于上市公司按10股送10股的比例分配股利后所带来的影响,下列说法错误的是()。
企业购入的准备在2个月后转让的债券投资,属于货币性资产。()
据一份资料统计,日本每年约有5000名老人自杀,占自杀人数的3/10,称得上世界“老人自杀大国”。而其中离婚男性的自杀率为有配偶者的8倍,离婚女性自杀率为有配偶者的4倍。这段话的直接支持的观点是( )。
Whatistheproblemwithconsultants?WhatdoesWeisssayaboutself-esteem?
最新回复
(
0
)