c语言阅读下面的程序,写出程序运行输出结果

c语言阅读下面的程序,写出程序运行输出结果,第1张

for循环循环3次,依次调用三次f(1),而f中的z和y是static静态变量,只初始化一次,而且在退出函数的时候还会保持它们的值。知道这个就可以走一次循环了:

比如k=1,即f(1)开始

x=1

z=3,y=0

y++z++//这行结束后y为1,z为4

x+y+z=1+1+4=6

k=2,f(1)第二次调用

x=1

z=4,y=1(上一次调用结束时的值)

y++z++//这行结束后y为2,z为5

x+y+z=1+2+5=8

第三次一样的x+y+z=1+3+6=10

if((c=b)<0) a=4这里,先赋值,条件不成立,走下面的else部分

else if(b=0) a=5这里,条件还是不成立,走后面的else

else a=6 a的值是6

printf("\t%d\t%d\n",a,c)输出6250

if(c=(b==0)) a=5printf("\t%d\t%d\n",a,c)这里b不等于0,条件不成立,输出60

if(a=c=b) a=4printf("\t%d\t%d\n",a,c)赋值语句的值,就是a的值,250,成立,a的值是4,输出4 250

Y EQU 30H

ORG 1000H

CLR A 清零累加器

MOV R0,#01 R0初始化为1

NEXT:

CJNE R0,#11,AD 只要R0未累加到11,则执行AD程序段(计算1~10的总和)

MOV Y,A将累加器内容(1~10的总和)写入30H处

RET

AD:ADD A, R0 R0的内容加进累加器

INC R0 R0加一

SJMP NEXT 跳转回循环


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

原文地址: http://outofmemory.cn/yw/11152067.html

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

发表评论

登录后才能评论

评论列表(0条)

保存