当前位置:文档之家› 单片机c语言期末考试题精编WORD版

单片机c语言期末考试题精编WORD版

单片机c语言期末考试题精编WORD版
单片机c语言期末考试题精编WORD版

单片机c语言期末考试题精编W O R D版

IBM system office room 【A0816H-A0912AAAHH-GX8Q8-GNTHHJ8】

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

一、单项选择题:40 分

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

A、128M

B、128K

C、128

D、64

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

A、sfr

B、BIT

C、Char

D、integer r

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

A、00H~1FH

B、20H~2FH

C、30H~7FH

D、80H~FFH

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

A、data

B、bdata

C、idata

D、xdata

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

A、下降沿

B、上升沿

C、低电平

D、高电平

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

A、P1&=0x0f

B、P1|=0x0f

C、P1^=0x0f

D、P1=~P1

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

A、1

B、2

C、3

D、4

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

A、15

B、14

C、13

D、12

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

A、外部中断1

B、外部中断0

C、定时/计数器1

D、定时/计数器0

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

A、interrupt

B、unsigned

C、using

D、reentrant

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、线反转法识别有效按键时,如果读入的列线值不全为1,则说明()

A、有键被按下

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

C、一定有多个键被按下

D、没有键被按下

18、DS18B20的总线方式是()

A、SPI

B、I2C

C、ONE—WIRE

D、SP2

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

A、CAN

B、SPI

C、I2C

D、PWM

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

A、1个

B、1串

C、 1波特

D、1帧

二、判断题:10分

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

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、串口中断请求标志必须由软件清除。( )

三、多项选择题:10分

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

A、机器语言

B、汇编语言

C、BASIC语言

D、C语言

E、PASCAL语言

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

A、通用寄存器区

B、可位寻址区

C、用户RAM区

D、SFR

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

A、bit

B、unsigned char

C、unsigned int

D、int

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

A、bit变量不能声明为指针

B、不能定义有bit数组

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

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

5、存储器模式有()

A、xdata

B、small

C、code

D、large

四、填空20分

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

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

____________________。

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

______________。

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

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

6、LCD1602常用的写子函数有 ______________和_____ __________两种。

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

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

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

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

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

____________________________。

五、综合应用20分

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

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

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

一、单项选择题:40 分

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

A、128M

B、128K

C、128

D、64

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

A、sfr

B、BIT

C、Char

D、integer r

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

A、00H~1FH

B、20H~2FH

C、30H~7FH

D、80H~FFH

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

A、data

B、bdata

C、idata

D、xdata

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

A、下降沿

B、上升沿

C、低电平

D、高电平

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

A、P1&=0x0f

B、P1|=0x0f

C、P1^=0x0f

D、P1=~P1

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

A、1

B、2

C、3

D、4

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

A、15

B、14

C、13

D、12

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

A、外部中断1

B、外部中断0

C、定时/计数器1

D、定时/计数器0

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

A、interrupt

B、unsigned

C、using

D、reentrant

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、线反转法识别有效按键时,如果读入的列线值不全为1,则说明()

A、有键被按下

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

C、一定有多个键被按下

D、没有键被按下

18、DS18B20的总线方式是()

A、SPI

B、I2C

C、ONE—WIRE

D、SP2

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

A、CAN

B、SPI

C、I2C

D、PWM

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

A、1个

B、1串

C、 1波特

D、1帧

二、判断题:10分

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

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、串口中断请求标志必须由软件清除。( )

三、多项选择题:10分

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

A、机器语言

B、汇编语言

C、BASIC语言

D、C语言

E、PASCAL语言

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

A、通用寄存器区

B、可位寻址区

C、用户RAM区

D、SFR

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

A、bit

B、unsigned char

C、unsigned int

D、int

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

A、bit变量不能声明为指针

B、不能定义有bit数组

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

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

5、存储器模式有()

A、xdata

B、small

C、code

D、large

四、填空20分

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

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

____________________。

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

______________。

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

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

6、LCD1602常用的写子函数有 ______________和_____ __________两种。

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

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

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

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

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

____________________________。

四、简答题20分

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

