首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
若有以下程序: #include <iostream> using namespace std; int f() { static int i = 0; ints= 1; s+=i;
若有以下程序: #include <iostream> using namespace std; int f() { static int i = 0; ints= 1; s+=i;
admin
2009-02-15
40
问题
若有以下程序: #include <iostream> using namespace std; int f() { static int i = 0; ints= 1; s+=i; i++; return s; } int main() { int i,a = 0; for(i = 0;i<5;i++) a+=f(); cout<<a<<endl; return 0; } 程序运行后,输出的结果是
选项
A、20
B、24
C、25
D、15
答案
8
解析
本题考核静态局部变量在函数中的使用。静态局部变量就是将局部变量说明为静态的。静态局部变量既有在局部域作用的特性(即变量只能在变量的作用范围内被访问),又可以永久存在(变量的值得以保留,并可继续使用)。静态局部变量只在第一次执行时初始化一次。在函数f中定义了一个静态局部变量l它的初始值为0,还定义了一个局部变量s(它的初始值为1),用来返回计算所得值。函数f中所进行的数据加工是s+=i和i++。即每调用一次函数f,返回(i+1)的值后,i的值增1。再看主函数,在主函数main中,通过一个for语句连续调用f函数5次,并把每次调用f函数的返回值相加并存入a。最后输出a的值。在了解各函数功能以及调用关系后就可计算出a的值为15。
转载请注明原文地址:https://kaotiyun.com/show/BOkp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<stdio。h>voidfun(ehar*a,char*b){while(*a==’*’)a++;while(*b=*a){b++;a++;}}main(){char*s="*****a*b****",t[80
有以下程序(strcat函数用以连接两个字符串):#include#includemain(){chara[20]="ABCD\0EFG\0",b[]="UK";strcat(a,b);
若变量已正确定义并赋值,则错误的赋值语句是()。
两次运行下面的程序,如果从键盘上分别输入3和2,则输出结果是()。#inc1udemain(){intx;scanf(”%d”,&x);if(x++>2)printf(”%d”,X);
有如下程序#include<stdio.h>main(){intx=072;printf("X=%d.\n",x+1);}程序运行后的输出结果是
给定程序的主函数中,已给出由结构体构成的链表结点a、b、c,各结点的数据域中均存入字符,函数fun()的作用是:将a、b、c三个结点链接成一个单向链表,并输出链表结点中的数据。请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
在数据库系统的内部结构体系中,索引属于()。
对于循环队列,下列叙述中正确的是()。
下列选项中不属于结构化程序设计原则的是()。
随机试题
膀胱癌镜下类型有
关于输尿管的叙述,错误的是
侵袭性葡萄胎与葡萄胎病理的主要区别点是
下列疾病中,不属于心身疾病的是()
()年,中国成为世界第一货物贸易大国,中国货物进出口总额为4.16万亿美元。
幼儿教育的中心任务是()。
贪污罪是指从事公务的工作人员利用非职务之便,侵犯公共财产的行为。()
下列关于三国两晋南北朝时期司法制度的变化,说法正确的是()
交换积分次序∫1edx∫0lnxf(x,y)dy为()
因为χ→0+时,[*]所以[*]
最新回复
(
0
)