C语言程序片段中,按序列出所有的记号,并给每个记号以合理的属性值

Python014

C语言程序片段中,按序列出所有的记号,并给每个记号以合理的属性值,第1张

这是一个求最大公约数的递归函数,程序逻辑是:如果两数调用时,第一个参数小,则利用规则交换两参数;否则判断是否能够整除,能则返回第二个参数,否则继续多第二个参数、第一个参数除第二个参数的余数进行递归。

补充:

不好意思,编译原理当初就没学好,刚才看了这里http://www.blogcn.com/User13/xjoywag/index.html的文章,收获不小。

33

初始值 a=-1 b=4

a++<=0 先取值 判断a<=0 成立。 a自加为0. 表达式为1

!(b--<=0) 先取b值,4<=0不成立,然后b自减为3。 表达式取反后为1.

1&&1 = 1

k=1

于是

k=1 a=0 b=3

选C

34

y原始为-1

分析下面的。如果x=0 那么 下面程序不执行,y仍为-1

否则,x>0时,y=1

x<0时,y=0

与之相符的,只有C