答:??

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

江苏大学大一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语言程序设计》期中考试试卷 课程编号:03402513试卷类型:A卷考试形式:笔试考试日期: 注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。4.草稿纸用试卷的背面。 一、单项选择题(1空1分,共20分) 1、C语言程序的基本结构是(【1】) 。 【1】 A) 函数 B) 语句 C) 字符 D) 程序行 2、一个C程序的执行是(【2】) 。 【2】A) 从本程序的主函数开始,到本程序的主函数结束 B)从本程序的第一个函数开始,到本程序的最后一个函数结束 C) 从本程序的主函数开始,到本程序的最后一个函数结束 D)从本程序的第一个函数开始,到本程序的主函数结束 3、下列四个叙述中,错误的是(【3】) 。 【3】 A) 一个C源程序必须有且只能有一个主函数 B) 一个C源程序可以含一个或多个子函数 C) 在C源程序中注释说明必须位于语句之后 D) C源程序的基本结构是函数 4、下面不属于C语言保留字的是(【4】) 。 【4】 A) short B) ELSE C) extern D) for 5、下列四个叙述中,正确的是(【5】) 。 【5】 A) 库函数也是C语言本身的组成部分 B) C语言中的输入输出操作是由相应语句完成的 C) 库函数是C编译系统提供的功能函数 D) 标题文件(头文件)可以在程序的函数内部调用 6、下列四组数据类型中,C语言允许的一组是(【6】)。 【6】 A) 整型、实型、逻辑型 B) 整型、实型、字符型 C) 整型、双精度型、布尔型 D) 整型、实型、复型 7、在C语言中不同数据类型的的长度是(【7】)。 【7】 A) 固定的 B) 由用户自己定义的 C) 任意的 D) 与机器字长有关

大一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语言期末考试习题集(带详解答案)

一、单项选择题 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语言期末考试试题

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语言期末复习题汇总

选择题 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语言期末考试题 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语言期末复习总结和模拟试题带答案

易错点 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相等,后

上海海事大学(C语言期末)上机题库

试卷编号:9688 所属语言:C语言 试卷方案:期中考试 试卷总分:100分 共有题型:5种 一、填空共15题(共计15分) 第1题(1.0分)题号:528 设a、b、c为整型数, 且a=2、b=3、c=4, 则执行完以下语句: a*=16+(b++)-(++c); 后,a的值是【1】. 答案: =======(答案1)======= 28 第2题(1.0分)题号:78 已知 i=5;写出语句 i+=012; 执行后整型变量 i 的十进制值是【1】. 答案: =======(答案1)======= 15 第3题(1.0分)题号:510 若a是int型变量,则计算表达式 a=25/3%3 后a的值为【1】. 答案: =======(答案1)======= 2 第4题(1.0分)题号:437 以下程序的输出结果为【1】, #include "stdio.h" main(){int a=010,j=10;printf("%d,%d\n",++a,j--);}

答案: =======(答案1)======= 9,10 第5题(1.0分)题号:431 执行下面两个语句,输出的结果是【1】,char c1=97,c2=98;printf("%d %c",c1,c2); 答案: =======(答案1)======= 97 b *第6题(1.0分)题号:293 getchar()函数只能接收一个【1】. 答案: =======(答案1)======= 字符 第7题(1.0分)题号:440 设a=3,b=4,c=5,则表达式!(a+b)+c-1&&b+c/2的值为【1】. 答案: =======(答案1)======= 1 第8题(1.0分)题号:95 已知a=13,b=6, a&&b的十进制数值为【1】. 答案: =======(答案1)======= 1 第9题(1.0分)题号:306 当a=1,b=2,c=3时,执行以下程序段后b=【1】.

大学生C语言期末考试必做题库

C语言

第一题 在屏幕上显示一个短句“Programming in C is fun!” #include int main() { printf("Programming in C is fun!\n"); return 0; } 第二题 在屏幕上显示如下网格。 +---+---+ | | | | | | +---+---+ #include int main( ) { printf("+---+---+\n| | |\n| | |\n+---+---+\n"); return 0; } 第三题 在屏幕上显示一条语句“This is a C program.” #include int main() { printf("This is a C program.\n"); return 0; } 第四题 输出如下图形: ********** very good! ********** #include int main( ) { printf("**********\nvery good!\n**********\n"); return 0; }

