单片机C语言期末考试题

单片机C语言期末考试题
单片机C语言期末考试题

单片机C语言期末考试题(A)

一、单项选择题:40 分

1、51系列的单片机中片内的字节大小可能的是()

A、128M

B、128K

C、128

D、

64

2、C51语言提供的合法的数据类型关键字是()。

A、 B、 C、 D、 r

3、片内的位寻址区,位于地址()处。

A、00H~1

B、20H~2

C、30H~7

D、80H~

4、间接寻址片内数据存储区(256字节),所用的存储类型是()

A、 B、 C、 D、

5、51单片机上电复位的信号是()

A、下降沿

B、上升沿

C、低电平

D、高电平

6、可以将P1口的低4位全部置高电平的表达式是()

A、P10x0f

B、P10x0f

C、P1^=0x0f

D、P11

7、一般单片机C51程序中,为了使程序执行的效率最高,函数参数传递时,函数参数的个数不能够超过()

A、1

B、2

C、3

D、4

8、需要扩展一片外部,大小32K字节,需要的地址线是()

A、15

B、14

C、13

D、

12

9、如果将中断优先级寄存器中,将设置为0x0A,则优先级最高的是()

A、外部中断1

B、外部中断0

C、定时/计数器1

D、定时/计数器0

10、单片机C51中用关键字()来改变寄存器

A、 B、 C、 D、

11、红外线遥控码由发射电路经()的载频调制后发

射。

A、38K

B、12M

C、6M

D、32。768K

12、红外线遥控码的逻辑“0”与逻辑“1”是以脉冲的()

决定的。

A、电平

B、宽度

C、频率

D、

形状

13、1302内的时钟寄存器是以()的数据格式定义的。

A、十进制

B、十六进制

C、码

D、

压缩码

14、设51单片机晶振频率为12,定时器作定时器使用时,其

最高的输入计数频率应为()

A、2

B、1

C、500

D、250

15、使用()函数时,必须包含的库文件是()

A、52

B、

C、

D、

16、0809的启动转换的信号是()

A、 B、 C、 D、

17、线反转法识别有效按键时,如果读入的列线值不全为1,则说明()

A、有键被按下

B、一定只有一个键被按下

C、一定有多个键被按下

D、没有键被按下

18、18B20的总线方式是()

A、B、I2C C、—D、2

19、24C02采用的总线形式是()

A、 B、 C、I2C D、

20、串行口每一次传送()字符。

A、1个

B、1串

C、 1波特

D、1帧

二、判断题:10分

1、C51中,特殊功能寄存器一定需要用大写。( )

2、使用片内存储器时,EA脚必须置低。()

3、单片机外部中断时只有用低电平触发。()

4、定义的变量一定位于内部的位寻址区。( )

5、采用单片机的C语言开发时,只能利用C51语言书写程序,不能嵌套汇编语言。()

6、51系列的单片机至少有5个中断, C51软件支持最多32个中断。( )

7、51单片机的程序存储器是可以用来存放数据的。( )

8、和都是用来定义位变量,所以两者之间没有区别,可以随便替换使用。()

9、51单片机的位地址总共有256位。( )

10、串口中断请求标志必须由软件清除。( )

三、多项选择题:10分

1 、目前,51单片机采用的开发语言是()

A、机器语言

B、汇编语言

C、语言

D、C语言

E、语言

2、51单片机的包含以下几个部分()

A、通用寄存器区

B、可位寻址区

C、用户区

D、

3、C51中使用最广泛的三个数据类型是()

A、 B、 C、 D、

4、关于型变量的用法,说法正确的()

A、变量不能声明为指针

B、不能定义有数组

C、型变量自动存储于内部的位寻址区

D、型变量不可用作函数返回值

5、存储器模式有()

A、 B、 C、 D、

四、填空20分

1、单片机中,常用作串入并出的芯片是,常用作232串口电平转换芯片是。

2、在单片机硬件设计时,31脚一般要接,晶振在设计中应尽量。

3、单片机程序的入口地址是,外部中断0的入口地址是。

4、非编码式键盘识别有效键盘的方法通常有两种:一种是另一种是。

5、若采用12的晶体振荡器,则51单片机的振荡周期为,机器周期为。

6、1602常用的写子函数有和两种。

7、 C51软件中,工程文件的扩展名是,编译连接后生成可烧写的文件扩展名是

8、字符型标准西文字库采用是编码方式。

9、若只需要开串行口中断,则的值应设置为,若需要将外部中断0设置为下降沿触发,则执行的语句为。

10、红外编码中用户码的作用是一帧按键码由个字节组成。

11、1302是双电源工作方式,第二电源的作用是。

五、综合应用20分

1、假设单片机的晶体振荡器的频率是12,利用定时器1采用方式1定时20,写出初值的计算过程和整个定时器初始化程序,同时写出在P1.7脚上输出0.2秒的方波的完整程序。

2、画出下列要求的原理图,假设单片机的P1口的连接8个,P3连接8的对地的按键,当某个按钮按下时相应的点亮。根据描述画出原理图,并编写程序控制?

单片机C语言期末考试题(B)

一、单项选择题:40 分

1、51系列的单片机中片内的字节大小可能的是()

A、128M

B、128K

C、128

D、

64

2、C51语言提供的合法的数据类型关键字是()。

A、 B、 C、 D、 r

3、片内的位寻址区,位于地址()处。

A、00H~1

B、20H~2

C、30H~7

D、80H~

4、间接寻址片内数据存储区(256字节),所用的存储类型是()

A、 B、 C、 D、

5、51单片机上电复位的信号是()

A、下降沿

