A、A.静态变量可以通过类名直接调用,因此也称类变量
B、B.静态变量可以在非静态方法中使用
C、C.静态变量在成员变量加载之后被加载
D、D.成员变量就是静态变量
第1题
有下列程序:
int fun(int x[],int n)
{ static int sum=0,i;
for(i=0;i<n;i++)
sum+=x[i];
return sum;}
main
{ int a[]={1,2,3,4,5),b[]={6,7,8,9},s=0;
s=fun(a,5)+fun(b,4);
printf("%d\n",s);}
程序执行后的输出结果是( )。
A.45
B.50
C.60
D.55
【我提交的答案】: |
【参考答案与解析】: 正确答案:C |
在函数int fun(int xE],int n)的定义中,变量sum为一个静态局部变量。由于在整个程序运行期间,静态局部变量在内存中的静态存储中占据着永久的存储单元。函数int fun(int x[],int n)的功能是求出数组X[]各个元素的和,所以在j三函数中,调用函数fun(a,5)后,变量sum =1+2+3+4+5=15,当再次调用fun(b,4)后,变量sum= 15+6+7+8+9=45,所以S=l5+45=60。
#include<stdio.h>
int fun(int x[],int n)
{
static int sum=0,i;
for(i=0;i<n;i++)
sum+=x[i];
return sum;
}
void main()
{
int a[]={1,2,3,4,5},b[]={6,7,8,9},s=0;
s=fun(a,5)+fun(b,4);
printf("%d\n",s);
}
第2题
有下列程序:
int fun(int x[],int n)
{ static int sum=0,i:
for(i=0;i<n;i++) sum+=x[i];
return sum;
}
main
{ int a[]={1,2,3,4,5),b[]={6,7,8,9),s=0:
s=fun(a,5)+fun(b,4);printf("%d\n",s):
}
程序执行后的输出结果是( )。
A.45
B.50
C.60
D.55
【我提交的答案】: A |
【参考答案与解析】: 正确答案:C |
在函数int fun(int xE],int n)的定义中,变量sum为一个静态局部变量。由于在整个程序运行期间,静态局部变量在内存中的静态存储中占据着永久的存储单元。函数int fun(int x[],int n)的功能是求出数组X[]各个元素的和,所以在j三函数中,调用函数fun(a,5)后,变量sum =1+2+3+4+5=15,当再次调用fun(b,4)后,变量sum= 15+6+7+8+9=45,所以S=l5+45=60。
两个Fun函数中sum值为什么是一样的啊?不是每一次调用的时候都对Sum初始化了吗?
第3题
A、A.静态变量可以定义在类中的任意位置
B、B.静态变量一旦被赋值不能被修改
C、C.静态变量可以被类直接调用,因此可以说静态变量的生命周期与实例无关
D、D.静态变量可以在非静态方法中使用
第4题
A、boolean a=TRUE;
B、boolean b=FALSE;
C、boolean c='true';
D、boolean d=false;
第5题
SET @name='lkl'
print '姓名是'+@name
B.DECLARE name varchar(8)
SET name='lkl'
print '姓名是'+name
C.print @@VERSION AS '版本', @@SERVERNAME AS '服务器'
D.SELECT @@VERSION AS '版本', @@SERVERNAME AS '服务器'
第6题
A. 缺省构造方法可以初始化其它方法中定义的变量
B. java编译器会为所有的类创建缺省构造方法
C. 如果在一个类中定义的构造方法都声明了参数,java编译器将为这个类创建一个缺省构造方法
D. 当类中没有定义任何构造方法时,java编译器将为这个类创建缺省构造方法
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!