北京大学计算概论期末上机考试1
2022年北京大学计算机科学与技术专业《操作系统》科目期末试卷A(有答案)
2022年北京大学计算机科学与技术专业《操作系统》科目期末试卷A(有答案)一、选择题1、若某文件系统索引节点(inode)中有直接地址项和间接地址项,则下列选项中,与单个文件长度无关的因素是().A.索引节点的总数B.间接地址索引的级数C.地址项的个数D.文件块大小2、磁盘高速缓存设在()中。
A.内存B.磁盘控制器C.CacheD.磁盘3、进程A和进程B通过共享缓冲区协作完成数据处理,该缓冲区支持多个进程同时进行读写操作。
进程A负责产生数据并放入缓冲区,进程B负责从缓冲区中取出数据并处理。
两个进程的制约关系为()。
A.互斥关系B.同步关系C.互斥与同步D.无制约关系4、在个交通繁忙的十字路口,每个方向只有一个车道,如果车辆只能向前直行,而不允许转弯和后退,并未采用任何方式进行交通管理。
下列叙述正确的是()。
A.该十字路口不会发生死锁,B.该十字路口定会发生死锁C.该上字路口可能会发生死锁,规定同时最多3个方向的车使用该十字路是最有效的方法D.该十字路口可能会发生死锁,规定南北方向的两个车队和东西方向的两个车队互斥使用十字路口是最有效的方法5、采用资源剥夺法可以解除死锁,还可以采用()方法解除死锁。
A.执行并行操作B.撤销进程C.拒绝分配新资源D.修改信号量6、下列关于页式存储说法中,正确的是()。
I.在页式存储管理中,若关闭TLB,则每当访问一条指令或存取一个操作数时都要访问两次内存II.页式存储管理不会产生内部碎片III.页式存储管理当中的页面是为用户所感知的IV.页式存储方式可以采用静态重定位A.仅I、II,IVB. 仅I、IVC. 仅ID.I、II、III、IV7、解决主存碎片问题较好的存储器管理方式是()A.可变分区B.分页管理C.分段管理D.单一连续分配8、列选项中,不可能在用户态发生的事件是()。
A.系统调用B.外部中断C.进程切换D.缺页9、假设4个作业到达系统的时刻和运行时间见表。
2021年北京大学数据科学与大数据技术专业《计算机组成原理》科目期末试卷A(有答案)
2021年北京大学数据科学与大数据技术专业《计算机组成原理》科目期末试卷A(有答案)一、选择题1、下列关于Cache和虚拟存储器的说法中,错误的有()。
I.当Cache失效(即不命中)时,处理器将会切换进程,以更新Cache中的内容II.当虚拟存储器失效(如缺页)时,处理器将会切换进程,以更新主存中的内容III.Cache 和虚拟存储器由硬件和OS共同实现,对应用程序员均是透明的IV.虚拟存储器的容量等于主存和辅存的容量之和A.I、IⅣB.Ⅲ、VC. I、Ⅱ、ⅢD. I、Ⅲ、Ⅳ2、若单译码方式的地址输入线为6,则译码输出线有()根,那么双译码方式有输出线()根。
A.64,16B.64,32C.32,16D.16,643、下列说法正确的是()。
A.当机器采用补码表示时,0有两种编码方式B.当机器采用原码表示时,0有两种编码方式C.当机器采用反码表示时,0有一种编码方式D.无论机器数采用何种码表示,0都有两种编码方式4、假设机器字长为8位(含两位符号位),若机器数DA日为补码,则算术左移一位和算术右移一位分别得()。
A.B4H EDHB.F4H 6DHC.B5H EDHD.B4H 6DH5、某机器字长为8位,采用原码表示法(其中一位为符号位),则机器数所能表示的范围是()。
A.-127~+127B.-127~+128C.-128~+127D.-128~+1286、某同步总线采用数据线和地址线复用方式,其中地址/数据线有32根,总线时钟频率为66MHz,每个时钟周期传送两次数据(上升沿和下降沿各传送一次数据),该总线的最大数据传输率(总线带宽)是()。
A.132MB/sB.264MB/sC.528MB/sD.1056MB/s7、中断判优逻辑和总线仲裁方式相类似,下列说法中,正确的是()。
I.在总线仲裁方式中,独立请求方式响应时间最快,是以增加处理器开销和增加控制线数为代价的II.在总线仲裁方式中计数器查询方式,若每次计数都从“0”开始,则所有设备使用总线的优先级相等III.总线仲裁方式一般是指I/O设备争用总线的判优方式,而中断判优方式一般是指I/O设备争用CPU的判优方式IV.中断判优逻辑既可以通过硬件实现,也可以通过软件实现,A. I,IIB. I,III,IVC. I,II,IVD.I,IV8、下列部件中,CPU存取速度由慢到快的排列顺序正确的是()。
计算概论2009期末考试试题
北京大学信息科学技术学院考试试卷(计算概论B 城市与环境学院)考试科目:姓名:学号:考试时间:年月日任课教师:以下为试题和答题纸,共9 页。
一、选择题(每题2分,共30分)1.下列符号中属于非法的自定义标识符的是A. alf_numB. _lineC. MAX_11D. float2. 在C语言中,逻辑值“真”用表示。
A. 大于0的数B. 非0的数C. 非0整数D. 小于0的数3.语句while(!E);中的条件!E等价于()。
A. E = = 0B. E!=1C. E!=0D. ~E4.对于switch语句下列错误的说法是()A. case和default的次序不影响程序的执行结果;B. 多个case可以共用一组语句;C. case后面可以是变量;D. switch后面的括号内可以使用表达式。
5.属于静态存储方式的变量是().A.寄存器变量B.函数的形参变量C. static局部变量D.自动变量6. 选出年龄age在30到40(包括30,不包括40)之间的人,其C语言表达式应为()A. (age>=30) and (age<40)B. (40>age>=30)C. (age>=30)&(age<40)D. (age>=30)&&(age<40)7.数组名作为实参数传递给函数时,数组名被处理为()。
A. 该数组的长度B. 该数组的元素个数C. 该数组的首地址D. 该数组中各元素的值8.下面的选项中正确的赋值语句是(char a[5],*p=a;)()。
A. p=“abcd”;B. a=“abcd”;C. *p=“abcd”;D. *a=“abcd”; 9.两个指针变量不可以( )。
A. 相加B. 比较C. 相减D. 指向同一地址10.若有以下程序段,则值为6的表达式是()。
struct st{int n;struct st *next;};static struct st a[3] = {5,&a[1],7,&a[2],9,‘\0’}, *p;p = &a[0];A. p++->nB. p->n++C. (*p).n++D. ++p->n11.以下程序的输出结果是()。
计算机导论期末考试卷大一
计算机导论期末考试卷大一一、选择题(每题2分,共20分)1. 世界上第一台电子计算机ENIAC是在哪一年诞生的?A. 1942年B. 1946年C. 1952年D. 1956年2. 计算机中最小的数据单位是:A. 字节B. 位C. 千字节D. 兆字节3. 下列哪项不是计算机硬件的基本组成部分?A. 显示器B. 键盘C. 鼠标D. 操作系统4. 计算机病毒是一种:A. 计算机硬件B. 计算机软件C. 计算机程序D. 计算机外设5. 在计算机中,1KB的存储容量等于:A. 1024字节B. 1000字节C. 1000KBD. 1024MB6. 计算机软件分为系统软件和应用软件,其中操作系统属于:A. 系统软件B. 应用软件C. 辅助软件D. 驱动软件7. 计算机的工作原理是基于:A. 布尔代数B. 牛顿定律C. 欧几里得几何D. 量子力学8. 以下哪个不是计算机编程语言?A. JavaB. C++C. PythonD. HTML9. 计算机的存储器分为RAM和ROM,其中RAM是:A. 随机存取存储器B. 只读存储器C. 可擦写存储器D. 光盘存储器10. 计算机的CPU是:A. 中央处理器B. 中央控制单元C. 内存D. 硬盘二、填空题(每空1分,共10分)11. 计算机的发展历程可以划分为四个时代,分别是______、______、______和______。
12. 计算机的输入设备包括键盘、鼠标等,输出设备包括显示器、______等。
13. 计算机的硬盘是一种______存储器,断电后数据不会丢失。
14. 计算机的操作系统是管理计算机硬件资源、提供用户界面的______软件。
15. 计算机的二进制是由0和1组成的,其中1代表______,0代表______。
三、简答题(每题10分,共20分)16. 请简述计算机的冯·诺依曼体系结构。
17. 请解释什么是计算机的字长,并说明它对计算机性能的影响。
计算机学院第1学期期末考试《计算机科学导论》试题
计算机学院第1学期期末考试《计算机科学导论》试题(闭卷A卷)(请将答案写在答题纸上,否则无效)一、单项选择题(共30小题,每小题1分,共30分)1、世界上第一位程序员是()。
A.Leibniz B.Babbage C.Ada Lovelace D.Turing2、删除或隐藏了复杂的细节、只保留实现目标所必须的信息,称作()。
A.抽象B.建模C.分析D.封装3、在计算机中,表示0.1秒的音频信息,与表示1 000 000个浮点数相比,占用存储空间()。
A.大B.小C.相等D.无法比较,因为缺少条件4、一个以Unicode存储的文本文件,与以ASCII形式存储相同内容的文件,在占用空间方面相比,大约()。
A.相等B.是其2倍C.是其二分之一D.无法比较,因为缺少条件5、可以无限放大而不变形的图像,应该以()形式表示。
A.位图B.压缩C.矢量D.光栅6、计算机内部加法器电路与存储器电路分别属于()和()逻辑电路。
A.组合,组合B.时序,组合C.组合,时序D.时序,时序7、某计算机CPU主频为3GHz,存储器大小为2GB。
两个“G”分别表示()。
A.106,106B.106,230C.230,106D.230,2308、根据算法编写程序,相当于Polya问题求解列表中的()阶段。
A.理解问题B.提出方案C.执行方案D.分析结果9、面向对象的分析与设计过程中,确定每个类的责任是()阶段的目标。
A.集体讨论B.过滤C.场景D.责任算法10、把数据和动作集中在一起,使数据和动作的逻辑属性与它们的实现细节分离,称作()。
A.数据抽象B.过程抽象C.控制抽象D.封装11、在机器语言级,如果要对变量操作,应当使用的寻址方式是()。
A.立即寻址B.直接寻址C.任何寻址方式D.无合适寻址方式12、Java语言是()范型的高级程序设计语言。
A.函数B.命令C.逻辑程序设计D.面向对象13、子程序调用自身的现象称为()。
A.选择B.递归C.参数传递D.迭代14、具有后进先出性质的结构称作()。
2022年北京大学计算机科学与技术专业《计算机组成原理》科目期末试卷A(有答案)
2022年北京大学计算机科学与技术专业《计算机组成原理》科目期末试卷A(有答案)一、选择题1、若数据在存储器中采用以低字节地址为字地址的存放方式(小端存储),则十六进制数12345678H按自己地址由小到大依次存为()。
A.12345678B.87654321C.78563412D.341278562、有效容量为128KB的Cache,每块16B,8路组相联。
字节地址为1234567H的单元调入该Cache,其tag应为()。
A.1234HB.2468HC.048DHD.12345H3、浮点数加/减运算过程一般包括对阶、尾数运算、规格化、舍入和判断溢出等步骤。
设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含两位符号位)。
若有两个数,即x=2×29/32,y=25×5/8,则用浮点数加法计算xty的最终结果是()。
A.001111100010B.001110100010C.010*********D.发生溢出4、4位机器内的数值代码,则它所表示的十进制真值可能为()。
I.16 Ⅱ.-1 Ⅲ.-8 V.8A. I、V、ⅢB.IⅡ、IⅣC.Ⅱ、Ⅲ、IVD.只有V5、常用的(n,k)海明码中,冗余位的位数为()。
A.n+kB.n-kC.nD.k6、假设某存储器总线采用同步通信方式,时钟频率为50MHz,每个总线事务以突发方式传输8个字,以支持块长为8个字的Cache行读和Cache行写,每字4B.对于读操作,方式顺序是1个时钟周期接收地址,3个时钟周期等待存储器读数,8个时钟周期用于传输8个字。
请问若全部访问都为读操作,该存储器的数据传输速率为()。
A.114.3MB/sB.126.0MB/sC.133.3MB/sD.144.3MB/s7、下列关于多总线结构的叙述中,错误的是()。
A.靠近CPU的总线速度较快B.存储器总线可支持突发传送方式C.总线之间需通过桥接器相连D.PCI-Expressx16采用并行传输方式8、已知计算机A的时钟频率为800MHz,假定某程序在计算机A上运行需要12s。
最新计算概论(北大期末复习资料:计概复习幻灯片课件
#define JINGDU 0.00001 #include <stdio.h> int main(){
x1 = 1 xn+1 = (xn + a/xn)/2
double a, x2, x1;
scanf(“%lf”, &a);
x1 = 1;
x2 = (x1+a/x1)/2;
while(x2-x1 > JINGDU || x1-x2 > JINGDU){
长短。 (3)控制完成洗衣时信号提示。
全自动洗衣机的控制方案
1. 打开总开关,设置水位(高/中/低)且水位灯亮, 设置洗涤方式(轻柔/标准/强劲)且对应洗涤灯亮, 设置漂洗次数(2/3/4)且对应漂洗灯亮。
2. 按下启动/暂停键,开始进水,进水灯亮,水到 设定水位停止进水,进水灯灭,延时2S后,开始洗涤。
称:这两个字符串相等,
“字符串复制”函数
strcpy(目标字符串, 源字符串);
功能:把 源字符串 赋值给 目标字符串
int main(){ char zfc_src[50], zfc_tgt[50]; gets(zfc_src); strcpy(zfc_tgt, zfc_src); printf(“%s\n”, zfc_tgt); return 0;
用 冒泡法 对 数组 int sz[LEN] 进行排序
int e;
for(int k = 1 ; k <= LEN ; k++){
for(int i = 0; i < LEN - k; i++){
if(sz[i] > sz[i+1]){
e = sz[i+1];
北大计算概论编程网格模拟考试题
北大计算概论编程网格模拟考试题
题目 - 王奶奶的医药费
来源
描述北大医学部____计算概论(jsglzj3)
王奶奶去医院看病,挂了号,进行了几次检查,还拿了药。
现在需要你帮王奶奶统计一下一共花了多少钱。
关于输入
第一行为一个整数n,代表缴纳金额的次数
第二行为n个浮点数,用空格隔开,代表每个项目缴纳的金额
关于输出
输出为1行,输出总共花费金额(保留小数点后两位)。
例子输入
6
1.0
2.5
3.5 5.5 6.5 1.1
例子输出
20.10
题目 - 程序员的健康生活
来源
描述计算概论-心理信管-____-孙俊-助教-SL
据“世界关爱程序猿联合会”建议,一个健康的程序员的生活习惯内容如下:
(1)每天睡眠时间不少于7小时且不超过8小时;
(2)每天至少喝1500毫升的水,不要等到口渴了才开始补水;
(3)每天参加适量运动。
只要做到了以上3点,当天的生活就能算是健康的了。
请你帮忙完成判断程序员小张的生活是否健康的程序。
关于输入
第一行包含一个整数n,为总的测试组数。
接下来为n组数据,每组数据包括3行:
第1行为一个浮点数t,表示小张当天的睡眠时间,0 =_lt; t _lt;=24。
第2行为一个整数_,表示小张一天喝了_毫升的水。
0 _lt; _ _lt; 1000000。
第3行为”Yes”或者“No”(不包括引号),表示小张今天是否参加了适量的运动。
北大计算概论a
计算机概论专项习题一、单选题1、世界上公认的第一台计算机是在()诞生的。
[单选题]*A、1846年B、1864年C、1946年#D、1964年答案解析:第一台电子计算机,有的教材有其它说法,但是公认的第一台电子计算机就是1946年美国的ENIAC。
2、某单位自行开发的工资管理系统,按计算机应用的类型划分,它属于()[单选题]*A、科学计算B、辅助设计C、数据处理#D、实时控制3、当前计算机正朝两级方向发展,即()[单选题]*A、专用机和通用机B、微型化和巨型化#C、模拟机和数字机D、个人机和工作站答案解析:功能上的巨型化,体积上的微型化发展。
4、计算机的发展阶段通常是按计算机所采用的()来划分的[单选题]*A、内存容量B、物理器件#C、程序设计语言D、操作系统答案解析:电子管、晶体管、集成电路都属于电子元婴件(物理器件)。
5、将计算机用于天气预报,是其在()方面的主要应用[单选题]*A、信息处理#B、数值计算C、自动控制D、人工智能答案解析:天气预报属于数值计算(科学计算)范畴。
6、世界上第一台计算机是1946年在美国研制成功的,其英文缩写名为()[单选题]*A、EDSACB、ENIAC#C、EDVACD、UNJVAC-18、在计算机辅助技术中CAM的含义是()[单选题]*A、计算机辅助技术B、计算机辅助制造#C、计算机辅助教学D、计算机辅助测试答案解析:CAM计算机辅助制造,CAD计算机辅助设计,CAI计算机辅助教学,CAT 计算机辅助测试。
9、将程序像数据一样存放在计算机内存中运行,是1946年由()提出的[单选题]*A、图灵B、布尔C、爱因斯坦D、冯·诺依曼#12、关于数据的描述中,错误的是()[单选题]*A、数据可以是数字、文字、声音、图像B、数据可以是数值型数据和非数值型数据C、数据是数值、概念或指令的一种表达形式D、数据就是指数值的大小#13、计算机科学的奠基人是()[单选题]*A、查尔斯巴贝奇B、艾伦·图灵#C、莫克利和埃克特D、冯·诺依曼答案解析:图灵因在其论文中提出的“图灵机”、“图灵测试”等理论,被称为计算机科学奠基人、计算机科学之父以及人工智能之父。
大一《计算机导论》期末考试试题-模拟试题及答案
《计算机导论》期末考试试题模拟试题及答案一、填空题(每小题1分,共20分):1。
计算机领域中采用_________、_________、或_________来表示数值。
. 2。
冯·诺依曼型计算机的两大特征是“程序存储"和“______".3。
美国标准信息交换代码,简称ASCII码,它是____位二进制编码,因此,它可以表示_128___种字符。
4. 计算机中采用的基本逻辑电路主意有各种______及______。
5。
用_________语言编写的程序可由计算机直接执行。
6. 串口按信息传送格式可分为_________和_________。
7。
计算机的主存储器存储直接与__交换的信息,辅助存储器存放当前不立即使用的信息.8。
堆栈是指用作数据暂存的一组寄存器或一片存储区,它的工作方式称为______。
9. 由寻址方式形成的操作数的真正存放地址,称为操作数的______.10. 计算机网络按距离可分为______和______。
11。
设备管理中的设备是指计算机系统的_____、_____和_____。
12. 操作系统按功能特征可分为______、______和______。
13. 高级语言的基本元素可以分为____、______、______、______和______等五大类.14. 从根算起,树可以分为多个层次,树的_____称为树的深度。
15。
_____是数据组织形式,反映数据之间的关系,但不涉及数据的具体内容.16. 线性表的链式存储结构中,每个元素需存储两部分信息:一部分是元素本身的信息,称之“_____”;另一部分则是该元素的直接后继元素的存储位置,称之“_____"。
17. 栈是限定在_____进行插入和删除运算的线性表,其表尾称为_____,表头称为_____。
18。
用编译方法在计算机上执行用高级语言编写的程序,可分为两个阶段: _____和_____.19。
北京大学计算机系统导论2014期末考试题
C. struct P3 {struct P *a[3]; char *c[3];};
D. struct P4 {struct P *a[3]; int *f[3];};
5. 根据编译器安全优化的策略,如下手工程序代码的优化,哪个达不到优化效果? ()
A. 循环展开,以减少循环的迭代次数 B. 将函数调用移到循环内,以提高程序的模块性 C. 消除不必要的存储器引用,减少访存开销 D. 分离多个累计变量,以提高并行性
方可交卷出场。
2、除必要的文具和主考教师允许的工具书、参考书、计算器以外,其它
所有物品(包括空白纸张、手机、或有存储、编程、查询功能的电子用品等)
不得带入座位,已经带入考场的必须放在监考人员指定的位置。
3、考试使用的试题、答卷、草稿纸由监考人员统一发放,考试结束时收
回,一律不准带出考场。以若下有试以题下印为制答问题题纸请,向监共考教师页提出,不得向其他考
2. 假设有下面 x 和 y 的程序定义 int x = a >> 2; int y = (x + a) / 4; 那么有多少个位于闭区间[-8,8]的整数 a 能使得 x 和 y 相等?( ) A. 12 B. 13 C. 14 D. 15
3. 左边的 C 函数中,在 x86_64 服务器上采用 GCC 编译产生的汇编语言如右边 所示。那么(1)和(2)的内容分别是:( )
1
得分
第一题 单项选择题(每小题 1 分,共 20 分) 1. 下面关于 IEEE 浮点数标准说法正确的是( ) A. 在位数一定的情况下,不论怎么分配 exponent bits 和 fraction bits, 所能表示的数的个数是不变的 B. 如果甲类浮点数有 10 位,乙类浮点数有 11 位,那么甲所能表示的最大数一定 比乙小 C. 如果甲类浮点数有 10 位,乙类浮点数有 11 位,那么甲所能表示的最小正数一 定比乙小 D. "0111000"可能是 7 位浮点数的 NAN 表示
北大计概b往年题
北大计概b往年题问题1:计算机中,负责解释和执行指令的部件是______。
A. 运算器B. 控制器C. 存储器D. 输入/输出设备答案: B. 控制器问题2:在计算机网络中,TCP/IP协议中的TCP指的是______。
A. 传输控制协议B. 网际协议C. 超文本传输协议D. 文件传输协议答案: A. 传输控制协议问题3:数据库管理系统中,用于组织和存储数据的结构是______。
A. 数据表B. 数据字典C. 数据文件D. 数据库答案: D. 数据库问题4:在操作系统中,进程是______。
A. 程序的执行过程B. 存储在内存中的程序C. 独立的文件D. CPU的执行单元答案: A. 程序的执行过程问题5:计算机中,用于表示图像的基本单位是______。
A. 像素B. 点阵C. 矢量D. 二进制位答案: A. 像素问题6:在数据结构中,栈是一种______。
A. 顺序表B. 链表C. 队列D. 后进先出(LIFO)的线性表答案: D. 后进先出(LIFO)的线性表问题7:计算机程序设计中,常用的三种基本控制结构是______。
A. 顺序、选择和循环B. 递归、迭代和分治C. 面向对象、面向过程和面向函数D. 事件驱动、过程调用和中断处理答案: A. 顺序、选择和循环问题8:在计算机网络中,用于唯一标识每台计算机的是______。
A. IP地址B. MAC地址C. 端口号D. 主机名答案: A. IP地址问题9:计算机病毒主要通过______传播。
A. 空气B. 生物体C. 计算机网络和存储设备D. 无线电波答案: C. 计算机网络和存储设备问题10:在计算机中,用于存储和传输汉字的内码是______。
A. ASCII码B. 区位码C. 字形码D. 机内码答案: D. 机内码。
2021年北京大学计算机科学与技术专业《计算机组成原理》科目期末试卷A(有答案)
2021年北京大学计算机科学与技术专业《计算机组成原理》科目期末试卷A(有答案)一、选择题1、某计算机有16个通用寄存器,采用32位定长指令字,操作码字段(含寻址方式位)为8位,Store指令的源操作数和目的操作数分别采用寄存器直接寻址和基址寻址方式。
若基址寄存器可使用任一通用寄存器,且偏移量用补码表示,则 Store指令中偏移量的取值范围是()。
A.-32768~+32767B.-32767~+32768C.-65536~+65535D.-65535~+655362、某指令系统有200条指令,对操作码采用固定长度二进制编码时,最少需要用()A.4B.8C.16D.323、在C语言程序中,下列表达式中值为True的有()。
I.123456789=(int)(float)l23456789Ⅱ.123456==(int)(float)1234561Ⅲ.123456789-(int(double)123456789A.仅I、ⅡB. 仅I、ⅢC.仅Ⅱ、ⅢD. I、Ⅱ、Ⅲ、4、下列关于定点数原码一位乘算法的描述正确的是()。
I.符号位不参加运算,根据数值位的乘法运算结果确定结果的符号位II.在原码一位乘算法过程中,所有移位均是算术移位操作Ⅲ.假设两个n位数进行原码一位乘,部分积至少需要使用n位奇存器A.II,III C.只有IIIB.只有Ⅲ D.全错5、某字长为8位的计算机中,已知整型变量x、y的机器数分别为[x]补=11110100,[y] 补=l0110000。
若整型变量z=2x+y/2,则z的机器数为()。
A.11000000B.00100100C.10101010D.溢出6、一个存储器系统中,常常同时包含ROM和RAM两种类型的存储器,如果用lK×8位的ROM芯片和lK×4位的RAM芯片,组成4K×8位的ROM和1K×8位的RAM存储系统,按先ROM后RAM进行编址。
计算机导论期末考试试卷及参考答案1
课程《计算机导论》考试时间:120分钟班级姓名学号一、填空题(将正确答案填在横线上,每空1分,共10分)1.现代计算机都是基于__________模型的。
2.位运算可分为两大类,即__________运算和__________运算。
3.中央处理单元(CPU)由__________ 、__________和寄存器组三个部分组成。
4.根据网络覆盖的范围,可以将网络划分为__________、__________和广域网。
5.当操作系统没有对进程的资源进行限制时会发生__________。
6.计算机系统由两个部分组成,分为 __________ 和__________。
二、选择题(将正确答案的代号填在横线上,每小题2分,共20分)1、下面哪些属于数据?A.数 B. 视频 C.音频 D. 以上全是2、在计算机语言中,是告诉计算机怎么处理数据的一系列指令。
A、操作系统B、算法C、数据处理器D、程序3、一个字节有位。
A、2B、4C、8D、164、如果计算机断电,那么下列中的数据将被擦除。
A、RAMB、ROMC、磁带驱动器D、CD-ROM5、兄弟土豆公司总部在A市,但在B市和C市有分店,各分店之间要通信,这种网络类型可能是。
A、LANB、MANC、WAND、以上都不是6、进程在状态能够转换到就绪、终止或等待状态A、保持B、虚拟C、运行D、a和c7、在排序中,将最小的元素移到无序列表的起始位置,但没有一对一交换。
A、选择B、冒泡C、插入D、以上都是8、对于无序列表使用查找。
A、顺序B、折半C、冒泡D、插入9、计算机硬件唯一可理解语言。
A、机器B、符号C、高级D、自然10、记录中的所有成员必须是。
A、同类型B、相关类型C、整型D、字符型三、判断题(请在括号内正确的打“√”,错误的打“╳”。
每小题1分,共10分)1.在冯诺.伊曼模型中,程序可以不存储在存储器中。
()2.在扩展的ASCII码中,每个符号为16位。
()3.把位模式的指定位置位是异或运算的一个应用。
北大数据结构上机考题总结(1)
1. 编一C程序,它能读入集合A的一串整数(以-9999为结束标记,整数个数小于1000)和集合B 的一串整数(以-9999为结束标记,整数个数小于1000),计算并以从小到大的次序输出A-B 的所有元素(为A或B输入时,同一个数可能出现多次,而A与B的差集中同一个数不能出现多次)。
(注:程序的可执行文件名必须是 e1.exe)(注:程序的可执行文件名必须是 e4.exe)*/#include <stdio.h>void BubbleSort(int r[],int n){//冒泡排序(有小到大)int i,j,k;int exchange;for(i=0;i<=n;i++){exchange=0;for(j=n-1;j>=i;j--)if(r[j+1]<r[j]){k=r[j+1];r[j+1]=r[j];r[j]=k;exchange=1;}if(!exchange)break;}}int DisaSameYs(int r[],int n){//消除数组r[]中的重复元素,并返回消除后数组剩余的元素个数int w,x,y;for(w=0;w<=n;w++){for(x=w+1;x<=n;x++){if(r[w]==r[x]){n--;for(y=x;y<=n;y++){r[y]=r[y+1];}//endforx--;}//endif}//endfor}//endforreturn n;}int cha(int m[],int n[],int l[],int Countaa,int Countbb){//求差集int i=0,j=0,k=0;int exch;while(i<=Countaa){exch=0;//交换变量为0for(j=0;j<=Countbb;j++){//用集合的第一个元素分别和另一个集合的各元素相比较//然后再用第二个元素(直到最后一个元素)和另一个集合的各元素相比较 if(m[i]==n[j]){//如果相同,交换变量变为1exch=1;break;}//endif}//endforif(!exch){//如果没有相同的就保存m[i]到l[]中l[k]=m[i];k++;}i++;}//endwhilereturn k;}/*void testds(int r[],int n){//测试消除数组中的重复元素的效果用下列循环输出int z;for(z=0;z<=n;z++)printf("%d",r[z]);}printf("\n");}*/void main(){int a[1000], b[1000],c[2000];int exchange=0;int i,j,k,CountA,CountB,CountC;printf("input a\n");for(i=0;i<=1000;i++){scanf("%d",&a[i]);if(a[i]==-9999)break;}CountA=i-1;BubbleSort(a,CountA);CountA=DisaSameYs(a,CountA);// testds(a,CountA);printf("\ninput b\n");for(i=0;i<=1000;i++){scanf("%d",&b[i]);if(b[i]==-9999)break;}CountB=i-1;BubbleSort(b,CountB);CountB=DisaSameYs(b,CountB);//testds(b,CountB);CountC=cha(a,b,c,CountA,CountB);printf("\n\n");for(i=0;i<=CountC-1;i++)printf("%d ",c[i]);}printf("\n");}模式匹配#include <stdio.h>#include <string.h>typedef struct{// int ch[2000];char ch[2000];int length;}SeqString;int NaiveStrMatch(SeqString T,SeqString P) {int i,j,k;int m=P.length;int n=T.length;for(i=0;i<=n-m;i++){j=0;k=i;while(j<m&&T.ch[k]==P.ch[j]){k++;j++;}if(j==m)return i;}//endforreturn -1;}//NaiveStrMatchSeqString CreatStr(SeqString R){int i;printf("input data\n");for(i=0;i<2000;i++){// scanf("%d",&R.ch[i]);// if(R.ch[i]==-9999)scanf("%s",&R.ch[i]);if(!(strcmp(&R.ch[i],"-9999")))break;}R.length=i-1;return R;}void main(){int n;SeqString Str1;Str1=CreatStr(Str1);SeqString Str2;Str2=CreatStr(Str2);n=NaiveStrMatch(Str1,Str2);printf("%d\n",n);}2、编一C程序,它能读入集合A的一串整数(以-9999为结束标记,整数个数小于1000)和集合B的一串整数(以-9999为结束标记,整数个数小于1000),计算出A与B的交集,并以由小到大的次序输出A与B的交集中的所有整数(输入整数时,相邻的两个用空格隔开。
06:合法C标识符
06:合法C标识符06:合法 C 标识符总时间限制:1000ms内存限制:65536kB描述。
C语⾔标识符要求:1. ⾮保留字;2. 只包含字母、数字及下划线(“_”)。
3. 不以数字开头。
输⼊⼀⾏,包含⼀个字符串,字符串中不包含任何空⽩字符,且长度不⼤于20。
输出⼀⾏,如果它是C语⾔的合法标识符,则输出yes,否则输出no。
样例输⼊RKPEGX9R;TWyYcp样例输出no来源北京⼤学 计算概论 06 ⼼理及信管 期末考试1 #include<iostream>2 #include<cstdio>3 #include<cstring>4using namespace std;5char a[10001];6int main()7 {8 gets(a);9int l=strlen(a);10int flag=0;1112for(int i=0;i<l;i++)13 {14if(i==0)15 {16if(a[0]>=48&&a[0]<=57)17 {18 cout<<"no";19return0;//判断⾸位是否是数字20 }21 }22if((a[i]==95)||(a[i]>=48&&a[i]<=57)||(a[i]>=65&&a[i]<=90)||(a[i]>=97&&a[i]<=122))//判断数字,下划线,⼤⼩写字母的情况23 flag=0;24else flag=1;25if(flag==1)26 {27 cout<<"no";28return0;29 }else continue;30 }3132 cout<<"yes";33return0;34 }。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
return 0; }
int max(int a,int b) {
return a>b?a:b; }
int egg(int n,int m) {
room(i-1,j); if(direction[castle[i][j]][1]==1&&map[i+1][j]==0)
room(i+1,j); if(direction[castle[i][j]][2]==1&&map[i][j-1]==0)
room(i,j-1); if(direction[castle[i][j]][3]==1&&map[i][j+1]==0)
int main() {
int i,j,max=0; scanf("%d",&M);
scanf("%d",&N); for(i=1;i<=M;i++)
for(j=1;j<=N;j++) scanf("%d",&castle[i][j]);
for(i=1;i<=M;i++) for(j=1;j<=N;j++) if(map[i][j]==0) { square[count]=0; room(i,j); count++; }
北京大学地球与空间科学学院 刘证源
else for(j=i;j<=L-1;j++) target[j]=source[j];
}
void mergeSort(int source[],int target[],int L) {
int l=1; while(l<L) {
mergePass(source,target,L,l); l=l*2; mergePass(target,source,L,l); l=l*2; } }
scanf("%d",&a[i]); mergeSort(a,b,N); printf("%lld\n",count); return 0; }
北京大学地球与空间科学学院 刘证源
void merge(int source[],int target[],int first,int mid,int last) {
k=k*100;
up=n5*(n4*(n3*(n2-1)+1)-1)+1; //分子
down=n1*n2*n3*n4*n5+1;
//分母
x=down;
y=up;
while(y>0) //求最大公约数约分分子分母
{ z=x%y; x=y; y=z; }
down=down/x;
up=up/x;
if(down>k) printf("not found");
scanf("%d",&v[i]); for(d=0;d<=V-1;d++)
北京大学地球与空间科学学院 刘证源
北京大学地球与空间科学学院 刘证源
for(i=1;i<=V-d;i++) {
j=i+d; if(d==0)
l[i][j]=0; else if(d==1)
l[i][j]=v[j]-v[i]; else
else
{
h=down;
A=up;
B=h-n1*A;
北京大学地球与空间科学学院 刘证源
C=n1*n2*A+(1-n2)*h; D=0-n1*n2*n3*A+(n3*(n2-1)+1)*h; E=n1*n2*n3*n4*A-(n4*(n3*(n2-1)+1)-1)*h; a[0]=A; a[1]=B; a[2]=C; a[3]=D; a[4]=E; for(i=0;i<4;i++)for(j=i+1;j<5;j++) if(a[i]==a[j]){flag=1;break;} if(flag) printf("not found"); else printf("%d %d %d %d %d %d",h,A,B,C,D,E); } system("pause"); }
城堡 #include<stdio.h> int castle[52][52],direction[16][4]={{1,1,1,1},{1,1,0,1},{0,1,1,1},{0,1,0,1},
{1,1,1,0},{1,1,0,0},{0,1,1,0},{0,1,0,0}, {1,0,1,1},{1,0,0,1},{0,0,1,1},{0,0,0,1}, {1,0,1,0},{1,0,0,0},{0,0,1,0},{0,0,0,0}}; int map[52][52]={0}; int square[2500]; int count=0,M,N; void room(int i,int j);
五户共井问题 #include <stdio.h> #include <stdlib.h>
main() {
int n1,n2,n3,n4,n5,h;
int A,B,C,D,E,k;
int up,down,i,j,x,y,z;
int a[5],flag=0;
scanf("%d %d %d %d %d %d",&k,&n1,&n2,&n3,&n4,&n5);
scanf("%d",&value[i]); for(i=1;i<=N;i++)
scanf("%d",&num[i]); dp[0][0]=1; for(i=1;i<=N;i++)
for(j=0;j+value[i]<=M;j++) if(dp[j][0]==1&&dp[j+value[i]][0]==0&&dp[j][i]<num[i]) { dp[j+value[i]][0]=1; dp[j+value[i]][i]=dp[j][i]+1; count++; }
走出迷宫 #include<stdio.h> #include<string.h> int map[102][102]={0}; int walk[102][102]; void maze(int i,int j);
int main() {
int N,M,i,j,x1,y1,x2,y2; char newline; memset(walk,10000,sizeof(walk)); scanf("%d %d\n",&N,&M); for(i=1;i<=N;i++) {
printf("%d\n",count); return 0; }
求排列的逆序数 #include<stdio.h> #include<stdlib.h> long long count=0;
int main() {
int N,i; int *a,*b; void mergeSort(int source[],int target[],int L); scanf("%d",&N); a=(int*)malloc(N*sizeof(int)); b=(int*)malloc(N*sizeof(int)); for(i=0;i<=N-1;i++)
} printf("%d\n",dp[V][P]); return 0; }
鸡蛋的硬度 #include<stdio.h> #include<string.h> # define INF 100000 int dp[101][11];
int main() {
int n,m; int egg(int n,int m); while(scanf("%d %d",&n,&m)==2) {
北京大学地球与空间科学学院 刘证源
maze(x1,y1); printf("%d\n",walk[x2][y2]); return 0; }
void maze(int i,int j) {
if((map[i-1][j]=='S'||map[i-1][j]=='T'||map[i-1][j]=='.')&&walk[i][j]+1<walk[i-1][j]) {
void mergePass(int source[],int target[],int L,int l) {
int i=0,j; while(i+2*l-1<L) {
merge(source,target,i,i+l-1,i+2*l-1); i+=2*l; } if(i+l-1<L-1) merge(source,target,i,i+l-1,L-1);
for(i=0;i<count;i++) if(square[i]>max) max=square[i];
printf("%d\n%d\n",count,max); return 0; }