B、上升沿

C、低电平

D、高电平

6、可以将P1口的低4位全部置高电平的表达式是()

A、P10x0f

B、P10x0f

C、P1^=0x0f

D、P11

7、一般单片机C51程序中,为了使程序执行的效率最高,函数参数传递时,函数参数的个数不能够超过()

A、1

B、2

C、3

D、4

8、需要扩展一片外部,大小32K字节,需要的地址线是()

A、15

B、14

C、13

D、

12

9、如果将中断优先级寄存器中,将设置为0x0A,则优先级最高的是()

A、外部中断1

B、外部中断0

C、定时/计数器1

D、定时/计数器0

10、单片机C51中用关键字()来改变寄存器

A、 B、 C、 D、

11、红外线遥控码由发射电路经()的载频调制后发

射。

A、38K

B、12M

C、6M

D、32。768K

12、红外线遥控码的逻辑“0”与逻辑“1”是以脉冲的()

决定的。

A、电平

B、宽度

C、频率

D、

形状

13、1302内的时钟寄存器是以()的数据格式定义的。

A、十进制

B、十六进制

C、码

D、

压缩码

14、设51单片机晶振频率为12,定时器作定时器使用时,其

最高的输入计数频率应为()

A、2

B、1

C、500

D、250

15、使用()函数时,必须包含的库文件是()

A、52

B、

C、

D、

16、0809的启动转换的信号是()

A、 B、 C、 D、

17、线反转法识别有效按键时,如果读入的列线值不全为1,则说明()

A、有键被按下

B、一定只有一个键被按下

C、一定有多个键被按下

D、没有键被按下

18、18B20的总线方式是()

A、B、I2C C、—D、2

19、24C02采用的总线形式是()

A、 B、 C、I2C D、

20、串行口每一次传送()字符。

A、1个

B、1串

C、 1波特

D、1帧

二、判断题:10分

1、C51中,特殊功能寄存器一定需要用大写。( )

2、使用片内存储器时,EA脚必须置低。()

3、单片机外部中断时只有用低电平触发。()

4、定义的变量一定位于内部的位寻址区。( )

5、采用单片机的C语言开发时,只能利用C51语言书写程序,不能嵌套汇编语言。()

6、51系列的单片机至少有5个中断, C51软件支持最多32个中断。( )

7、51单片机的程序存储器是可以用来存放数据的。( )

8、和都是用来定义位变量,所以两者之间没有区别,可以随便替换使用。()

9、51单片机的位地址总共有256位。( )

10、串口中断请求标志必须由软件清除。( )

三、多项选择题:10分

1 、目前,51单片机采用的开发语言是()

A、机器语言

B、汇编语言

C、语言

D、C语言

E、语言

2、51单片机的包含以下几个部分()

A、通用寄存器区

B、可位寻址区

C、用户区

D、

3、C51中使用最广泛的三个数据类型是()

A、 B、 C、 D、

4、关于型变量的用法,说法正确的()

A、变量不能声明为指针

B、不能定义有数组

C、型变量自动存储于内部的位寻址区

D、型变量不可用作函数返回值

5、存储器模式有()

A、 B、 C、 D、

四、填空20分

1、单片机中,常用作串入并出的芯片是,常用作232串口电平转换芯片是。

2、在单片机硬件设计时,31脚一般要接,晶振在设计中应尽量。

3、单片机程序的入口地址是,外部中断0的入口地址是。

4、非编码式键盘识别有效键盘的方法通常有两种:一种是另一种是。

5、若采用12的晶体振荡器,则51单片机的振荡周期为,机器周期为。

6、1602常用的写子函数有和两种。

7、 C51软件中,工程文件的扩展名是,编译连接后生成可烧写的文件扩展名是

8、字符型标准西文字库采用是编码方式。

9、若只需要开串行口中断,则的值应设置为,若需要将外部中断0设置为下降沿触发,则执行的语句为。

10、红外编码中用户码的作用是一帧按键码由个字节组成。

11、1302是双电源工作方式,第二电源的作用是。

四、简答题20分

1、在使用8051的定时器/计数器前,应对它进行初始化,其步骤是什么?

答:

4、在有串行通信时,定时器/计数器1的作用是什么,怎样确定串行口的波特率?

单片机c语言设计试题答案

