早教吧作业答案频道 -->其他-->
运行程序的结果,为什么,#includefunc(inta,intb){staticintm=0,i=2;i+=m+1;m=i+a+b;return(m);}main(){intk=4,m=1,p;p=func(k,m);printf("%d",p);p=func(k,m);printf("%d\n",p);}我运行出来的答案是8,17但不知为什么,看不懂程
题目详情
运行程序的结果,为什么,
#include
func(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=func(k,m);
printf("%d",p);
p=func(k,m);
printf("%d\n",p);
}
我运行出来的答案是8,17 但不知为什么,看不懂程序
#include
func(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=func(k,m);
printf("%d",p);
p=func(k,m);
printf("%d\n",p);
}
我运行出来的答案是8,17 但不知为什么,看不懂程序
▼优质解答
答案和解析
这是很基础的东西啊 将k m传给func中的a b(这里只是值传递 相当于拷贝了一份) func里定义了两个static变量 你可理解为它这次的值是上次计算之后的值 跟着程序走一遍 i+=m+1 i此时=3了 m=i+a+b 此时=8了 返回m用p接收 打印p=8 再次调用func函数 此时i=3 m=8 执行i+=m+1后 i=12
再执行m=i+a+b =12+4+1 =17了 返回m用p接收 此时p打印=17 有不懂的可以问我
再执行m=i+a+b =12+4+1 =17了 返回m用p接收 此时p打印=17 有不懂的可以问我
看了 运行程序的结果,为什么,#i...的网友还看了以下:
已知方程(k²-1)x²+(k+1)x+(k+2)y=k+3(k为常数)当k=()是,此方程是一元一 2020-03-30 …
,已知a,b关于x的一元二次方程kx2+(k-3)x+k+3=0的两个实数根,其中k为非负整数,点 2020-04-26 …
当x取何值时,关于k的方程(k+1)x²+(k-1)x+k=0快,今晚就要当x取何值时, 2020-05-12 …
matlab解方程X(k)=|X(k)|*exp(j*arg[X(k)])方程为X(k)=|X(k 2020-05-13 …
关于X的方程(K-3)x的|k|-2+5k=0是一元一次方程,则K=多少?好让我明白,(K-3)x 2020-06-23 …
下列方程是关于x的一元一次方程,求k的值(问题见下)↓(k-1)x的平方+(k-2)x+k-3=0 2020-07-14 …
运行程序的结果,为什么,#includefunc(inta,intb){staticintm=0, 2020-07-22 …
(一)已知关于x的方程(k^2-1)x^2+(k+1)x-2=0(1)当k为何值时,此方程为一元一 2020-08-01 …
1、关于x的一元二次方程x+k=0,则k()A、k<0B、k>0C、k≥0D、k≤02、若x-3x 2020-08-01 …
关于x的方程2(K-1)X+2K+2=0,是一元一次方程,求k的值,并解方程.麻烦写出步骤,我算了 2020-08-03 …