第一题求平方根(基础) 程序填空,不要改变与输入输出有关的语句。 输入1个实数x,计算并输出其平方根(保留1位小数)。 例:输入17输出The square root of 17.0 is 4.1 #include #include int main( ) { double x, root; scanf("%lf", &x); root=sqrt(x); printf("The square root of %0.1f is %0.1f\n", x, root); return 0; } 第二题计算一个三位数的个十百位之和 编写程序。 输入一个三位数(大于0),计算这个三位数的个位、十位、百位数字之和. 例如:输入:152输出:sum=8 #include #include int main() { int n,a,b,c,sum; scanf("%d",&n); a=n/100; b=n%100/10; c=n%10; sum=a+b+c; printf("sum=%d\n",sum); return 0; } 第三题(公共)求圆的周长、面积及圆球体积 程序填空,不要改变与输入输出有关的语句。 求以r为半径的圆周长c和圆面积s,再求以r为半径的圆球体积v。(已知r=3.67在程序中直接赋值,pi的值为3.1415926) 按照下列形式输出: printf("c=%f\ns=%f\nv=%f\n",c,s,v); #include int main( ) { double r,c,s,v,pi=3.1415926; r=3.67; c=2*pi*r;

大学C语言期末考试试题及答案

大学C语言期末考试试题 一选择题(7分,每小题0.5分) 1。C语言源程序的基本单位是()。 A 过程B函数C子程序D标识符 2.下列程序的输出结果是()。 main( ) { inta=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C0 D不确定值 3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是()。 A7 B8 C9 D 2 4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。 a=125.534;a=(int)125.521%4;a=5<<2; A125,31,1 B125,1,20 C 125,31,20D125.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 B3 C5 D语法错误 9.以下程序的输出结果为(). #defineADD(x)x*x main( ) {int a=4,b=6,c=7,d=ADD(a+b)*c; printf(”d=%d",d);

(精选)大学大一C语言程序设计期末考试试卷和答案

四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试 C 语言程序设计试卷 试卷A 答卷说明: 1、 本试卷共6页,答题纸3页,4个大题,35个小题,满分100分,120分钟完卷。 2、 闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上答案为准。 3、 本试卷适用于2011级1、2、3班。 一、 单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的 序号填在题干的括号内。每小题1分,共20分) 1、 在C 语言中,下列标识符中合法的是( ) A). -int B). in1_3 C). A_B!D D). const 2、 不属于C 语言基本数据类型的是( ) A). int B). union C). char D). unsigned 3、 下面是对宏定义的描述。不正确的是( ) A). 宏不存在类型问题,宏名无类型,它的参数也无类型 B). 宏替换不占用运行时间 C). 宏替换只是字符串的简单替代 D). 宏替换时先检查类型,类型一致时才可以替换 4、 C 语言中,″\\xfds ″在内存中占用的字节数是( ) A).3 B).4 C).5 D).6 5、 设int x;则执行printf(″%x \n″,~x^x);的结果是( ) A). ffffffff B). ff __________________学院__________级___________班 姓名_______________ 学号_______________ ………………………………(密)………………………………(封)………………………………(线)……………………………… 密 封 线 内 答 题 无 效

大一c语言期末试题及参考答案word版本

