单选题有以下程序:#include int fun(int a,int b){ static int m=0,i=2; i+=m+1; m=i+a+b; return m;}main(){ int k=4,m=1,p; p=fun(k,m); printf(%d,,p); p=fun(k,m); printf(%d,p);}程序运行后的输出结果是(  )。A8,17B8,16C8,8D8,20

单选题
有以下程序:#include int fun(int a,int b){ static int m=0,i=2; i+=m+1; m=i+a+b; return m;}main(){ int k=4,m=1,p; p=fun(k,m); printf(%d,,p); p=fun(k,m); printf(%d,p);}程序运行后的输出结果是(  )。
A

8,17

B

8,16

C

8,8

D

8,20


参考解析

解析:
static变量编译时,将其分配在内存的静态存储区中,在整个程序运行期间都不释放这些存储单元,即使退出函数,下次再进入该函数时,静态局部变量仍使用原来的存储单元,值是上一次函数调用结束时的值。程序执行过程为:调用函数,m=0,i=2,i=i+m+1=3,m=8,返回p=8,再次调用函数,m=8,i=3,i=i+m+1=12,m=12+4+1=17,返回p=17。答案选择A选项。

相关考题:

阅读下面程序: include void fun(int n) { int x(5); static int y(10); if(n>0) { 阅读下面程序:include<iostream.h>void fun(int n){int x(5);static int y(10);if(n>0){++x;++y;cout<<x<<","<<y<<end1;}}void main(){int m(1);fun(m);}则该程序的输出结果是______。

有以下程序 include int i=0; void fun( ) { { static int i=1 有以下程序 #include<iostream> int i=0; void fun( ) { { static int i=1; Std::cout<<i++<<','; } Std::cout<<i<<','; } int main( ) { fun();fun(); return O; } 程序执行后的输出结果是A.1,2,1,2,B.1,2,2,3,C.2,0,3,0,D.1,0,2,0,

请阅读以下程序:includeincludevoid fun(int b[]){static int i=0;do{b[i] 请阅读以下程序: #include<stdio.h> #include<string.h> void fun(int b[]) { static int i=0; do {b[i]+=b[i+1]; }while(++i<2);} main() { int k,a[5]={1,3,5,4,9}; fun(A); for(k=0;k<5;k++)printf("%d",a[k]);} 上面程序的输出是( )。A.13579B.48579C.48549D.48999

现有如下程序段,则程序段的输出结果为 【16】 。#include "stdio.h"int fun(){static int k;return k;}main(){int m;m=fun();printf("%d\n",m);}

以下程序的运行结果是______。 include fun(int a,int b) { int m=0,i=2; i+=m+1; m 以下程序的运行结果是______。include<iostrearn.b>fun(int a,int b){int m=0,i=2;i+=m+1;m=i+a+b;return m;}void main(){int k=4,m=1,p;p=fun(k,m);cout<<p<<end1;}

以下程序的运行结果是______。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 void fun(int n) { int x(5); static int y(10); if(n>0) { 阅读下列程序:include<iostream.h>void fun(int n){int x(5);static int y(10);if(n>0){++x;++y;cout<<x<<","<<y<<endl;}}void main()int m(1);fun(m);}则该程序的输出结果是______。

以下程序的输出结果是【】。 include using namespace std; void fun() {static int a=0 以下程序的输出结果是【 】。include <iostream>using namespace std;void fun(){static int a=0;a+=2;cout<<a;}int main(){int CC;for(CC=1;cc<4;CC++)fun();cout<<end1;return 0;}

有以下程序 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 void fun( ) {static int a=0; a+=2;cout 以下程序的输出结果是_____。include<iostream.h>void fun( ){ static int a=0;a+=2;cout < < a < < " ";}void main( ){ int cc;for(cc=1;cc<4;cc++)fun( ) ;cout < < endl;}

以下程序的输出结果是【 】。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 define N 20fun(int a[] ,int n,int m){int i,j;for(i=m;i> :n;i 有以下程序: #include <stdio.h> #define N 20 fun(int a[] ,int n,int m) { int i,j; for(i=m;i> :n;i--) a[i+1] =a[i]; } main( ) { int i,a[N.] = 11,2.3,4,5,6,7,8,9,10[; fun( a,2,9) for(i =0;i<5;i ++ ) printf("% d" ,a[i] );程序运行后的输出结果是( )。A.10234B.12344C.12334D.12234

下述程序的输出结果是()。include int fun(int a){intb=0;staticintc=3;b++,c++;return 下述程序的输出结果是( )。 # include <stdio.h> int fun( int a) { int b=0; static int c=3; b++,c++; return a+b+c; } void main() { int x=2,i; for(i=1;i<3;i++) printf("%d",fun(x)); }A.56B.67C.78D.89

以下程序的输出结果是#include stdio.hint fun(int x){ static int m=0; return(m *=x);}main(){ int s,i; for(i=l;i=3;i++) s=fun(i); printf("%d\n",s);}

有以下程序 include int fun(int a, int b) { if(b==0) return a; 有以下程序 #include <stdio.h> int fun(int a, int b) { if(b==0) return a; else return(fun(-a,-b)); } main() { printf("%d\n",fun(4,2)); } 程序的运行结果是______。A.1B.2C.3D.4

有以下程序 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 int fun(int (*s)[4],int n,int k) {int m,i; 有以下程序 #include <stdio.h> int fun(int (*s)[4],int n,int k) {int m,i; m=s[0][kl; for(i=1;i<n;i++) if(s[i][k]>m) m=s[i][k]; return m; } main() { int a[4][4]={{1,2,3,4},{11,12,13,14}, {21,22,23,24}, {31,32,33,34}}; printf("%d\n",fun(a,4,0)); } 程序的运行结果是______。A.4B.34C.31D.32

以下程序的输出结果是()。includeint m=13;int fun(int x,int y){int m=2;return(x*y-m 以下程序的输出结果是( )。 #include<stdio.h> int m=13; int fun(int x,int y) {int m=2; return(x*y-m); } main() {int a=7,b=6; printf("%d",fun(a,B)/m); }A.1B.3C.7D.10

以下程序的输出是【】。 include using namespace std; fun(intm) { static int n=1; n=m 以下程序的输出是【 】。include<iostream>using namespace std;fun(intm){static int n=1;n=m*n;return(n);}void main(){int i;for(i=1;i<=3;i++) cout<<fun(i);}

有以下程序#include "stdio.h"void fun(int *a,int *b,int c){ c=*a+*b; }main(){ int a[2]={6,9},c=0; fun(a,a+1,c); printf("%d\n",c);}程序输出的结果是 A.6 B.9C.0 D.15

有以下程序include using namespace std;int a;int fun ();int main (){extern int a 有以下程序#include <iostream>using namespace std;int a;int fun ();int main (){ extern int a; int b; a = 100; b = fun(); cout<<b<<end1; return 0;}int fun{){ extern int a; return (10*a ;} 其程序运行后的输出结果是A.100B.10C.1000D.10000

以下程序的输出结果是#include "stdio.h"int *fun(int *a,int *b){ int m; m=*a; m+=*b-3; return(m);}main(){ int x=21,y=35,*a=x,*b=y; int *k; k=fun(a,b); printf("%d\n",*k);}

若有以下程序:includeusing namespace std;int fun(){static int i=0;int s=1;s+=i;i 若有以下程序: #include<iostream> using namespace 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<<endl; return 0; } 程序运行后,输出的结果是( )。A.20B.24C.26D.15

有以下程序: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 int i = 0;void fun( ){ {static int i = 1;std::cout 有以下程序 #include <iostream> int i = 0; void fun( ) { { static int i = 1; std::cout<<i++<<','; } std::cout<<i<<','; } int main() { fun(); fun(); return 0; } 程序执行后的输出结果是A.1,2,1,2,B.1,2,2,3,C.2,0,3,0,D.1,0,2,0,

若有如下程序: 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"); }

单选题有以下程序#include int fun(int x[],int n){ static int sum=0,i; for(i=0;iA50B60C45D55