单片机C语言程序设计师试题 一、填空题 1、设X=5AH,Y=36H,则X与Y“或”运算为_________,X与Y的“异或”运算为________。 2、若机器的字长为8位,X=17,Y=35,则X+Y=_______,X-Y=_______(要求结果写出二进制形式)。 3、单片机的复位操作是__________(高电平/低电平),单片机复位后,堆栈指针SP的值是________。 4、单片机中,常用作地址锁存器的芯片是______________,常用作地址译码器芯片是_________________。 5、若选择内部程序存储器,应该设置为____________(高电平/低电平),那么,PSEN信号的处理方式为__________________。 6、单片机程序的入口地址是______________,外部中断1的入口地址是_______________。 7、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为_________,机器周期为_______________。 8、外围扩展芯片的选择方法有两种,它们分别是__________________和_______________。 9、单片机的内部RAM区中,可以位寻址的地址范围是__________________,特殊功能寄存器中,可位寻址的地址是____________________。 10、子程序返回指令是________,中断子程序返回指令是_______。 11、8051单片机的存储器的最大特点是____________________与____________________分开编址。 12、8051最多可以有_______个并行输入输出口,最少也可以有_______个并行口。 13、_______是C语言的基本单位。 14、串行口方式2接收到的第9位数据送_______寄存器的_______位中保存。 15、MCS-51内部提供_______个可编程的_______位定时/计数器,定时器有_______种工作方式。 16、一个函数由两部分组成,即______________和______________。 17、串行口方式3发送的第9位数据要事先写入___________寄存器的___________位。 18、利用8155H可以扩展___________个并行口,___________个RAM单元。 19、C语言中输入和输出操作是由库函数___________和___________等函数来完成。二、选择题 1、C语言中最简单的数据类型包括()。 A、整型、实型、逻辑型 B、整型、实型、字符型 C、整型、字符型、逻辑型 D、整型、实型、逻辑型、字符型 2、当MCS-51单片机接有外部存储器,P2口可作为 ( )。 A、数据输入口 B、数据的输出口 C、准双向输入/输出口 D、输出高8位地址 3、下列描述中正确的是()。 A、程序就是软件 B、软件开发不受计算机系统的限制 C、软件既是逻辑实体,又是物理实体 D、软件是程序、数据与相关文档的集合 4、下列计算机语言中,CPU能直接识别的是()。 A、自然语言 B、高级语言 C、汇编语言 D、机器语言 5、MCS-5l单片机的堆栈区是设置在( )中。 A、片内ROM区 B、片外ROM区 C、片内RAM区 D、片外RAM区 6、以下叙述中正确的是()。 A、用C语言实现的算法必须要有输入和输出操作 B、用C语言实现的算法可以没有输出但必须要有输入 C、用C程序实现的算法可以没有输入但必须要有输出 D、用C程序实现的算

同济大学C语言期末考试卷

同济大学C语言期末考试卷 2005-2006学年第二学期《C程序设计期末试卷》(闭卷) 一、单项选择题(20分) 1. 在定义函数时,能用以下(1) 标识符作函数名。 A.struct B._abc C. 8abc D. abc@https://www.360docs.net/doc/be17223454.html, 2在一个函数被调用执行过程中,当执行到函数体中(2) 语句后立即无条件返回主调函数。 A.goto B.break C.continue D.return 3.以下关于main函数定义的叙述中,错误的是(3) 。 A. main函数是自定义函数,因此函数体中的声明和语句都是可选的 B. main函数定义时可以有形式参数也可以没有形式参数 C. main函数定义必须出现在一个源程序的起始位置 D. 在一个源程序中只能有一个main函数定义 4.以下函数定义中正确的是(4) 。 A. double fun(intx,y){ return x*y;} B. double fun(intx,int x){ return x*x; } C. double fun(register intx,int y){ return x*x;} D. double fun(extern intx,int y){ return x*y;} 5.若函数定义为void fun(intx,inty,int *p) { *p= x>y ? x : y; },且main函数中有声明“int a=1,b=2,c[2]={0};”,则以下语句中正确的是(5) 。 A.printf(“%d”,fun(a,b,c)); B.fun(a,b,c+1); C.fun(a,b,c[2]); D.fun(1,2); 6. 若函数定义为double fun(double x,double y){ return x/y;},则以下fun引用声明(函数原型)中错误的是(6) 。 A. double fun(double x,double y); B. double fun(double a,double b); C. double fun(double ,double ); D. float fun(double x,double y); 7.以下程序段中,有语法错误的是。 A. double f; double f (double x) { return f=x*x; } C. double f (double x) { double f; return f=x*x; } B. double f (double f) { return f*f;} D. double f (double x) { if(x>0){ double f ; return f=x;} else{ double f ; return f= -x;} } 8.以下一维数组声明中,正确的是(8) 。 A. int a[ ]; B.int b[10],a[b]; C. int a[4]={1,2,3,4,5}; D. int a[sizeof('a')]={'a'};

江苏大学大一c语言期末复习题汇总

选择题1.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.C._123_ D._ok 2.请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 3.不属于C语言关键字的是()。 A.int B.break C.while D.character 4.以下不能定义为用户标示符的是()。 A.scanf B.Void C._3com_ D.int 5.C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 6.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 7.以下选项中,合法的用户标识符是()。 A.long B._2abc C.3dmax D. 8.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示 的字符常量’\101’是()。 A.字符A B.字符a C.字符c D.非法的常量 9.以下选项中,正确的字符常量是()。 A.”F”B.’\\’’C.’W’D.’’ 10.下列变量定义中合法的是 A.short _a=; B.double b=1+; C.long do=0xfdaL; D.float 2_and=1-e-3; 11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 12.下列运算符中优先级最高的是()。 A.< B.&& C.+ D.!= 13.判断char型变量s是否为小写字母的正确表达式是()。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’) C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s)

单片机C语言期末考试习题

单片机C语言期末考试题(A) 一、单项选择题:40 分 1、MCS-51系列的单片机中片内RAM的字节大小可能的是() A、128M B、128K C、128 D、64 2、C51语言提供的合法的数据类型关键字是()。 A、 3、片内 A、 4 A、 5、 A 6 A、 7 A、1 8 A、 9 A C 10 A、 11、红外线遥控码由发射电路经(? )Hz的载频调制后发射。 A、38K B、?12M? C、6M D、?32。768K 12、红外线遥控码的逻辑“0”与逻辑“1”是以脉冲的()决定的。 A、电平 B、宽度 C、频率 D、形状 13、DS1302内的时钟寄存器是以()的数据格式定义的。