2004级信息学院《C语言设计》考试试题 一、判断下列语句或程序的对错。 10分√ 1 int x=y=z=’0’; (×) y,z没有定义 2 #include ; (×)不能有分号,#开头的结尾均不能有分号; 3 printf(“%s\n”,”c language”); (√) 4 float a[100]; int *p=a; (×)数据类型不匹配 5 char str[20]; 6 int data[4]={0,1,2,3,4}; (×)五个元素,但是只有四个单元 7 float x=1.45e+310L; (×)数值越界 8 int xyz-1=2; (×) 9 int x=‘\xae’ ; (√) 10 int *p,a[2][3] ; p=a ; (×)数据类型不匹配 二计算下列表达式的值 10分 设 unsigned int a=10,b=17,c=5,d=3; float f ; (1)f=b/c ( 3.0 ) (2)!(a+b)+c-1&&b+c/2 ( 1 ) (3)(a^b)+(c>>1+d) ( 0x1b ) (4)a+=b%=a=b ( 17 ) (5)a=2,b=a*++b ( 2 ) 三程序改错 10分 (1)求两个浮点数的平方和及平方差 #include float calculate (float x,float y,float *sub);添加函数原型声明 main () { float a,b; float add_reasult, sub_result; scanf (“%f,%f”,a,b); add_result=calculate(a,b,&sub_result); printf( “a*a+b*b=%d,a*a-b*b=%d\n”,add_result,sub_result); } float calculate (float x,float y,float *sub) 添加函数类型 { float *temp; 应该直接定义为变量float temp; sub=a*a-b*b ; *sub=a*a-b*b;

大学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; printf("d=%d",d); }

大一C语言期末考试试题

6.以下程序的输出结果为()。 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.以下程序的输出结果为()。 #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语言期末考试题4及答案

大学C语言期末考试题及答案(4) 1、定义了一维int型数组a[10]后,下面错误的引用是_____ 正确答案是:B a[0]=1; a[10]=2; a[0]=5*2; a[1]=a[2]*a[0]; 2、设有定义:int a=1, *p=&a; float b=2.0; char c='A'; ,以下不合法的运算是() 正确答案是:C *p++; a--; b++; c--; 3、若有定义:int x[10], *p=x;,则*(p+5)表示() 正确答案是:B 数组元素x[5]的地址 数组元素x[5]的值

数组元素x[6]的地址 数组元素x[6]的值 4、执行以下程序段后,y的值是()。int a[ ]={1, 3, 5, 7, 9} int x=0, y=1, *ptr; ptr=&a[1]; while (!x) { y+=*(ptr+x); x++; } 正确答案是:C 1 2 4 24 5、下面程序的运行结果是()。# include void select(char *s){ int i,j;char *t;t=s;for(i=0,j=0;*(t+i)!='\0';i++)if (*(t+i)>='0'&&*(t+i)<='9'){ *(s+j)=*(t+i);j++;} *(s+j)='\0 正确答案是:D HPw19 &17 HPw 19 &17 1917 6、对于下面语句描述不正确的为_____ struct Student { unsigned long id; char name[30]; char class[30]; }oStu1;

大学大一C语言程序设计期末考试试卷及标准答案

大学大一C语言程序设计期末考试试卷及答案

————————————————————————————————作者:————————————————————————————————日期:

四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试 C 语言程序设计试卷 试卷A 答卷说明: 1、 本试卷共6页,答题纸3页,4个大题,35个小题,满分100分,120分钟 完卷。 2、 闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上答案为准。 3、 本试卷适用于2011级1、2、3班。 题号 一 二 三 四 总分 总分人 分数 得分 评卷人 壱、 单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的 序号填在题干的括号内。每小题1分,共20分) 1、 在C 语言中,下列标识符中合法的是( ) A). -int B). in1_3 C). A_B!D D). const 2、 不属于C 语言基本数据类型的是( ) A). int B). union C). char D). unsigned 3、 下面是对宏定义的描述。不正确的是( ) A). 宏不存在类型问题,宏名无类型,它的参数也无类型 B). 宏替换不占用运行时间 C). 宏替换只是字符串的简单替代 D). 宏替换时先检查类型,类型一致时才可以替换 4、 C 语言中,″\\xfds″在内存中占用的字节数是( ) A).3 B).4 C).5 D).6 5、 设int x;则执行printf(″%x \n″,~x^x);的结果是( ) A). ffffffff B). ff C). 0 D). 1 6、 对于while 语句,错误的说法是( ) A).用条件控制循环体的执行次数 B).循环体至少要执行一次 C).循环体有可能一次也不执行 D).循环体中可以包含若干条语句 __________________学院__________级___________班 姓名_______________ 学号_______________ ………………………………(密)………………………………(封)………………………………(线)……………………………… 密 封 线 内 答 题 无 效

