-->
当前位置:首页 > 题库 > 正文内容

程序填空题:阀门传感器 - C/C++ 位操作

Luz2年前 (2022-09-06)题库1409
CPU通过一个8位的IO口读取了1个字节的传感器值:unsigned char value = 0x45。这个字节的8个比特分别代表了车间里8个阀门的当前状态,1表示该阀门通,0表示该阀门断。请编写一个程序,从value变量解析出8个阀门的当前状态,并依次输出。

请将下述程序补充完整,使其可以完成上述任务。

c
#include <stdio.h>
#include <stdbool.h>

bool isValveOn(unsigned char v, int iNumber)
{
return
}

int main()
{
unsigned char v = 0x45;
for (int i=0;i<8;i++)
printf("Valve %d: %s\n",i,);
return 0;
}

程序期望的执行结果为:

Valve 0: On
Valve 1: Off
Valve 2: On
Valve 3: Off
Valve 4: Off
Valve 5: Off
Valve 6: On
Valve 7: Off


### 感觉不会?  那试着听听**免费的B站网课**
[简洁的C和C++ - 重庆大学在线课程](https://www.bilibili.com/video/BV1it411d7zx/)
[Python编程基础及应用 - 重庆大学在线课程](https://www.bilibili.com/video/BV1kt411R7uW/)
![image.png](~/6e79c9e3-cb7f-486d-ab78-36b5a8f655c0.png)








答案:
第1空:v & (0x01 << iNumber);

第2空:(isValveOn(v,i)?"On":"Off")

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。