A、十进制 B、十六进制 C、BCD码 D、压缩BCD码 14、设MCS-51单片机晶振频率为12MHz,定时器作定时器使用时,其最高的输入计数频率应为() A、2MHz B、1MHz C、500kHz D、250kHz 15、使用_nop_()函数时,必须包含的库文件是() A、reg52.h B、absacc.h C、intrins.h D、stdio.h 16、ADC0809的启动转换的信号是() A、ALE B、EOC C、CLOCK D、START 17 A C 18、 A、 19、 A、 20 A、 1、 2、使用片内存储器时,EA脚必须置低。() 3、单片机外部中断时只有用低电平触发。() 4、bit定义的变量一定位于内部RAM的位寻址区。( ) 5、采用单片机的C语言开发时,只能利用C51语言书写程序,不能嵌套汇编语言。()

6、51系列的单片机至少有5个中断,KEIL C51软件支持最多32个中断。( ) 7、MCS-51单片机的程序存储器是可以用来存放数据的。( ) 8、bit和sbit都是用来定义位变量,所以两者之间没有区别,可以随便替换使用。() 9、MCS-51单片机的位地址总共有256位。( ) 10 1 A D 2、51 A 3、C51 A、bit 4、关于 A、 C、bit型变量自动存储于内部RAM的位寻址区 D、bit型变量不可用作函数返回值 5、存储器模式有() A、xdata B、small C、code D、large 四、填空20分

大一C语言期末考试题