2019年大学C语言期末考试卷(带详解答案)

2019年大学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 )。

大学大一C语言程序设计期末考试试卷及答案

大学大一C语言程序设计期末考试试卷及答案费下载四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试 C语言程序设计试卷试卷A 答卷说明: 1、本试卷共6页~答题纸3页~4个大题~35个小题~满分100分~ 120分钟完卷。 2、闭卷考试~所有的答案都必须写在答题纸上~判卷以答题纸上答案 为准。 3、本试卷适用于2011级1、2、3班。 题号一二三四总分总分人 分数 得分评卷人 一、单项选择题(在每小题的四个备选答案中~选出一个正确答案~并将正确答案的 序号填在题干的括号内。每小题1分~共20分) 1、在C语言中,下列标识符中合法的是( ) A). -int B). in1_3 C). A_B!D D). const 2、不属于C语言基本数据类型的是( ) A). int B). union C). char D). unsigned 3、下面是对宏定义的描述。不正确的是( ) A). 宏不存在类型问题,宏名无类型,它的参数也无类型密封线内答题无效 B). 宏替换不占用运行时间

C). 宏替换只是字符串的简单替代 D). 宏替换时先检查类型,类型一致时才可以替换 4、 C语言中,″\\xfds″在内存中占用的字节数是( ) A).3 B).4 C).5 D).6 5、设int x;则执行printf(″%x\n″,~x^x);的结果是( ) __________________学院__________级___________班姓名_______________ 学号_______________ A). ffffffff B). ff C). 0 D). 1 ………………………………(密)………………………………(封)………………………………(线)……………………………… 6、对于while语句,错误的说法是( ) A).用条件控制循环体的执行次数 B).循环体至少要执行一次 计算机科学学院 C语言程序设计试卷A 第1页(共8页) C).循环体有可能一次也不执行 D).循环体中可以包含若干条语句 7、执行下列语句后输出的结果是( ) int a=8,b=7,c=6; if(ac){a=c;c=b;} printf("%d,%d,%d\n",a,b,c); A).6,7,7 B).6,7,8 C).8,7,6 D).8,7,8 8、设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( ) A).9,19 B).9,20 C).10,19 D).10,20 9、设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么( ) A).x数组的长度等于y数组的长度 B).x数组的长度大于y数组的长度 C).x数组的长度少于y数组的长度 D).x数组与y数组的存储区域相同 10、设int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )

大一c语言期末试题及参考答案

2004级信息学院《C 语言设计》考试试题 、判断下列语句或程序的对错。 10分 V main () { float a,b ; float add_reasult, sub_result ; scanf (“%f,%f ”,a,b) ; add_result=calculate(a,b,&sub_result) ; printf( “a*a+b*b=%d,a*a n ”,add_result,sub_result) } float calculate (float x,float 二 计算下列表达式的值 10分 设 unsigned int a=10,b=17,c=5,d=3; float f ; (1)f=b/c ( 3.0 ) (2)!(a+b)+c-1&&b+c/2 ( 1 ) (3)(aS)+(c?1+d) ( 0x1b ) (4)a+=b%=a=b ( 17 ) (5)a=2,b=a*++b ( 2 ) 三 程序改错 10分 1) 求两个浮点数的平方和及平方差 sub); 添加函数原型声明 1 int x=y=z=' 0'; 2 #include 号; 3 printf( “ %s n ”, ”c (X) y,z 没有定义 (X)不能有分号, language ”); (V) #开头的结尾均不能有分 4 float a[100]; int *p=a; X) 数据类型不匹配 5 char str[20]; 6 int data[4]={0,1,2,3,4}; 7 float x=1.45e+310L; 8 int xyz-1=2; 9 int x=‘ xae ' ; 10 int *p,a[2][3] ; p=a ; (X) (X)数值越界 五个元素,但是只有四个单元 (X) X) 数据类型不匹配 #include float calculate (float x,float y,float float *temp; 应该直接定义为变量 float temp;

相关主题
文本预览
相关文档 最新文档