首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #include <stdio.h> int* sum(int data) { static int init = 0; init += data; return &init; } main() { int i
有如下程序 #include <stdio.h> int* sum(int data) { static int init = 0; init += data; return &init; } main() { int i
admin
2021-04-28
71
问题
有如下程序
#include <stdio.h>
int* sum(int data)
{
static int init = 0;
init += data;
return &init;
}
main()
{
int i, *p;
for (i=1; i<=4; i++) sum(i);
p = sum(0);
printf("%d\n", *p);
}
程序运行后的输出结果是
选项
A、15
B、0
C、1
D、10
答案
D
解析
static变量又称为静态变量,编译时,将其分配在内存的静态存储区中,在整个程序运行期间都不释放这些存储单元,即使退出函数,下次再进入该函数时,静态局部变量仍使用原来的存储单元,值是上一次函数调用结束时的值。若定义时未赋初值,在编译时,系统自动赋初值为0;若定义时赋初值,则仅在编译时赋初值一次,程序运行后不再给变量赋初值。程序执行过程为:执行for循环,i=1,调用函数sum(1),data=1,init=0,init=init+data=1;i=2,调用函数sum(2),data=2,init=1,init=init+data=3;i=3,调用函数sum(3),data=3,init=3,init=init+data=6;i=4,调用函数sum(4),data=4,init=6,init=init+data=10;i=5退出for循环。调用函数sum(0),data=0,init=10,init=init+data=10,返回指向init的指针,输出init=10。D选项正确。
转载请注明原文地址:https://kaotiyun.com/show/DFtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下叙述中正确的是
以下不合法的数值常量是()。
有以下程序#includevoidfun(int*x,ints,intn){inti;for(i=s;i>=n;i--)*(x+i+3)=*(x+i);}main(){intm[]={0,1,2,3,4,5,6,7
有以下程序#includemain(){inta[]={2,3,5,4},i;for(i=0;i
程序中已构成如下不带头节点的单向链表结构,指针变量s、p、q均已正确定义,并用于指向链表节点,指针变量s总是作为指针指向链表的第一个节点。若有以下程序段:q=s;S=s->next:p=s;wh
以下叙述中错误的是
下面属于黑盒测试方法的是
结构化程序设计中,下面对goto语句使用描述正确的是
要求通过while循环不断读入字符,当读入字*N时结束循环。若变量已正确定义,以下正确的程序段是
设数据元素的集合D={1,2,3,4,5},则满足下列关系R的数据结构中为线性结构的是()。
随机试题
(取引先と電話で)「申し訳ございません。あいにく~はただいま席を________おります。」
代偿性代谢性酸中毒时
城市交通调查包括:
拱顶储罐与相同容积的锥顶罐比较,( )。
【2015年】某公司向银行借款2000万元,年利率为8%,筹资费率为0.5%,该公司适用的所得税税率为25%,则该笔借款的资本成本是()。
2016年是十三五规划开局之年,政府连续出台了多个重磅文件,明确提出以农业供给侧结构性改革为主线,农村土地()“三权”分置。
党的十八届三中全会通过的《决定》提出,城乡二元结构是制约城乡发展一体化的主要障碍,必须健全体制机制形成的新型工业城乡关系是()。
下列不属于村民委员会职责的是()。
在各种数据环境中,粒度用于描述数据的综合程度。设某系统中有商品销售表(商品号,销售量,单价,日期,时间)和商品周销售表(商品号,周销售量,周),则商品销售表的粒度级要(7)于商品周销售表的粒度级。若两个表的时间跨度相同,则商品销售表中存放的数据
a.じつはb.もともとc.さらにd.ほとんどe.ちゃんとf.ついg.じょじょにh.だけi.やがてj.つぎつぎにk.ずっと
最新回复
(
0
)