单选题有如下程序:#include 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,*p);}程序运行后的输出结果是( )。A15B0C1D10
单选题
有如下程序:#include 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,*p);}程序运行后的输出结果是( )。
A
15
B
0
C
1
D
10
参考解析
解析:
static变量编译时,将其分配在内存的静态存储区中,在整个程序运行期间都不释放这些存储单元,即使退出函数,下次再进入该函数时,静态局部变量仍使用原来的存储单元,值是上一次函数调用结束时的值。程序执行过程为:执行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选项。
static变量编译时,将其分配在内存的静态存储区中,在整个程序运行期间都不释放这些存储单元,即使退出函数,下次再进入该函数时,静态局部变量仍使用原来的存储单元,值是上一次函数调用结束时的值。程序执行过程为:执行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选项。
相关考题:
有如下程序: include using namespace std; int main(){ int sum; 有如下程序: #include<iostream> using namespace std; int main(){ int sum; for(int i=0;i<6;i+=3){ sum=i; for(int j=i;j<6;j++)sum+=j; } cout<<sum<<end1; return 0; } 运行时的输出结果是( )。A.3B.10C.12D.15
下列程序的输出结果是()。 include f(int a) {int b=0; static int c=4; a=c++;b++; re 下列程序的输出结果是( )。#include<stdio.h>f(int a){ int b=0;static int c=4;a=c++;b++;return(a);}main(){ int a=2,i,c;for(i=0;i<2;i++)C=f(a++);printf("%d\n",c);}A.4B.7C.6D.5
有如下程序:includeusing namespace std;class A{public:static int a;void init(){a 有如下程序: #include<iostream> using namespace std; class A{ public: static int a; void init(){a=1;} A(int a=2){init(); a++;} }; int A::a=0; A obj; int main() { cout<<obj.a; return 0; 运行时输出的结果是( )。A.0B.1C.2D.3
现有如下程序段,则程序段的输出结果为 【16】 。#include "stdio.h"int fun(){static int k;return k;}main(){int m;m=fun();printf("%d\n",m);}
以下程序的运行结果是______。includemain(){ int fun();fun();}fun(){static int a[3]= 以下程序的运行结果是______。include<stdio.h>main(){ int fun();fun();}fun(){static int a[3]={0,1,2};int i;for(i=0;i<3;i++)a[i]+=a[i];for(i=0;i<3;i++)printf("%d,",a[i]);pfintf("\n",);}
若有如下程序:include using namespaces std;int s=0;class sample{static int n;pub 若有如下程序:#include <iostream>using namespaces std;int s=0;class sample{static int n;public:sample(int i){ n=i;}static void add(){ s+=n;}};int sample:: n=0;int main(){sample a(2),b(5);sample:: add();cout<<s<<end1;return 0;}程序运行后的输出结果是( )。A.2B.5C.7D.3
下列程序的运行结果是【 】。 include class SomeClass { public: SomeClass(int va 下列程序的运行结果是【 】。include <iostream. h>class SomeClass{public:SomeClass(int value) { some_value=value;};void show_data(void) { cout<<data<<"<<~some_value<<endl; };static void set_data(int value) {data=value; }private:static int data;int some_value};int SomeClass::datavoid main(void){SomeClass my_class(1001),your_class(2002);your_class. set_data(4004);my_elass. show_data()}
include “stdio.h” void main() { int sum=0,a=11; while(a #include “stdio.h” void main() { int sum=0,a=11; while(aA. sum=0B. sum=55C. sum=10D. sum=11
有如下程序:include using namespace std;int getSum(int num);int main (){ int i; 有如下程序: #include <iostream> using namespace std; int getSum(int num); int main () { int i; for (i=1; i<4; i++) cout<<getSum(i); return 0; } int getSum(int hum) { static int sum=O; sum+=num; return sum; } 上述程序执行后的输出结果是( )。A.136B.248C.123D.135
有以下程序:include void sum(int *a){a[0]=a[1];}main(){int aa[10]={1,2,3,4,5,6,7, 有以下程序: #include <stdio.h> void sum(int *a) { a[0]=a[1]; } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; for(i=2;i>=0;i--) sum(aa[i]); printf("%d\n",aa[0]); } 执行后的输出结果是( )。A.4B.3C.2D.1
有以下程序 include int a=1; int f(int c) { stati 有以下程序 #include <stdio.h> int a=1; int f(int c) { static int a=2; c=c+1; return (a++) + c; } main() { int i, k=0; for(i=0;i<2;i++) { int a=3; k += f(a); k +=a; printf("%d\n",k); }A.14B.15C.16D.17
下列程序执行输出的结果是______。 include f (int a) {int b=0;static c=7;a=c++; b++ 下列程序执行输出的结果是______。include <stdio.h>f (int a){ int b=0;static c=7;a=c++; b++;return (a);}main(){ int a=2,i,k;for(i=0;i<2;i++)k=f(a++);printf("%d\n", k);}
以下程序的输出结果是【 】。include int fun(int x) {static int t=0; return(t+=x); } 以下程序的输出结果是【 】。include <stdio.h>int fun(int x){ static int t=0;return(t+=x);}main()int s,i;for(i=1 ;i<=5;i++) s=fun(i);printf("%d\n",s);
有以下程序:include using namespace std;class myclass{private: int a,b;public: v 有以下程序: #include <iostream> using namespace std; class myclass { private: int a, b; public: void init( int i, int j ) { a = i; b = j; } friend int sum( myclass x ); }; int sum( myclass x ) { return x.a + x.b; } int main () { myclass y; y.init( 15, 20 ); cout<<sum( y )<<end1; return 0; } 执行后的输出结果是( )。A.15B.20C.5D.35
下列程序的执行结果是【 】。 include class Myclass { public: void GetSum(int a) 下列程序的执行结果是【 】。include < iostream. h>class Myclass{public:void GetSum(int a)static int Sum:private:int A;};int Myclass:: Sum =10; //必须在类外部对静态数据成员初始化void Myelass: :GetSum(int a){A=a;Sum+=A;}void PrintSum(Myclass A){cout<<"Sum="<<A.Sum<<end1;}void main( ){Myclass M,N;M. GetSum(3)N. GetSum(7)PrintSum(M);}
有以下程序 include include int fun(int n) {int * 有以下程序 #include <stdio.h> #include <stdlib.h> int fun(int n) {int *p; p=(int*)malloc(sizeof(int)); *p=n; return *p; } { int a; a=fun(10); printf("%d\n",a+fun(10)); } 程序的运行结果是______。A.0B.10C.20D.出错
下列程序的执行结果为______。 include class Myclass { public: void GetSum(int a) 下列程序的执行结果为______。include<iostream.h>class Myclass{public:void GetSum(int a);static int Sum;prtvate:int A;};int Myclass::Sum=10;//必须在类外部对静态数据成员初始化void Myclass::GetSum(int a){A=a;Sum+=A:}vold PrintSum(Myclass A){cout<<"Sum="<<A. Sum<<endl;}void main( ){Myclass M,N;M.GetSum(3);N.GetSum(7);PrintSum(M);}
有以下程序:include using namespace std;int s=0;class sample{ static int n;publi 有以下程序: #include <iostream> using namespace std; int s=0; class sample { static int n; public: sample (int i) { n=i; } static void add() { s+=n; } }; int sample::n=0;A.2B.5C.7D.3
有如下程序:include using namespace std;int s=0;class sample { static int n;publ 有如下程序: #include <iostream> using namespace std; int s=0; class sample { static int n; public: sample(int i) { n=i; } static void add() { s+=n; } };A.2B.5C.7D.3
有以下程序: include using namespace std; int main() {int i=1,sum=0;Loop:if(i 有以下程序:include<iostream>using namespace std;int main(){int i=1,sum=0;Loop:if(i<=20){sum+=i;i++;goto Loop;}cout<<sum<<end1;return 0;}该程序运行后的输出结果是【 】。
有以下程序: include int a =2;int f(int n){ static int a: 3;intt=0;if(n%2){ stat 有以下程序: #include <stdio, h>int a =2;int f(int n){ static int a: 3; int t=0; if(n%2){ static int a=4;t+ =a++;} else { static int a=5;t+ :a++;} return t + a + +;main ( ){ int s=a,i; for(i=0;i<3;i++)s + =f(i); prinff("% d \n" ,s); }程序运行后的输出结果是( )。A.26B.28C.29D.24
有以下程序:include int fun(int x[], int n){ static int sum =0,i;for(i=0;i 有以下程序: #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;{ 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.45B.50C.60D.55
若有如下程序: include using namespaee std; int fun() { static int i=0; int s=1; 若有如下程序: #include<iostream> using namespaee std; int fun() { static int i=0; int s=1; s+=i; i++; return s; } int main() { int i,a=0; for(i=0;i<5;i++) a+=fun(); cout<<a<<end1; return 0; } 程序运行后,输出的结果是( )。A.20B.24C.25D.15
以下程序的输出结果是( )。 include fun() {static int a=0; a+=3;printf("%d",A); } ma 以下程序的输出结果是( )。 include<stdio.h> fun() {static int a=0; a+=3;printf("%d",A); } main() {int cc; for(cc=1;cc<5;cc++)fun(); printf("\n"); }
单选题有如下程序:#includeusing namespace std;class Apublic:static int a;void init()a=1;A(int a=2) init(); a++;;int A::a=0;A obj;int main()coutA0B1C2D3
单选题有如下程序:#include int sum(int data){ static int init=0; return init+=data;}main(){ int i; for(i=1;i=5;i++)printf(%d,,sum(i)); printf();}程序运行后的输出结果是( )。A1,3,6,10,15,B1,2,3,4,5,C0,0,0,0,0,D1,1,1,1,1,
单选题有以下程序#include int fun(int x[],int n){ static int sum=0,i; for(i=0;iA50B60C45D55