大一C语言期末考试题 悬赏分:40 |解决时间:2010-6-29 14:28 |提问者:345387547 1. 数组int a[3][5]; 共定义了____15_________个元素。 2. 有float f= 3.1415927; 则printf(“%5.4f”, f );输出的结果是 _______________。 3. 下面程序的功能是:输出100以内(不包含100)能被3整除且个位数为6的所有整数,请填空。 main( ) { int i; for(i=1; ___i<100____________; i++) if (___i/3_=__=0__i_______) printf("%d", i); } 4. 设有“int x=2, y”说明,则逗号表达式“y=x+5,x+y”的值是_________7 ______ 5. 以下是使用指针,进行字符串复制的程序,请填空。 main() { char a[]= “Tsinghua University”, b[30], *p1,*p2; p1=a; p2=b; for(; *p1!= _______________; p1++, p2++) _______________=_______________; *p2= ______________; printf(“string a is:%s\n”,a); printf(“string b is:%s\n”,b); } 6. 下面程序用冒泡法对数组a进行降序排序,请填空。 main() { int a[5]={4,7,2,5,1}; int i,j,m; for(i=0;i<4;i++) for(j=0;j<_______________;j++) if( _______________< _______________ ) { m=a[ j]; a[ j]=a[ j+1]; a[ j+1]= m; } for(i=0;i<5;i++) printf("%d ",a[i]); } 7. 函数fun的功能是:使一个字符串按逆序存放,请填空。 void fun (char str[]) { char m; int i,j; for(i=0,j=strlen(str);i<_______________;i++,j--)

《单片机C语言程序设计》课程标准

广州康大职业技术学院 《单片机C语言程序设计》课程标准 一、基本信息 适用对像:应用电子技术专业的学生 课程代码: 学分:2 学时:36 制定人:徐又又 制定时间:2010年9月 所属系部:自动化 批准人:陶甫廷 二、课程的目标 1.专业能力目标 了解单片机C语言的特点、与PC机C语言的异同之处、单片机C语言的开发环境; 熟悉单片机C语言的基本语法规范、Keil C软件的应用及其与硬件平台的连接、C语言程 序结构设计、与单片机相关的设置等方面知识。 2.方法能力目标 了解用单片机C语言进行应用产品软件开发的步骤,具备单片机C语言程序的识读、修改的基本能力;学会使用Keil C软件进行源程序编辑、编译和软、硬件模拟调试的操作方 法与技能。 3.社会能力目标 通过后续课程《单片机应用实训》的学习与强化训练,具有使用单片机C语言进行电子产品、自动检测与控制和高新视听设施等方面的软件开发的职业技能。 三、整体教学设计思路 1.课程定位 该课程是应用电子技术和自动化技术等专业获得专业技能的必修课程之一,该课程属于职业技术课程,以培养电子产品开发相关行业急需的机电类和电子类高级技能应用型人才 为目标。 本课程一般在学生学完模拟电子技术与数字电子技术、计算机技术等专业基础课后再讲授;《单片机应用》等课程可作为先修课程,也可在同一学期开设。 2.课程开发思路

本课程根据“工学结合”的原则,强调对单片机C语言程序设计的理论部分删繁就简,以“实用够用”为度,就是为了便于他们在后续的实训月(四周)以及即将下厂顶岗实习期 (十周),将所学的单片机C语言程序设计的常用原理与实用知识,能够与实训、实习的生 产工位和顶岗工作更紧密地联系起来。 四、教学内容 1.学时分配 学习情境名称子学习情境1 子学习情境2 子学习情境3 子学习情境4 学时 分配 学习情境(单元)1 单片机C语言概述单片机C语言与 PC机C语言的异 同之处 简单的C程序介绍 及上机操作(编译 三个简单C程序) 3 教学时数 1 2 学习情境(单元)2单片机C语言开发环境 建立 Keil软件的使 用(源文件、 工程的建立) 上机操作(用keil 软件进行工程的设 置) 3 教学时数 2 1 学习情境(单元)3数据的类型、运算符和 表达式 用整型和字符型 定义变量 数的溢出 C51中特有的数 据类型 上机操作(用 算术运算符和 算术表达式编 写程序) 6 教学时数 2 1 2 1 学习情境(单元)4C51流程与控制顺序结构程序选择结构程序循环结构程 序(上机操作 编译冒泡排 序法程序) 6 教学时数 2 2 2 学习情 境(单 元)5 C51构造数据类型数组指针结构共用体和枚举 6 教学时数 2 2 1 1 学习情境(单元)6单片机内部资源的组成中断编程上机操作用定时器 /计数器资源 编程并编译 串口编程 6 教学时数 2 2 2 学习情境(单元)7函数函数的定义函数的调用局部变量和全局 变量 变量的存储类 别 6 教学时数 2 2 1 1

单片机试题库分章节答案(C语言).docx

精品文档(红色是考试考过的,蓝色是老师给的习题“重点看“) 第 1 部分单片机概述及数学基础 一、填空题 1、十进制255的二进制是11111111,十六进制是FF。 2、单片机是将CPU 、存储器、特殊功能寄存器、定时 /计数器和输入 /输出接口电路、以及相互连接的总线等集成在一块芯片上。 3、十进制 127 的二进制是1111111,十六进制是7F。 4、+59 的原码是00111011 , -59 的补码是 11000101。 5、十进制数 100 转换为二进制数是1100100;十六进制数100 转换为十进制数是256。 6、十进制数 40 转换为二进制数是101000 ;二进制数10.10 转换为十进制数是 2. 5。 7、十进制 99 的二进制是1100 011 ,十六进制是63。 二、判断题 (×)1、AT89S51是一种高性能的16 位单片机。 8 位机 (×) 2、有符号正数的符号位是用 1 表示的。 三、选择题 ()1、计算机中最常用的字符信息编码是(A) A. ASCII B.BCD 码 C. 余 3 码 D. 循环码 四、简答题 1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点? 第 2 部分 51 单片机硬件结构、存储系统及 I/O 接口 一、填空题 1、AT89S51 单片机共有4个8位的并行I/O口,其中既可用作地址/数据口,又可用作一般的I/O 口的是P0。 2、若采用12MHz的晶振,则 MCS-51 单片机的振荡周期为 __ 1/12 μS __,

机器周期为 ____1μS __。 3、AT89S51 单片机字长是 ___8___位,有 ___40 根引脚。 4.89S51 单片机是8位单片机,其PC计数器是16 位。 5.若单片机使用的晶振频率是6MHz, 那么一个振荡周期是1/6μS,一个机器 周期是2μSμS。 6.89S51 单片机是+5V 供电的。 4.0-5.5V 7.堆栈是内部数据RAM 区中,数据按先进后出的原则出入栈的。8.MSC-51 系列单片机具有4个并行输入/输出端口,其中_P0_口是一个两用接口,它可分时输出外部存储器的低八位地址和传送数据,而_P1__口是 一个专供用户使用的I /O 口,常用于第二功能的是P3口。 9.当单片机系统进行存储器扩展时,用P2口的作为地址总线的高八位,用 P0 作为地址总线的低八位。 10.半导体存储器分为___ROM ___和__ RAM __两大类,其中前者具 有非易失性(即掉电后仍能保存信息),因而一般用来存放系统程序,而后者具 有易失性,因而一般用来存放经常变动的用户程序.中间结果等。 11.MCS-51 系列单片机对外部数据存储器是采用_DPTR___作为指针的, 其字长为_ 16__位,因而可寻址的数据存储器的最大空间为_64K_字节。 12. 51 单片机有26 个特殊功能寄存器,其中11个具有位寻址功能。 13. 当单片机系统需要外扩展存储器时,P2 和P0作为地址总线。 14.AT89S51 单片机上电初始化后,将自动设置一些寄存器的初始值,其中堆栈 指针 SP 的初始值为07H,P0口复位值是FFH。 15.单片机两种节电模式:空闲模式和掉电模式,节电模式是由特 殊功能寄存器PCON中的有关位来控制的。 16.在单片机硬件设计时, 31 脚一般要接 ___高电平 ___,晶振在 PCB 设计中应 尽量 ___靠近 51 芯片 ___。 17.在 AT89S51 单片机中, RAM 是数据存储器,ROM为程序存储器。 18.单片机的复位方式主要有上电复位和按键复位两种。 19.AT89S51 单片机的内部 RAM 的寻址空间为256B,而内部ROM的寻址 空间为4K。

大一C语言期末考试试题

6.以下程序的输出结果为(D)。 main( ) { char c; int i; for(i=65;i<68;i++) { c=i+32; switch(c) { case ‘a’:printf("%c,",c);break; case ‘b’:case ‘e’:printf("ok,"); default: printf("end"); } } } A a,ok,end B a,ok,endend C a,ok,end,end D a,ok,ok 9.以下程序的输出结果为(B)。 #define A 3 #define B(a) (A+1)*a main() { int x; x=3*A+B(7); printf("x=%d\n",x); } A x=93 B x=37 C x=60 D x=90 三写出下列程序的运行结果(10分,每小题2分) 1.main( ) { char c1=‘A’,c2=‘\144’,c3=‘\x44’,c=0xf5,x=13,a; int i=0122,j=0xa4; printf(“c1=%c,c4=%c\tc5=%c\n”,c1,c2,c3); printf(“%d,%d\n”,i,j); i=-34; j=20; printf(“%d,%d,%d\n”,i%j,i&j<<2,sizeof(j)); printf(“c=%d\n”,c|x); a=c^x<<2;

printf(“a=%d\n”,a); } 2.main() { int x,y=1,z=10; if(y!=0) x=5; printf(“x=%d\t”,x); x=1; if(z<0) if(y>0) x=3; else x=5; printf(“x=%d\n”,x); if(z=y<0) x=3; else if(y==0) x=5; else x=7; printf(“x=%d\t”,x); printf(“z=%d\n”,z); } 3.main( ) { char s[20]=“I like it.”,t[20]=“Are you?”,c[20]; int i=0; while(s[++i]!=‘\0’) t[i]=s[i]; t[i]=0; printf(“string s:%s\n”,s); printf(“string t:%s\n”,t); } 4.int i=5; main( ) { int i=3; { int i=10; i++; printf(“%d\n”,i);

昆明理工大学C语言期末考题库

昆明理工大学C语言期末考题库一个数组中的所有元素可以具有不相同的数据类型。选择一项: 对 错 C语言中,do-while语句构成的循环只能用break语句退出。选择一项: 对 错 数组名作为函数的参数时,实参数组和形参数组共用相同的内存单元。 选择一项: 对 错 已知字符数组str1的初值为"China",则语句str2=str1;执行后字符数组str2也存放字 符串"China"。 选择一项: 对 错 论使用何种参数传递方式,形参变量值的改变都不影响实参变量的值。 选择一项:

对 错 以下有关宏替换的叙述不正确的是_______。选择一项: a. 宏替换不占用运行时间 b. 宏替换只是字符替换 c. 宏名无类型 d. 宏名必须用大写字母表示 结构体可以定义在单独的头文件中,使用时需要在对应C文件中包含该头文件。 选择一项: 对 错 可以用swicth结构实现的程序都可以使用if语句来实现。选择一项: 对 错 下面对typedef的叙述中不正确的是_______。 选择一项: a. typedef只是将已存在的类型用一个新的标识符来代表

b. 用typedef可以增加新类型 c. 用typedef可以定义各种类型名,但不能用来定义变量 d. 使用typedef有利于程序的通用和移植 枚举类型时一种基本的数据类型。 选择一项: 对 错 switch语句的结束发生在break;语句的执行或者switch语句的“}”。选择一项: 对 错 f(int a) { int b=0;static int c=3; b++; c++; return(a+b+c); } 选择一项: a. 7 7 7 b. 7 8 9 c. 7 10 13 d. 7 9 11

大学C语言期末考试习题集(带详解答案)

一、单项选择题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从 C开始执行。 A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是( B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A) %x B) a+b C) a123 D) 123 选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai

大一c语言期末考试题

大一c语言期末考试题 C语言期末考试试题附答案 一选择题(7分,每小题0.5分) 1.C语言源程序的基本单位是()。 A 过程 B 函数 C 子程序 D 标识符 2.下列程序的输出结果是()。 main( ) { int a=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C 0 D不确定值 3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是()。 A 7 B 8 C 9 D 2 4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。 a=125.534; a=(int)125.521%4; a=5<<2; A 125,31,1 B 125,1,20 C 125,31,20 D 125.534,2,20 5.设有如下程序段,下面描述中正确的是()。 int k=10; while(k=0) k=k-1; A 循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次 6.以下程序的输出结果为()。 int i; void prt( ) { for(i=5;i<8;i++) printf("%c",'*'); printf("\t"); } main( ) { for(i=5;i<=8;i++) prt( ); } A *** B *** *** *** *** C *** *** D * * * 7.在C语言程序中,以下说法正确的是()。 A函数的定义可以嵌套,但函数的调用不可以嵌套 B函数的定义不可以嵌套,但函数的调用可以嵌套 C函数的定义和函数的调用都不可以嵌套 D函数的定义和函数的调用都可以嵌套 8.以下函数调用语句中含有()个实参。 func((e1,e2),(e3,e4,e5)); A 2 B 3 C 5 D 语法错误 9.以下程序的输出结果为()。 #define ADD(x) x*x main( ) { int a=4,b=6,c=7,d=ADD(a+b)*c;

江苏大学大一c语言期末复习题汇总

选择题 1.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D._ok 2.请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 3.不属于C语言关键字的是()。 A.int B.break C.while D.character 4.以下不能定义为用户标示符的是()。 A.scanf B.V oid C._3com_ D.int 5.C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 6.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 7.以下选项中,合法的用户标识符是()。 A.long B._2abc C.3dmax D.A.dat 8.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示 的字符常量’\101’是()。 A.字符A B.字符a C.字符c D.非法的常量 9.以下选项中,正确的字符常量是()。 A.”F”B.’\\’’C.’W’D.’’ 10.下列变量定义中合法的是 A.short _a=1-.le-1; B.double b=1+5e2.5; C.long do=0xfdaL; D.float 2_and=1-e-3; 11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 12.下列运算符中优先级最高的是()。 A.< B.&& C.+ D.!= 13.判断char型变量s是否为小写字母的正确表达式是()。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’) C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s) 14.已知x=45, y=’a’, z=0; 则表达式(x>=z && y<’z’ || !y)的值是()。 A.0 B.语法错 C.1 D.“假”

单片机C语言程序设计师试题及答案

