首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include<stdio.h> int fun() {static int x=1; x*=2;return x; main() {int i,s=1: for(i=1;i<=2;i++)s=fun(); printf("%din",s)
有以下程序: #include<stdio.h> int fun() {static int x=1; x*=2;return x; main() {int i,s=1: for(i=1;i<=2;i++)s=fun(); printf("%din",s)
admin
2021-04-28
47
问题
有以下程序:
#include<stdio.h>
int fun()
{static int x=1;
x*=2;return x;
main()
{int i,s=1:
for(i=1;i<=2;i++)s=fun();
printf("%din",s);
}
程序运行后的输出结果是( )。
选项
A、0
B、1
C、4
D、8
答案
C
解析
fun函数中的x为静态局部变量,占用固定的内存单元,下一次调用时仍可保留上次调用时的值。也就是说,如果多次调用fun函数,x的定义只在第一次调用时有效,从第二次调用开始,x的定义相当于不存在,直接使用x的值。主函数中调用两次fun函数:第一次调用:x=1,x=x*2=2,s=2;第二次调用:(直接用上次x的值)x=x*2=4,s=4。因此C选项正确。
转载请注明原文地址:https://www.kaotiyun.com/show/UDtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设有定义charstr[]="Hello";则语句printf("%d%d",sizeof(str),strlen(str));的输出结果是()。
若有以下程序#defineS(x)X*X#defineT(x)S(x)*S(x)main(){intk=5,j=2;printf("%d,%d\n",S(k+j),T(k+j));}则程序的
若已建立以下链表结构,指针p、s分别指向如图所示结点则不能将s所指节点插入到链表末尾的语句组是
以下叙述中正确的是
若有以下程序#includechar*a="you":charb[]="WelcomeyoutoChina!";main(){inti,j=0;char*p;for(i=0;b[i]!=’\0’;i++)
下列选项中不属于结构化程序设计方法的是
以下叙述中正确的是
C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是
C语言主要是借助以下哪种手段来实现程序模块化
已知二叉树后序遍历序列是CDABE,中序遍历序列是CADEB,它的前序遍历序列是()。
随机试题
加洛林王朝时期,由于巡按使制度的实行,出现J,()
对包合物的叙述不正确的是
三点校正法测定维生素A时,按照三点波长的选择方法不同又分为
在梁的“平法”标注中,“b×hYcl×c2”表示()
钢与生铁的区别在于其含碳量值应小于()。
人感到某个刺激存在或刺激发生变化所需刺激强度的临界值,称为()。
贯彻理论联系实际原则的基本要求有哪些?
在使用UML建模时,若需要描述跨越多个用例的单个对象的行为,使用______是最为合适的。
将考生文件夹中的全部以字母A开头的文件复制到子文件夹WANGLING中。
Employmentlettersareusedtoapplyforajob,requestareferenceorletterofrecommendation,acceptorrefuseaposition,ac
最新回复
(
0
)