下面程序的运行结果是____?

下面程序的运行结果是____?,第1张

程序运行的结果是:芹渗轿

32

第一次调用:

p=4,k=1,t=2,

调用喊消结束后嫌肆k=2,t=3,返回值是4*2*3=24

第二次调用:

p=4,k=1,t=3,

调用结束后k=2,t=4,返回值是4*2*4=32

fun(int p)

{ int k=1

static t=2

k=k+1

t=t+1

return(p*k*t)

}

main( )

{ int x=4

fun(x)

printf(''%d\n'',fun(x))

}

这个程序的源程序和运行结果如图,但是这个程序有埋掘问题,

在n小于0时,返回的模行f没有赋值,是一个随机值,所以结果有错.

改弯码核正的程序见第2个源代码图和运行结果图.

改正后的程序和运行结果

因为x在for-j循环中加了两次(j等于0时,加一次,j等于2时加轮携一次),加上for-i循环中加的两腊旅伏次,

也就是说在for-i循环中,循环镇戚一次,x加了4次,for-i循环了2次,所以2乘以4等于8,x一共加了8次,所以答案是8

#include<stdio.h>

int main()

{

 int i,j,x=0

 for(i=0i<2i++)

 { 

  x++

  for(j=0j<=3j++)

  {

   if(j%2) continue

   x++

  }

  x++

 }

 printf("x=%d\n",x)

 return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12412129.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存