设有语句: if(ex)S1;else S2; 该语句执行功能的流程图如图6—1所示。
要求: (1)根据流程图描述的语义为上面的语句设计代码(四元式)结构填入下面代码区:
注意: ①语句ex、S1、S2的中间代码可以用ex,code、S1.code、S2.code表示。 ②转移类四元式的转向目标统一写在四元式的result位置。 无条件转移操作符用“j”表示,例如,(j,,,100)表示无条件转移到addr为100的四元式。 有条件转移操作符用“jT”表示为“真”转移。例如,(jTex值,,100)表示对ex值进行判断,当ex值为真时转移到地址为100的四元式。类似地有转移操作符“jF”表示为“假”转移。 ③code部分可以有空语句,即code部分不填写任何内容。 (2)给出语句标号next拉链一返填的描述。
如图曲线y=cosx2与直线y=0,x=a所围图形的面积为s1,而与直线y=1,x=a所围图形的面积为s2,试问a为何值时s1+s2最小.
为了判定两个字符串是否相等应当使用()
A.if(s1==s2)
B.if(s1=s2)
C.if(strcmp(s1,s2)==0)
D.if(strcmp(s1,s2)=0)
下图是循环彩灯的原理图,试根据接口电路写出应用程序。
要求如下。
8路彩灯从左到右依次循环。再以同样的方式,从右到左依次循环。每个灯的延时时间为0.5秒。周而复始,循环不止。
当开关S1闭合时,8路彩灯从左到右依次循环。
当开关S2闭合时,8路彩灯从右到左依次循环。
根据要求写出相应的控制程序。
程序如下:
#include <reg51.h>
unsigned int i; char j,k;
Void main()
{
}
void EX0_int() interrupt 0
{
}
void EX1_int() interrupt 2
{
}