首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 #include <stdio.h> int a=2; int f() { static int n; int m; m=n=0; n++; a++; m++; return n+m+a; } main
有以下程序 #include <stdio.h> int a=2; int f() { static int n; int m; m=n=0; n++; a++; m++; return n+m+a; } main
admin
2021-02-25
24
问题
有以下程序
#include <stdio.h>
int a=2;
int f()
{ static int n;
int m;
m=n=0;
n++; a++; m++;
return n+m+a;
}
main()
{ int k;
for (k=0; k<3; k++)
printf("%d,", f( ));
printf("\n");
}
程序的运行结果是
选项
A、5,6,7,
B、5,7,9,
C、5,8,11,
D、5,5,5,
答案
A
解析
static变量又称为静态变量,编译时,将其分配在内存的静态存储区中,在整个程序运行期间都不释放这些存储单元,即使退出函数,下次再进入该函数时,静态局部变量仍使用原来的存储单元,值是上一次函数调用结束时的值。若定义时未赋初值,在编译时,系统自动赋初值为0;若定义时赋初值,则仅在编译时赋初值一次,程序运行后不再给变量赋初值。程序执行过程为:k=0,a=2,n=0,m=0;n=1,a=3,m=1,返回5;k=1,a=3,n=0, m=0;n=1,a=4,m=1,返回6;k=2,a=4,n=0,m=0;n=1,a=5,m=1,返回7;k=3退出循环。A选项正确。
转载请注明原文地址:https://kaotiyun.com/show/kBtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includeintfun(chars[]){char*p=s;while(*p!=0)p++;return(p-s);}main(){printf("%d\n",fun("0ABCDEF"
C语言主要是借助以下哪个功能来实现程序模块化?()
有以下程序#includemain(){inti,i,m=1;for(i=l;i0;j--){if(i*j>3)break;m*=i*j;}}printf("m
以下叙述中正确的是
若有定义typedefint*T;Ta[10];则a的定义与下面哪个语句等价
以下正确的字符串常量是
下列关于二叉树的叙述中,正确的是
下面叙述中错误的是()。
下列叙述中正确的是()。
设有定义:doublex=2.12;,以下选项中不能完整输出变量x值的语句是()。
随机试题
会计制度总体设计
第二次世界大战后,服务性生产是______的观点被普遍采用()
Itisalmostimpossibleformetomeether______shereallycomestoseeme.
常见伴有腹膜刺激征的情况有()
肝风内动最常见的分类有
一般认为,股份回购所产生的效果有()。
甲与乙于7月1日订立合同,规定甲应于8月1日交货,乙应于8月7日付款。7月底,甲发现乙财产状况恶化,无支付货款之能力,并有确切证据,遂提出终止合同,但乙不同意。基于上述因素,甲于8月1日未按约定交货。依据《合同法》的有关规定,有关该案的正确表述是( )
英国哲学家休谟曾经说过:“感觉是人和世界之间的屏障。”这一观点是
线性方程组Ax=b经初等变换其增广矩阵化为若方程组无解,则a=()
软件维护是指系统交付使用后对软件所做的改变,以下Ⅰ.改正程序中存在的错误和不足Ⅱ.使软件能适应新的软、硬件环境Ⅲ.增加新的应用内容和功能哪个(些)是需要进行软件维护的原因?
最新回复
(
0
)