河北2018年专接本计算机卷A真题

普通专升本 责任编辑:宋丽丽 2021-12-21

摘要:本文是河北2018年专接本考试计算机科学与技术/软件工程/网络工程/物联网工程卷A真题,有打算报考2022年河北专升本的考生可以一起来看看,供大家报考参考,下面是具体内容。

河北省 2018 年普通高校专科接本科教育选拔考试计算机科学与技术/软件工程/网络工程/物联网工程专业试卷A

第一部分:C 语言程序设计(满分 150 分)

一、单项选择题(本大题共 20 小题,每小题 2 分,共 40 分。在每小题给出的四个备选项中,选出一个正确的答案,请将选定的答案填涂在答题纸的相应位置上。)

1. 下列关于 C 语言程序结构的说法中,不正确的是( )。

A.一个程序由一个或多个源程序文件组成B.函数是 C 程序的主要组成部分

C.程序总是从 main 函数开始执行的

D.C 语言本身提供了许多输入输出语句

2. 在计算机高级语言中,用来对变量、符号常量名、函数、数组、类型等命名的有效字符序统称为标识符,下列选项中都为正确标识符的是( )。

A.M.D.John, _abc B.3sum, a123

C._total, abc321 D.$123, bb$

3. 在 C 语言中,语句 printf("abc123\rdef"); 执行后屏幕上的显示结果为( )。

A.abc123 B.abc123def

C.def123 D.def

4. 已知 x 与 y 均为 float 类型变量,使用 scanf("x=%f,y=%f",&x,&y) 输入时,要使 x 的值为 1.2,y 的值为 3.4,正确的输入为( )。

A.1.2,3.4 B.x=1.2 y=3.4

C.x=1.2,y=3.4 D.1.2 3.4

5. 已知整型变量 m,n,a,b,c,d 的值都是 0,则执行 (m=a==b) || (n=c==d); 后 m 与 n 的值分别为( )。

A.1,1 B.0,0

C.0,1 D.1,0

6. 已知整型变量 a 的值为 33,则语句 printf("%d,%x,%o", a, a, a); 执行后的输出结果为

( )。

A.33,33,33 B.33,21,41

C.33,33,41 D.33,21,21

7. 已知整型变量 a,则与 if(!a) 不等价的是( )。

A.if(a==0) B.if(a!=0)

C.if(!(a!=0)) D.if(0==a)

8.已知a=1,b=2,c=3,d=4,x=5, 则语句 x=(a>b?a:c<d?c:d); p="" )。

7.1 B.3

C.2 D.4

9. 设有语句 int a=3; 则执行了 a*=a+=a-2; 后 a 的值为( )。

A.3 B.4

C.16 D.9

10. 下列程序段运行的结果为( )。

int m,x=3,y=4,z=5; if(x>y) m=x;

