首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #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
65
问题
有如下程序
#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://www.kaotiyun.com/show/DFtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有以下程序,编译时出现错误,你认为出错的是#includemain(){inta=0,b=0,c=0,d;c=(a+=b,b+=a);/*第4行*/d=c;;/*第5行*/;/*第6行*/
若有以下程序#include<stdio.h>main(){inti,j=0;chara[]="Howareyou!",b[10];for(i=0;a[i];i++)if(a[i]==’’)b[j++]=a[
有以下程序#includemain(){inti=0;i=~i;printf("%d\n",i);}程序运行后的输出结果是
设a和b均为int型变量,且a=6,b=11,则能使值为3的表达式是()。
下列选项中,不属于数据管理员(DBA)职责的是()。
下面属于黑盒测试方法的是
下列关于数据库设计的叙述中,正确的是
下列关于线性链表的叙述中正确的是()。
某系统结构图如下图所示(n≥5)该系统结构图的最大扇出数是()。
有下列程序:#include/*fun函数的功能是将a所指数组元素从大到小排序*/voidfun(int*a,intn)main(){intt,i,j;{int
随机试题
分度头的蜗杆蜗轮啮合间隙应调整得越小越好,这样可提高分度精度。
为价值恢复或处置合理而对原材料、中间库存、最终产品及相关信息从消费地到起始点的有效实际流动所进行的计划、管理和控制过程被称为【】
骨骼肌纤维收缩时,其肌节的变化是()。
细胞内浓度高于细胞外浓度的离子是
女性,40岁。突然出现剧烈头痛、项枕部疼痛并呕吐8小时,不发热。无高血压病史。体检:神清,血压轻度增高。右瞳孔散大,对光反应消失,右上睑下垂,眼球向上、向下、向内运动不能。颈强直,Kernig征(+)。脑CT示脑正中裂、外侧裂和基底池呈高密度影。首先考虑的
旅游业的特点有()。
高一(1)班排球垫球新授课。张老师安排学生的第一个练习是自抛自垫,大部分学生练习积极性不高,课堂气氛比较沉闷;进入两人一组的对练练习时,由于经常掉球,大部分同学又在做自垫练习。看到这种情况,张老师及时做了微调,对全班同学说:“同学们!我们现在要不要来一
某软件设计师自行将他人使用C语言开发的控制程序转换为JaVa语言形式的控制程序并使用,该软件设计师的行为(9)。
Thatthosewhohadlearnedfromusnowsurpassuswasagreatchallenge.Theitalicizedpartfunctionsasa(n)______inthesente
Thenumberofstudentsinourdepartment(be)______morethan500.
最新回复
(
0
)