【单选题】(每题4分)
1、1940年由科幻作家阿西莫夫所提出的“机器人三原则”中不包括以下选项中的哪一条?( )
A、机器人不得伤害人类,或看到人类受到伤害而袖手旁观
B、机器人必须服从人类的命令,除非这条命令与第一条相矛盾
C、机器人必须保护自己,除非这种保护与以上两条相矛盾
D、机器人必须受人类控制,除非人类犯下弥天大错
正确答案:D
试题解析:机器人必须受人类控制
2、机器人一般由执行机构、驱动装置、检测装置和控制系统以及复杂机械等组成。Arduino主控板属于其中的哪一部分?( )
A、执行机构
B、驱动装置
C、检测装置
D、控制系统
正确答案:D
试题解析:控制系统
3、以下选项中,属于浮点类型的是?( )
A、1
B、'1.0'
C、"1.0"
D、1.0
正确答案:D
试题解析:浮点型数据不需要加引号。
4、Arduino C语言中,十进制数的前缀是?( )
A、0
B、无前缀
C、0b
D、0x
正确答案:B
试题解析:十进制不需要前缀
5、Arduino UNO程序编写时,下列数据类型对应字节数正确的是?( )
A、字符型 char 2字节
B、单精度浮点型 float 4字节
C、字节型 byte 2字节
D、布尔型 int 2字节
正确答案:B
试题解析:字符型和字节型1字节,布尔型boolean
6、以下四个符号中哪个是逻辑运算符?( )
A、==
B、&&
C、++
D、--
正确答案:B
试题解析:&&是逻辑与运算符
7、程序Serial.print(17, BIN)输出的结果是?( )
A、10001
B、11000
C、10010
D、10011
正确答案:A
试题解析:输出的二进制数,16的二进制是10000,17就是10001
8、运算符“=”是?( )
A、逻辑运算符
B、比较运算符
C、赋值运算符
D、算术运算符
正确答案:C
试题解析:赋值运算符
9、下图程序执行完后,会在串口监视器中打印出?( )
void setup() {
Serial.begin(9600);
for(int i=1; i<=5; i++) {
for(int j=1; j<=i; j++) {
Serial.print("*");
}
Serial.println();
}
}
A、
B、
C、
D、
正确答案:B
试题解析:双重循环,根据程序可知打印的是B图形。
10、以下C语言指令中,正确的是?( )
A、int 2a=10;
B、serital.println(11);
C、for(int i=0,i<10,i++){}
D、if(i<10) i++;
正确答案:D
试题解析:A的变量名不能以数字开头。B应该是Serial。C的for小括号里面分隔应该使用分号。
11、Arduino的板载小灯是和几号引脚相连的?( )
A、0号引脚
B、1号引脚
C、12号引脚
D、13号引脚
正确答案:D
试题解析:13号
12、超声波传感器是从哪个引脚接受触发信号,开始工作的?( )
A、Vcc
B、Trig
C、Echo
D、Gnd
正确答案:B
试题解析:Trig脚接受触发信号
13、关于上拉电阻和下拉电阻的说法错误的是?( )
A、上拉电阻需要与Vcc相连
B、下拉电阻需要与GND相连
C、上拉电阻和下拉电阻都是将用电器固定在高电平
D、上拉电阻是对器件注入电流,下拉电阻是从器件输出电流
正确答案:C
试题解析:下拉电阻是将用电器固定在低电平。
14、有关二极管的说法,错误的是?( )
A、二极管是一种单向导通的电子元件
B、二极管是半导体元件
C、二极管的接脚不区分极性
D、二极管的流入电压和流出电压不相等
正确答案:C
试题解析:二极管的接脚要区分极性
15、如果一盏红色LED小灯,它的工作参数如下,我们想用Arduino控制该LED小灯,则理论上,串联的电阻不能低于?( )
A、220Ω
B、100Ω
C、97Ω
D、48Ω
正确答案:C
试题解析:在LED灯的最大工作电压2.1V,则串联电阻的电压应该是5-2.1=2.9V,串联电阻R=2.9/0.03=97Ω
16、关于图中的晶体管符号,说法错误的是?( )
A、它是NPN型三极管
B、它的导通需要在基极施加一个高电平
C、它的三根接脚分别是基极,集电极,发射极
D、它的集电极要接地
正确答案:D
试题解析:从集电极输出,发射极接地
17、电路搭建如图所示,当按下按钮时Arduino板载小灯被点亮,在之后的程序中,if(?)里面的代码可以是?( )
int led = 13;
int button = 2;
void setup( ) {
pinMode( led, OUTPUT );
pinMode( button, INPUT );
}
void loop( ) {
boolean val = digitalRead( button );
if( ) {
digitalWrite( led, HIGH);
} else {
digitalWrite( led, LOW );
}
}
A、!val
B、val
C、val=1
D、val=0
正确答案:B
试题解析:此处是下拉电阻电路,没有按下按钮时,2脚是低电平状态,按下按钮时,2脚则是高电平。if(?)里面填val即表示检测到输入脚2是高电平,点亮板载LED。CD均是赋值语句,不能作为判断。
18、电路搭建如图所示,为Arduino上传程序后,LED小灯的效果是?( )
int startPin=8;
int endPin=10;
int lightPin=startPin;
void setup() {
for(int i=startPin; i<=endPin; i++) {
pinMode(i, OUTPUT);
}
}
void loop() {
for(int i=startPin; i<=endPin; i++) {
digitalWrite(i, LOW);
}
digitalWrite(lightPin, HIGH);
if(lightPin<endPin) {
lightPin++;
}else{
lightPin=startPin;
}
delay(100);
}
A、LED小灯全部点亮
B、LED小灯全部点亮后熄灭,间隔0.1秒循环
C、LED小灯依次点亮熄灭,间隔0.1秒循环
D、LED小灯随机点亮熄灭,间隔0.1秒循环
正确答案:C
试题解析:根据程序分析,loop函数每次只点亮一个LED,依次点亮,间隔0.1秒。
19、通过电位器控制舵机的转动角度,部分程序如下,当电位器的返回值为0时,舵机的角度位置为?( )
int val = analogRead(A0);
val = map(val, 1023, 0, 120, 60);
myServo.write(val);
A、0
B、180
C、60
D、120
正确答案:C
试题解析:根据map映射可知0对应60度脚。
20、电路搭建如下,当光照射光敏电阻时,随着光照强度的增强,analogRead(A0)的返回值会如何变化?( )
A、没有变化
B、无规律变化
C、随着光照强度增大而减小
D、随着光照强度增大而增大
正确答案:C
试题解析:此处电阻是上拉电阻,光照强度的增加,光敏电阻的阻值减小,则在光敏电阻的电压减小,nalogRead(A0)减小的。
【多选题】(每题2分)
21、以下对C语言的描述,正确的是?( )
A、C语言是强类型语言,声明变量需要指定数据类型
B、C语言的变量严格区分大小写
C、C语言是一种结构化语言。它层次清晰,易于调试和维护
D、C语言是一种脚本语言,不需要“编译”过程
正确答案:ABC
试题解析:C语言不是脚本语言,需要编译。
22、在C语言编程中,将变量i的值增加1的方法有?( )
A、i+1;
B、i++;
C、i=i+1;
D、i+=1;
正确答案:BCD
试题解析:i+1;语句不能实现变量自加。
23、以下C语言的系统关键字中,用于“分支结构”的有?( )
A、if
B、switch
C、while
D、for
正确答案:AB
试题解析:while和for属于循环结构。
24、下列晶体三极管负载连接电路图中,正确的有哪些?( )
A、a
B、b
C、c
D、d
正确答案:AC
试题解析:三极管的NPN和PNP型的接法,A和C正确的。
25、程序analogRead(A0)返回了650,请问在A0口上接的电子设备有可能是?( )
A、光敏传感器
B、温度传感器
C、电位器
D、按键
正确答案:ABC
试题解析:返回了650说明A0口接的是模拟输入设备。按键是数字输入设备。
【判断题】(每题2分)
26、0xFF02FD是一个16进制数据。( )
正确答案:正确
试题解析:正确,符合十六进制字符特征。
27、Arduino编程中setup()函数会在控制板上电后只运行一次。( )
正确答案:正确
试题解析:正确,setup函数的作用是用来初始化程序,在setup函数中可以设置各种参数、初始化设备等。它在程序开始运行时自动执行一次。
28、Arduino主控板的ATmega328P芯片内部有上拉和下拉功能。( )
正确答案:错误
试题解析:Arduino主控板的ATmega328P芯片内部无下拉功能
29、Ardunio主控板的MCU内部0和1是通过高低电平来表示的。( )
正确答案:正确
试题解析:正确,在MCU内部,低电平表示0,高电平表示1。
30、如果执行程序analogWrite(3,128)后,用万用表测量3号引脚的电压,可能是2.5V。( )
正确答案:正确
试题解析:3号引脚是支持PWM输出,128是255的一半,输出电压是5V的一半,即2.5V