if(y

printf("%d",m);

A.3 B.4

C.5 D.0

11. 有以下程序段,则叙述正确的是( )。

int a=5;

do

{ a-=2; }while(a>0);

A.循环语句执行了一次 B.循环语句一次也不执行

C.循环语句执行了两次 D.循环语句执行了三次12.声明外部变量的关键字为( )。

A.extern B.register

C.auto D.static

13. 定义数组的语句为:int a[10]={2,0,3,4}; 以下结果不为 0 的是( )。

A.a[1] B.a[1]+a[4]

C.a[9]+a[7] D.a[0]+a[1]

14. 语句 printf("%s", "shi\0jia\0zhuang"); 执行后的输出结果为( )。

A.shi B.jia

C.shi jia zhuang D.zhuang

15. 有以下宏定义、变量定义: #define FF a+a

int a=3, x=9;

语句 x=FF*FF; 执行完后 x 的值为( )。

A.36 B.15

C.9 D.无定值

16. 下列语句中,能够使字符数组正确初始化的是( )。

A.char a[2][5]={ 'He', 'Bei'}; B.char a[2][]={"He","Bei"};

C.char a[][5]={ 'He', 'Bei'}; D.char a[][5]={"He","Bei"}; 17.已知 int a=20; 则语句 a=a>>2;执行后 a 的值为( )。

A.18 B.10

C.5 D.4

18. 若有定义 int a=5,b,*p=&a; 则下列语句中使 b 不为 5 的语句是( )。

A.b=*&a; B.b=*p;

C.b=a; D.b=*a;

19. 若有定义 int a[10],*q=a; 则对数组元素的正确引用为( )。

A.*(q+3) B.q[a]

C.a[q] D.q+10

20. 当说明一个共用体变量时,系统分配给它的内存是( )。

A.第一个成员所需内存空间 B.各成员所需内存空间之和 C.各成员所需内存空间的最大值 D.最后一个成员所需内存空间

二、程序阅读题(本大题共 5 小题,每小题 6 分,共 30 分。请将程序的运行结果填写在答题纸的相应位置上。)

1.__________

#include

int main( )

{

int a=2, b=1; switch(a+1)

{ case 2: b=b+2; break; case 3: b=b*3;

case 4: b=b*4; break; case 5: b=b+5;

}

printf("b=%d", b); return 0;

}

2.______________________

#includeint f(int n, int x)

{

if(n==0) return 1; if(n==1) return x;

return 2*f(n-1,x)+3*f(n-2,x);

}

int main()

{ printf("%d",f(3,2)); return 0; } 

3.______________

#includeint fun()

{

static int a=6; int b=5;

a/=2; --b; return (a+b);

}

int main()

{

int i,sum=0;

for(i=1;i<=3; i++) sum += fun(); printf("sum=%d",sum); return 0;

}

4. _____________________

#include

#include

void sss(char *p, char *q)

{

while(*p) p++;

while(*q) { *p=*q; p++; q++; }

*p=’\0’;

}

int main( )

{ char s1[80]={"Tang"}, s2[80]={"Shan"}; sss(s2,s1);

sss(s1,s2);

puts(s1); return 0;

}

5. _______________

#include

int main()

{ int sum=0, i, j;

for(i=1; i<=10000; i++)

{

for(j=1; j

}

printf("sum=%d",sum); return 0;

}

三、程序填空题(本大题共 3 小题,每空 5 分,共 35 分。请在答题纸相应题号的位置上作答。)

1. 下面程序的功能是:从键盘上输入一个字符,判断它是否为小写字母,如果是,将它 转换为大写字母;如果不是则不转换。请填空。

#includeint main()

{ char ch; ch=getchar();

ch=( ① __________) ? ②_____________ : ch ; 

putchar(ch); return 0 ;

}

2. 下面函数的功能是对 n 个整数利用起泡法(冒泡法)进行由大到小排序,请填空。

void bubblesort(int a[], int n)

{ int i,j,t; for(i=0; i<n-1; p="" i++)

for(j=0; ①__________ ; j++) 

if( ②____________ )

{ t=a[j]; ③__________ ; a[j+1]=t; }

}

3. 下面程序的功能是利用指向结构体数组元素的指针对学生信息进行访问,请填空。

#include 

struct Student { char name[20]; int score; };

int main()

{

struct Student stu[40], *p; int i;

for(i=0; i<40; i++)

①_____________ ; //以“LiMing 93”的格式输入学生信息

for(p=stu; p<stu+40; p="" p++)

//利用指针 p 以“LiMing,93”的格式输出每一位学生信息并换行

② _________;

}

四、程序设计题(本大题共 3 小题,每小题 15 分,共 45 分。请在答题纸相应题号的位置上作答。)

1. 编写程序,从键盘上输入三角形的三个边长(实数),判断这三个边能否构成三角形(构成三角形的条件为:任意两边之和大于第三边),如果能构成三角形,则计算三角形的面积并输出(保留 2 位小数);如果不能构成三角形,则输出“False”字符串信息。假设三角形的边长分别为a、b、c,则三角形的面积为image.png,其中 s 的值为 (a+b+c)/2 。

(1)输入信息为 1.1 2.2 4.4 时,输出 False

(2)输入信息为 3.0 4.0 5.0 时,输出 6.00

2. 请根据以下累加公式计算p的近似值并输出,要求累加到某项的值小于 10-5 时为止。

累加公式

3. 某大学正在举行歌唱比赛,现有 10 位评委为学生评分,评分采用百分制。按如下规则计算学生的最终得分:先计算评委的分数之和,减去分数中的最高分与最低分,再除以 8 得到学生的成绩。请输入 1 位同学的 10 个分数,计算和输出学生的最终得分。下面给出了 main()函数,请将其他函数补充完整,即写出 input()、ssum()、smax()与 smin()函数的定义。

#includeint 

main()

{ int score[10],max,min,sum;

float aver;

input(score, 10); //输入 10 个评委的评分

sum=ssum(score,10); //计算 10 个评委的评分之和

max=smax(score,10); //计算最高分

min=smin(score,10); //计算最低分

aver=(sum-max-min)*1.0/(10-2); //计算学生的最终得分

printf("%f\n",aver); //输出学生的最终得分

}

第二部分:微机原理与接口(含汇编语言)(满分150分)

一、单项选择题(本大题共15小题,每小题3分,共45分。在每小题给出的四个备选项中, 选出一个正确的答案,请将选定的答案填涂在答题纸的相应位置上。

1.8086CPU的最大内存地址空间是( )

A.1KB)。

B.1MB

C.256MBD.64KB

2.8086CPU 复位后的启动地址是()。

A.00000HB.FFFFFH

C.FFFF0HD.11111H

3. 在 8086CPU 中,IP 寄存器的位宽是( )。

A.8 位 B.32 位

C.24 位 D.16 位

4. 当定时器/计数器 8253 的 A1、A0 引脚分别给定高电平和低电平时,选定的是和( ) 相关的寄存器。

A.计数器 0 B.计数器 1

C.计数器 2 D.计数器 3

5. 若 SP=2000H,那么执行完 PUSH BX 指令后,SP = ( )。

A.1FFEH B.1FFFH

C.2001H D.2002H

6. 接口电路 8255A( )工作方式可以实现双向传输。

A.方式 0 B.方式 1

C.方式 2 D.都不能

7. LOOP 指令执行时,隐含的寄存器是( )。

A.SP B.BX

C.DI D.CX

8.8086CPU 最小可寻址单位是( )。

A.比特 B.字节

C.双字 D.四字

9. 用来定义双字的伪指令是( )。

A.DQ B.DW

C.DD D.DB

10. 当 EPROM 擦除后,每个单元的内容为( )。

A.00H B.CCH

C.AAH D.FFH

11. 需要定时刷新的存储器是( )。

A.SRAM B.DRAM

C.EPROM D.EEPROM

12. 循环移位指令 ROR 的作用是( )。

A.将操作数右移,最低位移入最高位和 CF。B.将操作数右移,最低位移入最高位。

C. 将操作数右移,最低位移入 CF,CF 移入最高位。

D. 将操作数右移,最低位移入 CF,最高位移入 0。

13.8086 中断向量表的容量大小为( )。

A.4KB B.2KB

C.8KB D.1KB

14.8086 写 I/O 总线周期的控制信号,一直保持低电平有效的是( )。

A.M/IO

B.DT/R

C.DEN 

D.WR

15.8259A 是( )。

A.可编程 DMA 控制器 B.可编程中断控制器

C.可编程定时/计数器 D.总线控制器

二、填空题(本大题共 14 小题,每空 2 分,共 30 分。请在答题纸相应题号的位置上作答。)

1. 计算机软件通常分为_________和_______两大类。

2. 微型计算机硬件主要由 ____________、存储器、输入输出设备和系统总线构成。

3.8086 微处理器在访问四个当前段时,堆栈段的偏移量由_____________提供。

4.8086微处理器访问存储器时,物理地址是由段地址和偏移地址共同决定的,CPU中 负责生成物理地址的部件称作____________ 。

5.已知 X=187.875,则 X=________B。

6.256K×8 的 RAM 芯片需要__________条地址线。

7. 通常汇编语言一条指令包括__________和操作数两部分。

8. 指令 MOV AL, [BX]的源操作数寻址方式为_____________。

9.8259A 的初始化命令字共有________个,必须按顺序全部或部分执行。

10.为8253的计数器提供的脉冲输入(CLK)频率为1KHz,要实现500ms的定时中断,则 计数器计数初值应该是__________。

11.8086微处理器运算器中的算术逻辑部件ALU用来对数据进行算术、逻辑运算,运算结 果的一些特征由_________来存放。

12. 有如下程序段

MOV BX, 2100H 

MOV AX, 18B6H 

MOV [BX], AL

执行完成后内存地址为2100H单元的内容是_________ 。

13. 有如下程序段

MOV AX, 1A55H

MOV CX, 03H 

L1: ADD AL, 02H

LOOP L1

执行完成后寄存器AX的值是_________ 。

14. 已知内存一存储区域如右图所示,如下程序段

MOV BX, 1814H

MOV AX, [BX] 内存一存储区域

MOV BX, 1811H 

MOV BH, [BX] 

SUB AH, BH 

XOR AH, 0FH

执行完成后,AH = _________。

三、简答题(本大题共3小题,每小题10分,共30分。请在答题纸相应题号的位置上作答。)

1. 简述 8086 微机系统中硬件中断和软件中断的区别。

2. 在 8086 微处理器构成的系统中,什么是存储器的规则字和非规则字?8086 微处理器对一个规则字和一个非规则字读写时,有什么差别?

3. ROM、PROM、EPROM 和 EEPROM 在使用上各有什么特点?

四、应用题(本大题共 3 小题,每小题 15 分,共 45 分。请在答题纸相应题号的位置上作答。)

1. 自内存 0500H 单元开始,保存有 10 个无符号字节类型的数据,分别为 45H、89H、11H、26H、8AH、9FH、78H、0AAH、18H、3EH,请编写程序,求这 10 个数之和。要求:⑴用 8 位二进制数运算方式进行计算。⑵结果用两个字节表示。⑶把结果存放到 050AH 和050BH 单元,且高字节放在 050BH 单元。

2. 有如下程序段:

 MOV CX, 1

MOV BX, 2 AGAIN:

MOV AL, BL I

NC BL 

MUL BL

 ADD CX, AX

CMP AX, 002AH 

JB AGAIN

①该程序段完成的功能用算术表达式如何表示。

②写出程序完成后,AX 的值是多少?

③写出程序完成后,BX 的值是多少?

④写出程序完成后,CX 的值是多少?

3. 请利用下图给定的集成电路(图中的集成电路为示意图,只包含题目中用到的引脚),试连接其地址总线、数据总线和控制总线,使其构成 64K×8 位的全地址译码存储器系统, 并指出 IC6 和 IC7 存储器芯片的地址范围。

说明及提示:

1.IC1 为 8086 微处理器芯片。

2.IC2、IC3、IC4 为锁存器电路,其 DI0 到 DI7 为输入引脚,DO0 到 DO7 为输出引脚。STB 为锁存(选通)信号。

3.IC6、IC7 为 32K×8 的存储器,A0~A14 是它的地址输入端,D0~D7 是它的数据输出端;CE 为片选输入端,低电平有效;WE 为写使能端,低电平有效;OE 为输出使能端(读使能),低电平有效。

4.IC5 为 3-8 译码器,G1、G2A、G2B 为使能输入端,A2 为输入端的高位,A0 为输入端的低位。

5.图中给出了一部分连接线,不要改动这部分已经连接好的线路。 

6. 图中给出部分辅助线路,请尽量利用辅助线路进行连线。 

集成电路图

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

普通专升本备考资料免费领取

去领取

专注在线职业教育23年

项目管理

信息系统项目管理师

厂商认证

信息系统项目管理师

信息系统项目管理师