单片机C语言程序设计师试题 一、填空题 1、设X=5AH,Y=36H,则X与Y“或”运算为_________,X与Y的“异或”运算为________。 2、若机器的字长为8位,X=17,Y=35,则X+Y=_______,X-Y=_______(要求结果写出二进制形式)。 3、单片机的复位操作是__________(高电平/低电平),单片机复位后,堆栈指针SP的值是________。 4、单片机中,常用作地址锁存器的芯片是______________,常用作地址译码器芯片是_________________。 5、若选择内部程序存储器,应该设置为____________(高电平/低电平),那么,PSEN信号的处理方式为__________________。 6、单片机程序的入口地址是______________,外部中断1的入口地址是_______________。 7、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为_________,机器周期为_______________。 8、外围扩展芯片的选择方法有两种,它们分别是__________________和_______________。 9、单片机的内部RAM区中,可以位寻址的地址范围是__________________,特殊功能寄存器中,可位寻址的地址是____________________。 10、子程序返回指令是________,中断子程序返回指令是_______。 11、8051单片机的存储器的最大特点是____________________与____________________分开编址。 12、8051最多可以有_______个并行输入输出口,最少也可以有_______个并行口。 13、_______是C语言的基本单位。 14、串行口方式2接收到的第9位数据送_______寄存器的_______位中保存。 15、MCS-51内部提供_______个可编程的_______位定时/计数器,定时器有_______种工作方式。 16、一个函数由两部分组成,即______________和______________。 17、串行口方式3发送的第9位数据要事先写入___________寄存器的___________位。 18、利用8155H可以扩展___________个并行口,___________个RAM单元。 19、C语言中输入和输出操作是由库函数___________和___________等函数来完成。 二、选择题 1、C语言中最简单的数据类型包括(b )。 A、整型、实型、逻辑型 B、整型、实型、字符型 C、整型、字符型、逻辑型 D、整型、实型、逻辑型、字符型 2、当MCS-51单片机接有外部存储器,P2口可作为( c )。 A、数据输入口 B、数据的输出口 C、准双向输入/输出口 D、输出高8位地址 3、下列描述中正确的是( d )。 A、程序就是软件 B、软件开发不受计算机系统的限制 C、软件既是逻辑实体,又是物理实体 D、软件是程序、数据与相关文档的集合 4、下列计算机语言中,CPU能直接识别的是( d )。 A、自然语言 B、高级语言 C、汇编语言 D、机器语言 5、MCS-5l单片机的堆栈区是设置在( c )中。

单片机C语言(非常通俗易懂)

单片机C语言(非常通俗易懂) (一) 相信很多爱好电子的朋友,对单片机这个词应该都不会陌生了吧。不过有些朋友可能只听说他叫单片机,他的全称是什么也许并不太清楚, 更不用说他的英文全称和简称了。单片机是一块在集成电路芯片上集成了一台有一定规模的微型计算机。简称为:单片微型计算机或单片机 (Single Chip Computer)。单片机的应用到处可见,应用领域广泛,主要应用在智能仪表、实时控制、通信、家电等方面。不过这一切都没 什么关系,因为我(当然也包括任何人)都是从不知道转变成知道的,再转变成精通的。现在我只想把我学习单片机的经历,详细地讲叙给大 家听听,可能有些大虾会笑话我,想:那么简单的东西还在这里卖弄。但是你错了,我只是把我个人学习的经历讲述一遍而已,仅仅对那些想 学习单片机,但又找不到好方法或者途径的朋友,提供一个帮助,使他们在学习过程中,尽量少走些弯路而已! 首先,你必须有学习单片机的热情,不是说今天去图书馆看了一个下午关于单片机的书,而明天玩上半天,后天就不知道那个本书在讲什 么东西了。还是先说说我吧,我从大二的第一个学期期末的时候才开始接触单片机,但在这之前,正如上面所说的:我知道有种芯片叫单片机, 但是具体长成什么样子,却一点也不知道!看到这里很多朋友一定会忍不住发笑。嘿嘿,你可千万别笑,有些大四毕业的人也同样不知道单片 机长成什么样子呢!而我对单片机的痴迷更是常人所不能想象的地步,大二的期末考试,我全放弃了复习,每当室友拿着书在埋头复习的时候, 我却捧着自己从图书馆借的单片机书在那看,虽然有很多不懂,但是我还是坚持了下来,当时我就想过,为了单片机值不值得我这样去付出, 或许这也是在一些三流学校的好处吧,考试挂科后,明年开学交上几十元一门的补考费,应该大部分都能过了。于是,我横下一条心,坚持看 我的单片机书和资料。 当你明白了单片机是这么一回事的时候,显而易见的问题出来了:我要选择那种语言为单片机编写程序呢?这个问题,困扰了我好久。具 体选择C51还是A51呢?汇编在我们大二之前并没有开过课,虽然看着人家的讲解,很容易明白单片机的每一时刻的具体工作情况,但是一合上 书或者资料,自己却什么也不知道了,根本不用说自己写程序了。于是,我最终还是决定学C51,毕竟C51和我们课上讲的C语言,有些类似, 编程的思想可以说是相通的。而且C51还有更大的优点就是编写大程序时的优越性更不言而喻,当然在那时,我并没有想的那么深远,C51的特 点,还是在后来的实践过程中,渐渐体会到的!朋友如果你选择了C51,那么请继续往下看,如果你选择了A51,那么你可以不要看了!因为下面讲 的全是C方面的,完全在浪费你的时间! 呵呵 ^_^ 第二,既然你想学好单片机,你必须得舍得花钱,如果不买些芯片回来自己动手焊焊拆拆的(但是在后期会介绍给大家一个很好用的硬件 仿真软件,并不需要你用实验板和仿真器了,直接在你的PC上完成,但是软件毕竟是软件,从某个特定的意义上来说是并不能代替硬件的),即使

大一上学期C语言期末复习总结和模拟试题带答案

易错点 C语言中易犯的错误 对初学C语言的人来说,经常会出一些连自己都不知道错在哪里的错误.看着有错的程序,不知该如何改起,一些C编程时常犯的错误,写给各位学员以供参考. ******************************** ******************************** ************************ 1.书写标识符时,忽略了大小写字母的区别. main() { int a=5; printf("%d",A); } 编译程序把a和A认为是两个不同的变量名,而显示出错信息. C认为大写字母和小写字母是两个不同的字符.习惯上,符号常量 名用大写,变量名用小写表示,以增加可读性. ******************************** ******************************** ************************ 2.忽略了变量的类型,进行了不合法的运算. main() { float a,b; printf("%d",a%b); } %是求余运算,得到a/b的整余数.整型变量a和b可以进行求余运算,而实型变量则不允许进行"求余"运算. ******************************** ******************************** ************************ 3.将字符常量与字符串常量混淆. char c; c="a"; 在这里就混淆了字符常量与字符串常量,字符常量是由一对单 引号括起来的单个字符,字符串常量是一对双引号括起来的字符序 列.C规定以"\"作字符串结束标志,它是由系统自动加上的,所 以字符串"a"实际上包含两个字符:'a'和'\',而把它赋给一 个字符变量是不行的. ******************************** ******************************** ************************ 4.忽略了"="与"=="的区别. 在许多高级语言中,用"="符号作为关系运算符"等于". 如在BASIC程序中可以写 if (a=3) then … 但C语言中,"="是赋值运算符,"=="是关系运算符.如: if (a==3) a=b; 前者是进行比较,a是否和3相等,后

51单片机C语言程序设计复习资料

2013-2014学年上期51单片机C语言程序设计重修复习提纲考试方式:闭卷考试。 考试题型: 填空题(每空1分,共18分);单项选择题(每空2分,共18分);问答及计算题(每题4分,共16分);编程及程序阅读题(5小题,共48分)。 考试分数: 卷面成绩70%+平时成绩15%+实验成绩15%,未缺席、无课堂违纪、作业全交且认真完成的同学平时成绩可获得满分,缺席一次平时成绩扣30分,实验好评次数3次以上且实验报告全优的同学实验成绩可得满分,实验缺席一次扣30分。缺席实验和旷课共3次以上者,无考试资格。 考试时间: 18周周一(12月30日)下午14:00:16:00,考试地点:具体考室另行通知希望大家认真复习,认真听讲,不懂就问,考试成绩不及格允许查卷,如查卷卷面批阅无误成绩不做更改。 编程题为实验或实验类似的题目有3题,其余2题也取自课堂讲授例题,请务必认真复习。第一章单片机概述及单片机知识回顾 掌握什么是单片机、单片机的应用、常见单片机类型、十进制、十六进制、二进制数制转换知识。掌握单片机的硬件组成、CPU的结构、程序计数器PC的功能、存储器结构、机器周期的计算、会画出单片机的最小系统电路图及回答单片机最小系统的组成。 第二章C51语言程序设计基础(本章填空题和选择题比重较大请务必认真复习)掌握C51语言进行软件开发与汇编语言相比的优点、掌握C51的数据类型、特殊功能位的定义、C51的基本运算(位运算重点复习)、数组的定义、C51的结构及函数。 第三章AT89S51片内并行端口及编程(本章有编程题) 掌握P0-P3并行端口的特点,会开关量检测及流水灯程序的编程。 第四章AT89S51单片机的中断系统(本章有编程题) 掌握中断系统的结构、中断请求响应被满足的条件、外部中断的触发选择方式、外部中断的使用与编程。 第五章AT89S51单片机的定时器/计数器(本章有编程器) 掌握定时器的结构,TOMD及TCON的使用,定时器方式0和方式1的特点、会计算定时器初值,会用定时器中断产生PWM波形,会用定时器对外部事件进行计数。 第六章AT89S51单片机的串行口(本章有计算题) 掌握串行通信的基础知识(课本没有的内容请参照课堂讲授笔记或PPT)、串行口的四种工作方式的特点、会计算奇偶校验码、会根据波特率计算T1的初值。 第七章AT89S51单片机与输入/输出外设接口(本章有编程题) 掌握数码管动态显示的原理、掌握矩阵式键盘的原理与编程(矩阵键盘编程必考,但不会考4X4键盘)。 第八章AT89S51单片机与D/A与A/D转换器的接口(本章有编程题) 掌握AD与DA转换的接口、ADC和DAC的技术指标、常用AD和DA转换器。掌握ADC0809和TLC2543的使用与编程(2器件其中之一有编程题)。 第九章AT89S51单片机应用系统与调试(本章有编程题) 掌握单片机应用系统的软件抗干扰方法。

《单片机的C语言程序设计与运用(第2版)》期末复习题及答案2

第四章 中断类 例4-1 P104 假设外部中断0和外部中断1均为下降沿触发,当外部 中断0发生时,P0端口的电平反向,当外部中断1发生 时,P1端口的电平反向。 #include void IS0(void) interrupt 0 { P0=~P0;} //P0端口反向 void IS1(void) interrupt 2 { P1=~P1;} //P1端口反向 void main( )

{ P0=0x00; P1=0xFF; IT0=1; IT1=1; EX0=1; EX1=1; EA=1; while(1); } 【例4-9】外部中断示例 在本实例中,首先通过P1.7口点亮发光二极管D1,然后外部输入一脉冲串,则发光二极管D1亮、暗交替。 #include sbit P1_7=P1^7; void interrupt0( ) interrupt 0 using 2 //外部中断0 { P1_7=!P1_7;} void main( )

{ EA=1; //开中断 IT0=1; //外部中断0脉冲触发 EX0=1; //外部中断0 P1_7=0; do{ }while(1); } 如果有3个脉冲,则灯亮、暗交替一次,可如下面编程:#include Sbit P17=P1^7; unsigned char i=3; void main( ) { EA=1; IT0=1; EX0=1; P17=0; do{ }while(1); } void interrupt0( ) interrupt 0 { i=i-1; if(i==0) { P17=!P17; i=3; } } 【例4-10】如图4-18所示,8只LED阴极接至单片机P0口,两开关

相关文档
最新文档