搜档网
当前位置:搜档网 › 慈溪市小学生计算机程序设计竞赛复赛试题定稿

慈溪市小学生计算机程序设计竞赛复赛试题定稿

慈溪市小学生计算机程序设计竞赛复赛试题定稿
慈溪市小学生计算机程序设计竞赛复赛试题定稿

精品文档

2012年慈溪市小学生计算机程序设计比赛

复赛试题

比赛时间:2012年12月23日上午8:30—10:30

注意事项

1.每位选手都应先在E盘根目录下建立自己的答卷文件夹,该文件夹的名称为自己的考号;2.选手最终所提交的所有文件都必须存放在自己的考生文件夹中,凡错放及以书面形式提交的答卷一律视作无效;

3.每题提交的解答都必须包括以下二个文件,即源程序文件和经编译后生成的可执行文件,其名称必须与各题中所规定的相一致;

4.程序中必须采用文件读写的方法来实现数据的输入和结果的输出,即程序运行时所需输入数据应从题中指定的输入文件中读取(而不得采用键盘输入的方式),程序运行的结果应写入到题中指定的文件中(而不是输出到屏幕上)。

5.用于提供输入数据和记录输出结果的文件的名称都已在题中具体规定,选手程序在调用它们时不得为其指定任何特别的路径。

6.复赛用机房电脑C盘和D盘均已设置成开机还原保护,选手切勿把程序存放在C盘和D盘中,否则如果重新开机后程序将不复存在。

7.比赛结束后请不要关机。

精品文档.

精品文档

1.统计成绩(score.pas/exe)

【问题描述】

每次考试或测试后,老师们都要进行成绩统计。假如某次期末考试有语文、数学、英语三门课,现请你编程输出总成绩最高分以及每门学科的最高分。

【输入数据】

输入文件score.in:输入从文件中读取,输入共n+1行。

第1行是一个正整数n(1≤n≤100),表示学生人数,从1到n编号。

接下来n行,每行3个整数,依次表示每个学生的语文、数学、英语成绩(每门课成绩是0到100之间的整数,包括0和100)。

【输出数据】

输出文件score.out:结果输出到文件中,输出共1行,包含4个整数,分别表示三门课总成绩最高分,语文学科的最高分,数学学科的最高分,英语学科的最高分。

【输入输出样例】

【样例解释】

输入3个学生成绩,第1个学生语文、数学、英语三门课的成绩分别为80,67,96,第2个学生语文、数学、英语三门课的成绩分别为88,71,93,第3个学生语文、数学、英语三门课的成绩分别为90,95,80。第3个学生的总成绩最高,为265。语文学科的最高分是90分,数学学科的最高分95,英语学科的最高分96。

【数据范围约定】

所有的输入数据保证1≤n≤100,成绩在0到100分之间(包括0和100)。

2.最小的Y(miny.pas/exe)

【问题描述】

程序设计与数学密切相关,所以兴趣小组的辅导老师经常拿一些有趣的数学题来让大家思考。一次课上,辅导老师又拿出了一个有趣的数学问题,题目是这样的:

给你两个正整数x和z,求最小的整数y,使得x×y以后再除以z的余数为0。

比如x=3,z=6,求最小的y。

题目一出,马上有同学说:最小的y是0。

老师说:是的,非常厉害,最小的y是0。那最小的正整数y是多少呢?

【输入数据】

输入文件miny.in:输入从文件中读取,输入共1行,两个正整数,分别表示x和z

(1≤x≤2147483647, 1≤z≤2147483647)。

【输出数据】

输出文件miny.out:结果输出到文件中,输出共1行,表示使得x×y以后再除以z的精品文档.精品文档

余数为0的最小的正整数y。

【输入输出样例】

【样例解释】

3×2=6,再除以6余数为0,且2最小。

【数据范围约定】

对于50%的数据,1≤x, z≤100000。

对于100%的数据,1≤x, z≤2147483647。

3.书架(bookshelf.pas/exe)

【问题描述】

为了方便同学们查阅资料,程序设计兴趣小组的辅导老师打算将积攒了很多年的n本书放到上课教室的书架上去。

教室的书架是一层一层叠起来的,每一层最多可以放m本书。每一层的高度由放在这层中最高的那本书决定的,如果不放书,则认为这层的高度为0。为了使每个同学能方便地拿到想要的书,书架的总高度应尽可能低。请编程计算将这n本书放在书架上后书架的最小总高度,计算的过程中不考虑书的厚度与书架本身材料的厚度。

【输入数据】

输入文件bookshelf.in:输入从文件中读取,输入共n+1行。

第1行2个整数n和m (1≤m≤n≤100000) 。

接下来n行,每行1个正整数,分别表示每本书的高度(每本书的高度不超过100)。

【输出数据】

输出文件bookshelf.out:结果输出到文件中,输出共1行,表示将n本书放入书架后书架的最小总高度。

【输入输出样例】

【样例解释】

将高度是30和20的两本书放在一层,则这层的高度为30,将高度是10的那本书放在另外一层,则这层的高度为10,则书架的总高度为40,满足最小。

【数据范围约定】

精品文档.

精品文档

每本书的高度为不超过100的正整数。

对于70%的数据,1≤m≤n≤1000。

对于100%的数据,1≤m≤n≤100000。

(string.pas/exe)

偶数字符串4.

【问题描述】你对也是一项很重要的基本功。对字符串的处理与操作是程序设计中永恒的主题之一,字符串熟悉吗?'到A2000),所有的字符串中最多包含‘20)个字符串(1≤字符串长度≤给你n(1≤n≤,使得被选取的字符串中出现的每种字母种大写字母。从中选取若干个字符串'这‘N14 最多可以选取多少个字符串?总数均为偶数,请编程计算【输入数据】n+1行。输入文件string.in:输入从文件中读取,输入共n,表示共有多少个字符串。第1行一个整数种大写字14 N'这接下来n行,每行一个无序的字符串,字符串中最多包含‘A'到‘。(不考虑行末回车等不可见字符)母【输出数据】行,表示最多可以选取的字符串数1输出文件string.out:结果输出到文件中,输出共目。】【输入输出样例1

【样例1解释】

输入样例1中的2个字符串不管如何选择都不能保证每种字母加起来都是偶数。

【输入输出样例2】

【样例2解释】

选取输入中的两个“AD”字符串,使得A有2个,D也有2个,都是偶数。

【输入输出样例3】

精品文档.

精品文档

【样例3解释】

选取“A”、“BA”、“B”3个字符串能使‘A'和‘B'的个数都为偶数,但选取的字符串个数仅为3,不是最多。选取输入中的“AD”、“BA”、“B”、“D”4个字符串,使得‘A'、‘B'、‘D'的总个数均为偶数且选取的字符串总数为4,满足个数最多。

【数据范围约定】

对于50%的数据,1≤n≤15,1≤字符串长度≤200,且字符串中最多包含‘A'到‘G'

7种不同字母。

对于100%的数据,1≤n≤20,1≤字符串长度≤2000,且字符串中最多包含‘A'到‘N'

14种不同字母。

精品文档.

2019年全国大学生电子设计竞赛赛题B题_巡线机器人

2019年全国大学生电子设计竞赛试题 参赛注意事项 (1)8月7日8:00竞赛正式开始。本科组参赛队只能在【本科组】题目中任选一题;高职高专组参赛队在【高职高专组】题目中任选一题,也可以选择【本科组】题目。(2)参赛队认真填写《登记表》内容,填写好的《登记表》交赛场巡视员暂时保存。(3)参赛者必须是有正式学籍的全日制在校本、专科学生,应出示能够证明参赛者学生身份的有效证件(如学生证)随时备查。 (4)每队严格限制3人,开赛后不得中途更换队员。 (5)竞赛期间,可使用各种图书资料和网络资源,但不得在学校指定竞赛场地外进行设计制作,不得以任何方式与他人交流,包括教师在内的非参赛队员必须迴避,对违纪参赛队取消评审资格。 (6)8月10日20:00竞赛结束,上交设计报告、制作实物及《登记表》,由专人封存。 巡线机器人(B题) 【本科组】 一、任务 设计一基于四旋翼飞行器的巡线机器人,能够巡检电力线路及杆塔状态 (见图1),发现异常时拍摄存储,任务结束传送到地面显示装置上显示。巡线机器人中心位置需安装垂直向下的激光笔,巡线期间激光笔始终工作,以标识航迹。 二、要求 1.基本要求 (1)巡线机器人从距A杆塔1米范围内的起飞点起飞,以1米定高绕杆巡检,巡检流程为:起飞→杆塔A→电力线缆→绕杆塔B→电力线缆→ 杆塔A,然后稳定降落;巡检期间,巡线机器人激光笔轨迹应落在地 面虚线框内。 (2)从起飞到降落,巡线完成时间不得大于150秒,巡线时间越短越好。 (3)发现线缆上异物(黄色凸起物),巡线机器人须在与异物距离不超过30cm的范围内用声或光提示。

图1 杆塔与线缆示意图图2 杆塔B二维码示意 2.发挥部分 (1)拍摄所发现线缆异物上的条形码图片存储到SD卡,巡检结束后在显示装置上清晰显示,并能用手机识别此条形码内容。 (2)发现并拍摄杆塔B上的二维码图片存储到SD卡,巡检结束后在显示装置上清晰显示,并能用手机识别此二维码内容。 (3)拍摄每张条形码、二维码图片存储的照片数不得 超过3张。 (4)停机状况下,在巡线机器人某一旋翼轴下方悬挂 一质量为100g的配重,然后巡线机器人在图3 所示环形圆板上自主起飞,并在1米高度平稳悬 停10秒以上,且摆动范围不得大于±25cm。 (5)在测试现场随机选择一个简单飞行动作任务,30 分钟内现场编程调试完成飞行动作。图3 环形圆板(6)其他。 三、说明 1. 电力线缆与杆塔说明 (1)线缆的直径不大于5mm,颜色为黑色。 (2)杆塔高度约150cm,直径不大于30mm。 (3)线缆上异物上粘贴有圆环状的黄底黑色8位数条形码,条形码宽度约30±2mm,见图4。 图4 条形码示例图5 二维码示例

C语言程序设计竞赛题及其答案

数学与统计学院 第三届计算机程序设计竞赛题 竞赛需知: 1、答案必须写在答题纸上。 2、程序采用C/JAVA/VB/VFP语言实现均可。 3、考虑到各种因素,程序的键盘输入和结果输出可以用伪代码或者自然语言表示。但是必 须说明输入变量和输出变量。 4、题目最好能用完整、正确的语言程序来解决问题,如确实无法编写完整语言程序的,可 以写出程序主要框架和流程,必要时可以用伪代码或者自然语言描述算法(程序)。 一、玫瑰花数(20分) 如果一个四位数等于它的每一位数的4次方之和,则称为玫瑰花数。例如: + + 1634+ =, 4^4 4^3 4^6 4^1 编程输出所有的玫瑰花数。 #include void main() { int i,j,k,l,m; for(i=999;i<=9999;i++) { j=i/1000; k=i%10; l=i/100-10*j; m=i/10-100*j-10*l; if(i==j*j*j*j+k*k*k*k+l*l*l*l+m*m*m*m) printf("%d\n",i); } } 二、菱形图案(20分) 对给定的奇数n,编程打印菱形图案。 输入样例: 7 输出样例: * *** ***** ******* ***** *** * #include #include void main() {

int i,j,k; int n; scanf("%d",&n); for(i=0;i #include void main() { int i,j,x,y; float r; int a,b,count=0; printf("请输入矩阵的行列i,j:"); scanf("%d%d",&i,&j); printf("请输入圆心的坐标点及半径x,y,r:"); scanf("%d%d%f",&x,&y,&r); for(a=0;a

计算机程序设计员四级理论知识试卷

计算机程序设计员四级理论知识试卷 一、单项选择(第1题~第160题。选择一个正确的答案,将相应的字母填入题内的括号中。每题分,满分80分。) 1. 有关“兢兢业业、吃苦耐劳”的职业道德规范方面,( )是错误的。 A、严格按照正常的作息时间开展工作,只做自己份内的工作 B、能够脚踏实地、埋头苦干、任劳任怨 C、不计较个人得失,具有吃苦耐劳、脚踏实地的精神 D、不仅要在理论上有一定的造诣,还要具有实干精神 2. 计算机程序设计员要严格按照工作程序及相关文档的规范开展工作,指的是( )。 A、胸襟宽阔 B、谦虚谨慎 C、严肃认真 D、办事规范 3. 遵纪守法指的是计算机程序设计员要遵守职业纪律和与职业相关的( )。 A、刑法、民法、劳动法 B、保密法、劳动法等其他法律 C、法律、法规、商业道德 D、道德规范 4. 计算机程序员掌握着用户软件系统的重要信息,因此要求程序设计人员必须具备( )的职业道德。 A、严谨务实 B、工作耐心 C、谦虚谨慎 D、严守机密 5. 计算机程序设计员要坚持实事求是的工作作风,一切从实际出发,理论联系实际,坚持( )的唯一标准。 A、效率就是生命 B、实践是检验真理 C、客户第一 D、服务第一 6. 计算机程序设计员的工作涉及专业面广,需要具有( ),因此,计算机程序设计员应该做一个“通才”和“杂家”。 A、组织能力 B、管理能力 C、广博的知识 D、最前沿的知识 7. 计算机程序设计员要根据自身分工的不同和形势发展的需要,掌握软件技术所需要的技能,如新的语言、( )、网络技能、组件开发等。 A、新的系统设备 B、新的环境 C、新的模式 D、新的开发工具 8. 计算机系统是一个软、硬件结合的复杂的多层次系统,外三层完全属于( )的内容。 A、软硬件结合 B、计算机硬件 C、计算机软件 D、操作系统 9. 十进制数(307)10转换为八进制数的结果是( )。 A、(133)8 B、(463)8 C、(333)8 D、(263)8 10. 移位操作按移位性质可分为三种类型,它们是( )。 A、逻辑移位、循环移位、算术移位 B、简单移位、复杂移位、多重移位 C、单移位、多移位、复合移位 D、左移位、右移位、左右同时移位 11. 在典型的层次化存储系统中,( )属于外围设备。 A、高速缓存、主存储器 B、主存储器、辅助存储器 C、寄存器、主存储器 D、辅助存储器、海量存储器 12. 按存储的工作方式分类,磁带存储器属于( )。 A、顺序读写存储器 B、随机读写存储器 C、只读存储器 D、主存储器 13. 计算机由五部分构成,分别是控制器、( )、储存器、输入设备、输出设备。 A、运算器 B、寄存器 C、加法器 D、中央处理器 14. 指令系统的设计包括指令格式、类型和( )的确定以及操作数的访问方式。 A、寻址方式 B、结构 C、大小 D、功能 15. 主机和I/O设备通常是按照各自独立的时序工作的,因此往往需要接口进行( )以满足各种时序的要求。 A、等待 B、缓冲暂存 C、组装和分解 D、检测和复位 16. 下列全部属于高级程序设计语言的是:( )。 A、机器语言和C语言 B、汇编语言和C++语言 C、C语言和C++语言 D、机器语言和汇编语言 17. 下列属于构造数据类型的是( )。 A、整型和实型 B、算数类型和枚举类型 C、指针和数组 D、字符型和整型 18. 汇编语言中,宏指令可以看作是指令系统扩展的指令,只不过这些扩展的宏指令是由( )定义的。 A、操作系统 B、编译系统 C、宏汇编程序 D、用户自己 19. 代码优化工作阶段可在( )进行。 A、中间代码生成之后和(或)目标代码生成之后 B、中间代码生成之前和(或)目标代码生成之后 C、中间代码生成之后和(或)目标代码生成之前 D、中间代码生成之前和(或)目标代码生成之前 20. 从功能的角度看,操作系统是对计算机资源(包括硬件和软件等)进行( )的程序。 A、输入和输出 B、管理和控制 C、汇编和执行 D、优化和保障 21. 进程是程序在一个( )上的运行过程,它是系统进行资源分配和调度的独立单位。 A、固定时间段 B、动态时间段 C、数据集合 D、机器指令集合 22. 为使程序能正确执行,需对逻辑地址有关的指令进行相应调整,这一过程称为( )。 A、静态分配 B、动态分配 C、地址重定位 D、内存重定位23. 下列叙述中,不属于操作系统设备管理功能的是( )。 A、设备分配 B、缓冲区管理 C、实现物理I/O操作 D、设备性能管理 24. 一个作业从进入系统到运行结束,一般须经过提交、后备、( )、完成四个状态阶段。 A、存储 B、输出 C、执行 D、调度 25. 数据结构是指数据以及( )。 A、数据之间的关系 B、数据的逻辑结构 C、数据元素的集合 D、数据的存储结构 26. 数组顺序存储的优点在于可以( )存取或修改数组元素的值。A、线性地B、连续 C、顺序 D、随机 27. 链表分为单链表、( )、循环链表三种。 A、空链表 B、双链表 C、多链表 D、复合链表 28. 线性表是由( )的数据元素组成的有限序列。 A、相同类型 B、不同类型 C、有序 D、无序 29. 栈的主要操作有:建空栈、( )。 A、插入、查找 B、插入、遍历、查找 C、进栈、出栈 D、插入、排序、查找 30. 通常一个数据库的数据模型是由( )、数据操作和完整性约束三个部分组成的。 A、数据元素 B、数据结构 C、管理模型 D、数据类型 31. 从某个角度看到的数据特性称为数据视图,用户的数据视图称为( )。 A、内模型 B、外模型 C、概念模型 D、物理模型 32. 网络编程是指实现网络进程( )的编程。 A、正常运行 B、安全通讯 C、分层次 D、正常启动 33. 下列不属于脚本语言的是( )。 A、VBScript B、JAVAScript C、PERL D、Delphi 34. 软件项目可行性分析的研究内容包括:技术可行性、经济可行性、运行可行性以及( )等。 A、环境可行性 B、时间可行性 C、人员可行性 D、法律可行性 35. 在需求分析阶段,确定系统的运行要求,就是确定系统运行时的( ),如主机、软件、外设等。 A、设备要求 B、软件要求 C、环境要求 D、硬件要求 36. 模块是组成软件结构的基本元素,它是数据说明和( )的集合。 A、算法 B、数据结构 C、逻辑模型 D、数据类型 37. 编码使用的语言、程序的( )对程序质量也有相当大的影响。 A、算法 B、数据结构 C、数据类型 D、风格 38. 软件测试作为软件工程的一个阶段,它的根本任务是( )。 A、保证软件的质量 B、保证开发进度 C、发现和纠正所有错误 D、验证软件的正确性 39. 下列不属于软件质量保证技术的是( )。 A、加强成本控制 B、采用面向对象的方法 C、应用可重用软件 D、增强软件坚固性设计技术 40. 面向对象方法工作重点仍然放在生命周期中的分析阶段,这与( )是一致的。 A、模块化设计技术 B、面向过程方法 C、结构化设计方法 D、软件生命周期方法学 41. 在计算机网络中,计算机之间需要通过( )连接起来。 A、通信设备和相应的管理软件 B、传输介质和传输协议 C、通信设备和传输介质 D、网卡和网线 42. ( )是网络的核心,它的主要任务是为网络上的其它机器提供服务。 A、网络协议 B、工作站 C、服务器 D、客户机 43. 计算机网络按( )可分为环形网、星形网、总线形网、树形网等。 A、通信介质 B、拓扑结构 C、信号频带占用方式 D、规模和覆盖范围 44. 一个完整的Internet域名地址由若干部分组成,且从右到左各部分之间大致是( )的关系。 A、上层与下层 B、下层与上层 C、同级 D、互相依赖 45. 下列有关OSI参考模型的叙述,正确的是( )。 A、OSI参考模型的每一层是独立的,不与其它层交互作用 B、OSI模型是对发生在网络中两节点之间过程的理论化描述 C、OSI模型规定了支持每一层的硬件或软件的模型 D、OSI模型将网络结构划分为资源子网和通信子网 46. TCP/IP的可路由性意味着它可以携带被( )解释的网络编址信息。 A、服务器 B、工作站 C、交换机 D、路由器 47. 在计算机安全中,( )是指确保信息不被未授权用户更改,但对授权用户开放。 A、可信性 B、保密性 C、完整性 D、确定性

2009年全国大学生电子设计大赛题目(全)

光伏并网发电模拟装置(A 题) 【本科组】 一、任务 设计并制作一个光伏并网发电模拟装置,其结构框图如图1所示。用直流稳压电源U S 和电阻R S 模拟光伏电池,U S =60V ,R S =30Ω~36Ω;u REF 为模拟电网电压的正弦参考信号,其峰峰值为2V ,频率f REF 为45Hz~55Hz ;T 为工频隔离变压器,变比为n 2:n 1=2:1、n 3:n 1=1:10,将u F 作为输出电流的反馈信号;负载电阻R L =30Ω~36Ω。 R L U S 图1 并网发电模拟装置框图 二、要求 1.基本要求 (1)具有最大功率点跟踪(MPPT )功能:R S 和R L 在给定范围内变化时, 使d S 1 2 U U =,相对偏差的绝对值不大于1%。 (2)具有频率跟踪功能:当f REF 在给定范围内变化时,使u F 的频率f F =f REF , 相对偏差绝对值不大于1%。 (3)当R S =R L =30Ω时,DC-AC 变换器的效率η≥60%。 (4)当R S =R L =30Ω时,输出电压u o 的失真度THD ≤5%。 (5)具有输入欠压保护功能,动作电压U d (th )=(25±0.5)V 。 (6)具有输出过流保护功能,动作电流I o (th )=(1.5±0.2)A 。 2.发挥部分 (1)提高DC-AC 变换器的效率,使η≥80%(R S =R L =30Ω时)。 (2)降低输出电压失真度,使THD ≤1%(R S =R L =30Ω时)。 (3)实现相位跟踪功能:当f REF 在给定范围内变化以及加非阻性负载时,

均能保证u F 与u REF 同相,相位偏差的绝对值≤5°。 (4)过流、欠压故障排除后,装置能自动恢复为正常状态。 (5)其他。 三、说明 1.本题中所有交流量除特别说明外均为有效值。 2.U S 采用实验室可调直流稳压电源,不需自制。 3.控制电路允许另加辅助电源,但应尽量减少路数和损耗。 4.DC-AC 变换器效率o d P P η= ,其中o o1o1P U I =?,d d d P U I =?。 5.基本要求(1)、(2)和发挥部分(3)要求从给定或条件发生变化到电路 达到稳态的时间不大于1s 。 6.装置应能连续安全工作足够长时间,测试期间不能出现过热等故障。 7.制作时应合理设置测试点(参考图1),以方便测试。 8.设计报告正文中应包括系统总体框图、核心电路原理图、主要流程图、 主要的测试结果。完整的电路原理图、重要的源程序和完整的测试结果用附件给出。

软考软件设计师必做练习题及答案(1)

软考软件设计师必做练习题及答案 软件设计师考试属于全国计算机技术与软件专业技术资格考试(简称计算机软件资格 考试)中的一个中级考试。考试不设学历与资历条件,也不论年龄和专业,考生可根据自己的技术水平选择合适的级别合适的资格,但一次考试只能报考一种资格。考试采用笔试形式,考试实行全国统一大纲、统一试题、统一时间、统一标准、统一证书的考试办法。下面是希 赛小编整理的软考软件设计师考前必做的练习题。 试题一分析 本题主要考查类图和顺序图。 【问题1】 需要分析此门禁系统的体系结构,根据体系结构的描述来看什么数据放在什么类中最 为合适。题目中提到:系统中的每个电控锁都有一个唯一的编号。锁的状态有两种:“已锁住”和“未锁住”。所以Lock中含有锁编号和锁状态这两个属性。又因为题中有:在主机上可以设置每把锁的安全级别以及用户的开锁权限。只有当用户的开锁权限大于或等于锁的安全级并且锁处于“已锁住”状态时,才能将锁打开。因此,Lock中还有锁的安全级别。 【问题2】 首先,(1)、(2)是FingerReader和LockController之间的交互。所以我们看题 目中是如何描述他们的交互的。题目中有“指纹采集器将发送一个中断事件给锁控器,锁控器从指纹采集器读取用户的指纹”,所以(1)应填“中断事件”,(2)应填“读取指纹”。(3)是主机与UserInfo的交互,从图2-35中可以看出,UserInfo中存储了用户的指纹信息和开锁权限,所以(3)应是从UserInfo读取用户的指纹信息和开锁权限。(4)空应填“读取锁的安全级别”。(5)是MainFrame向自己发送的一条消息,从题目中的“主机根据数据库中存储的信息来判断用户是否具有开锁权限,若有且锁当前处于已锁住状态,则将锁打开;否则系统报警”可以看出,主机在得到所有信息后要判断用户是否能开锁,所以(5)应填“判断用户是否能开锁”。 【问题3】 这是纯理论题,请直接阅读参考答案。 试题一参考答案 【问题1】 锁的编号、安全级别、锁的当前状态。 【问题2】

程序设计大赛试题及答案

试题 1、数学黑洞(程序文件名maths.c/maths.cpp) 【问题描述】 任给一个4位正整数,其各位数位上的数字不全相同,将数字重新组合成一个最大的数与最小的数相减,重复这个过程,最多7步,必得6174。对任给的4位正整数(各位数位上的数字不全相同),编程输出掉进黑洞的步数。 【输入】 一行,一个4位正整数n(1000< n<9999) 【输出】 掉进黑洞的步数 输入 1234 输出 3 2、进制转换(程序文件名conver.c/conver.cpp) 【问题描述】 任给一个十进制整数n,及正整数m(m<=16且m≠10), 将n转换成m进制并输出。 【输入】 一行,两个整数n,m(0 ≤ n ≤ 500000,2 ≤ m ≤ 16,且m≠10),中间用一个空格隔开,其中n 表示十进制数。 【输出】 转换后的数 【输入输出样例】 输入 255 8 输出 377 3、分数线划定(程序文件名score.c/score.cpp) 【问题描述】 公务员选拔工作正在 A 市如火如荼的进行。为了选拔优秀人才,A 市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的150%划定,即如果计划录取m名公务员,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。现在就请你编写程序划定面试分数线,并输出所有进入面试的选手的报名号和笔试成绩。 【输入】 第一行,两个整数n,m(5 ≤ n ≤ 5000,3 ≤ m ≤ n),中间用一个空格隔开,其中n 表示报名参加笔试的选手总数,m 表示计划录取的人数。输入数据保证m*150%向下取整后小于等于n。 第二行到第 n+1 行,每行包括两个整数,中间用一个空格隔开,分别是选手的报名号k(1000 ≤ k ≤ 9999)和该选手的笔试成绩s(1 ≤ s ≤ 100)。数据保证选手的报名号各不相同。 【输出】 第一行,有两个整数,用一个空格隔开,第一个整数表示面试分数线;第二个整数为进入面试的选手的实际人数。 从第二行开始,每行包含两个整数,中间用一个空格隔开,分别表示进入面试的选手的报名号和笔试成绩,按照笔试成绩从高到低输出,如果成绩相同,则按报名号由小到大的顺序输出。 【输入输出样例】 输入 6 3 1000 90 3239 88 2390 95 7231 84 1005 95 1001 88

计算机程序设计基础习题册(含答案)

《计算机程序设计基础》 习 题 册

计算机程序设计基础_基础知识(一)班级学号姓名成绩一、单选题 1.C++源程序文件的默认扩展名为A。 2.A) cpp B) exe C) obj D) lik 3.由C++源程序文件编译而成的目标文件的默认扩展名为C。 4.A) cpp B) exe C) obj D) lik 5.由C++目标文件连接而成的可执行文件的默认扩展名为B。 6.A) cpp B) exe C) obj D) lik 7.编写C++程序一般需经过的几个步骤依次是B。 8.A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接 9.程序中主函数的名字为 A 。 10.A) main B) MAIN C) Main D) 任意标识符 11.下面四个选项中,均是不合法的用户标识符的选项的是C。12.A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 13.下列变量名中合法的是C。 14.A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 15.存储以下数据,占用存储字节最多的是 D 。 16.A) 0 B) ‘0’ C) “0”D) 17.在C++语言中,字符型数据在内存中的存储形式是D。 18.A) 补码B) 反码 C) 原码D) ASCII码 19.若有说明语句:char c =’\072’;则变量c A。 20.A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令 计算机程序设计基础_基础知识(二)

程序设计竞赛常用算法

常用算法设计方法 要使计算机能完成人们预定的工作,首先必须为如何完成预定的工作设计一个算法,然后再根据算法编写程序。计算机程序要对问题的每个对象和处理规则给出正确详尽的描述,其中程序的数据结构和变量用来描述问题的对象,程序结构、函数和语句用来描述问题的算法。算法数据结构是程序的两个重要方面。 算法是问题求解过程的精确描述,一个算法由有限条可完全机械地执行的、有确定结果的指令组成。指令正确地描述了要完成的任务和它们被执行的顺序。计算机按算法指令所描述的顺序执行算法的指令能在有限的步骤内终止,或终止于给出问题的解,或终止于指出问题对此输入数据无解。 通常求解一个问题可能会有多种算法可供选择,选择的主要标准是算法的正确性和可靠性,简单性和易理解性。其次是算法所需要的存储空间少和执行更快等。 算法设计是一件非常困难的工作,常用的算法设计方法主要有迭代法、穷举搜索法、递推法、递归法、贪婪法、回溯法、分治法、动态规划法等。 一、迭代法 迭代法是用于求方程或方程组近似根的一种常用的算法设计方法。设方程为f(x)=0,用某种数学方法导出等价的形式x=g(x),然后按以下步骤执行:(1)选一个方程的近似根,赋给变量x0; (2)将x0的值保存于变量x1,然后计算g(x1),并将结果存于变量x0; (3)当x0与x1的差的绝对值还大于指定的精度要求时,重复步骤(2)的计算。 若方程有根,并且用上述方法计算出来的近似根序列收敛,则按上述方法求得的x0就认为是方程的根。上述算法用C程序的形式表示为: 【算法】迭代法求方程的根 { x0=初始近似根; do { x1=x0; x0=g(x1); /*按特定的方程计算新的近似根*/ } while ( fabs(x0-x1)>Epsilon); prin tf(“方程的近似根是%f\n”,x0); } 具体使用迭代法求根时应注意以下两种可能发生的情况: (1)如果方程无解,算法求出的近似根序列就不会收敛,迭代过程会变成死循环,因此在使用迭代算法前应先考察方程是否有解,并在程序中对迭代的次数给予限制; (2)方程虽然有解,但迭代公式选择不当,或迭代的初始近似根选择不合理,也会导致迭代失败。 【举例】求方程X2-X-1=0的正根,误差<0.05 解:(1)建立迭代公式 由于X=X2-1

计算机程序设计员试题及答案

考件编号: 注 意 事 项 一、本试卷依据2002年颁布的《计算机程序设计员》国家职业标准命制。 二、请根据试题考核要求,完成考试内容。 三、请服从考评人员指挥,保证考核安全顺利进行。 试题1、我国古代难题--百鸡问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏一,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?用PAD 图描述解决办法。 (1)本题分值:20分 (2)考核时间:36min (3)考核形式:笔试 (4)具体考核要求:我国古代难题--百鸡问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏一,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?用PAD 图描述解决办法。 试题2、编写加油站计费程序。 (1)本题分值:50分。 (2)考核时间:90min 。 (3)考核形式:实操。 (4)具体考核要求:编写加油站计费程序。 a) 程序界面如下: b) 选择好汽油种类,即可在窗口上方显示出该种类汽油的单价(90号4.43元/升,93号4.8元/升,97号5.03元/升)。 c) 输入汽油数量,点击“计算”按钮即可计算出总价钱是多少,如选择打折则会 计算出打折后的价钱。 d) 点击“退出”按钮退出程序。 e) 将“加油站计费程序”源程序上传到考场给出的ftp 服务器上面。 考 生 答 题 不 准 超 过 此 线

考件编号: 试题3、使用基本路径测试方法,为下列程序段设计测试用例。 (1)本题分值:30分 (2)考核时间:54min (3)考核形式:笔试 (4)具体考核要求:使用基本路径测试方法,为下列程序段设计测试用例。 void do(int X,int A,int B) { if((A>1)&&(B=0)) X=X/A; if((A=2)||(X>1)) X=X+1; } a)画出程序的控制流图。 b)计算程序的环形复杂度(导出程序基本路径集中的独立路径条数这是确定程序 中每个可执行语句至少执行一次所必须的测试用例数目的上界)。 c)导出基本路径集,确定程序的独立路径。 d)根据 C)中的独立路径,设计测试用例的输入数据和预期输出。f)

acm程序设计大赛题目

The Mailboxes Manufacturers Problem Time Limit:1000MS Memory Limit:65536K Total Submit:299 Accepted:227 Description In the good old days when Swedish children were still allowed to blowup their fingers with fire-crackers, gangs of excited kids would plague certain smaller cities during Easter time, with only one thing in mind: To blow things up. Small boxes were easy to blow up, and thus mailboxes became a popular target. Now, a small mailbox manufacturer is interested in how many fire-crackers his new mailbox prototype can withstand without exploding and has hired you to help him. He will provide you with k(1 ≤ k≤ 10) identical mailbox prototypes each fitting up to m(1 ≤ m≤ 100) crackers. However, he is not sure of how many firecrackers he needs to provide you with in order for you to be able to solve his problem, so he asks you. You think for a while and then say, “Well,if I blow up a mailbox I can’t use it again, so if you would provide me with only k = 1 mailboxes, I would have to start testing with 1 cracker, then 2 crackers, and so on until it finally exploded. In the worst case, that is if it does not blow up ev en when filled with m crackers, I would need 1 + 2 + 3 + … + m = m ×(m+ 1) ? 2 crackers. If m = 100 that would mean more than 5000 fire-crackers!” “That’s too many,” he replies. “What if I give you more than k = 1 mailboxes? Can you find a strategy that requires less crackers?” Can you? And what is the minimum number of crackers that you should ask him to provide you with? You may assume the following: 1.If a mailbox can withstand x fire-crackers, it can also withstand x? 1 fire-crackers. 2.Upon an explosion, a mailbox is either totally destroyed (blown up) or unharmed, which means that it can be reused in another test explosion.

计算机程序设计员理论试题库

计算机程序设计员高级理论知识训练题 一、单项选择(选择一个正确的答案,将相应的字母填入题内的括号中。) 1.计算机程序设计员在工作中不应该()。 A、谦虚谨慎、胸襟宽阔 B、严格按照工作程序及相关文档的规范开展工作 C、善于表现自己的成绩,力求突出自我 D、时刻保持朝气和活力 2.遵纪守法指的是计算机程序设计员要遵守职业纪律和与职业相关的()。 A、刑法、民法、劳动法 B、保密法、劳动法等其他法律 C、法律、法规、商业道德 D、道德规范 3.计算机程序员掌握着用户软件系统的重要信息,因此要求程序设计人员必须具备() 的职业道德。 A、严谨务实 B、工作耐心 C、谦虚谨慎 D、严守机密 4.计算机程序设计员在工作中要从客观实际出发,不懂不装懂,多向用户学习,切忌()。 A、服务第一 B、一切向钱看 C、客户第一 D、主观臆断 5.从()的角度看,计算机程序设计员必须了解和熟悉与自身职业有直接或间接关系的领域中取得的新成果,才能更好地掌握本职业的各项技能。 A、管理 B、发展 C、效益 D、业务 6.在多个层次的存储器系统中,上一层的存储器较下一层存储器的容量小,()。 A、失效率高 B、离CPU远 C、速度快 D、成本低 7.按存储的工作方式分类,存储器可分为()。 A、软盘、硬盘、光盘 B、半导体存储器、磁表面存储器、光存储器 C、RAM、ROM、BIOS D、随机读写存储器、顺序读写存储器、只读存储器 8.按()来划分,总线可以分为8位总线、16位总线、32位总线等。 A、总线所处的层次 B、用途 C、数据线的宽度 D、信息的传输方向 9.()翻译程序在语言程序翻译时,读入一句源程序,则翻译一句,执行一句,反反复复直到最终完成。 A、编译型 B、过程型 C、解释型 D、脱机型 10.在缓冲技术中,()是以专用的寄存器作为缓冲器,费用较高。 A、软件缓冲 B、硬件缓冲 C、多重缓冲 D、单缓冲 11.在文件结构中,()对用户是透明的。 A、字符型文件结构 B、字节型文件结构 C、逻辑的文件结构 D、物理的文件结构 12.在()过程中,用户不能进行任何干预,一切由系统自动进行。 A、联机作业控制 B、脱机作业控制 C、动态作业控制 D、实时作业控制 13.数据模型按不同的应用层次可划分为两类:一类是概念数据模型,另一类是()。 A、概念模型 B、逻辑模型 C、实体模型 D、物理模型 14.在数据库的数据模型中,()规定了如何用基本的数据项组织成较大的数据单位,以描述实体类型和实体之间联系。 A、数据结构 B、记录结构 C、数据操作 D、库结构

C语言程序设计大赛题目

C语言程序设计大赛题 目 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

1.角谷猜想 日本一位中学生发现一个奇妙的“定理”,请角谷教授证明,而教授无能为力,于是产生角谷猜想。猜想的内容是:任给一个自然数,若为偶数除以2,若为奇数则乘3加1,得到一个新的自然数后按照上面的法则继续演算,若干次后得到的结果必然为1。请编程验证。 *问题分析与算法设计 本题是一个沿未获得一般证明的猜想,但屡试不爽,可以用程序验证。 题目中给出的处理过程很清楚,算法不需特殊设计,可按照题目的叙述直接进行证。 *程序说明与注释 #include<> intmain() { intn,count=0; printf("Pleaseenternumber:"); scanf("%d",&n);/*输入任一整数*/ do{ if(n%2) { n=n*3+1;/*若为奇数,n乘3加1*/ printf("[%d]:%d*3+1=%d\n",++count,(n-1)/3,n); } else { n/=2;/*若为偶数n除以2*/ printf("[%d]:%d/2=%d\n",++count,2*n,n); } }while(n!=1);/*n不等于1则继续以上过程*/

}

2.四方定理 数论中着名的“四方定理”讲的是:所有自然数至多只要用四个数的平方和就可以表示。 请编程证此定理。 *问题分析与算法设计 本题是一个定理,我们不去证明它而是编程序验证。 对四个变量采用试探的方法进行计算,满足要求时输出计算结果。 #include<> #include<> intmain() { intnumber,i,j,k,l; printf("Pleaseenteranumber="); scanf("%d",&number);/*输入整数*/ for(i=1;i intmain() { inta,b,c,d; printf("Pleaseenteranumber:"); scanf("%d",&a);/*输入整数*/

计算机程序员考试试题及答案

计算机考试试题及答案 一、单项选择题(每小题1分,共20分)在每小题列出的四个选项中,选出一个正确答案,并将正确答案的号码写在题干后面的括号内。 1.关于操作系统的叙述( )是不正确的。 A.“管理资源的程序” B.“管理用户程序执行的程序” C.“能使系统资源提高效率的程序” D.“能方便用户编程的程序” 2.操作系统的发展过程是( ) A.设备驱动程序组成的原始操作系统,管理程序,操作系统 B.原始操作系统,操作系统,管理程序 C.管理程序,原始操作系统,操作系统 D.管理程序,操作系统,原始操作系统 3.用户程序中的输入,输出操作实际上是由( )完成。 A.程序设计语言 B.编译系统 C.操作系统 D.标准库程序 4.计算机系统中判别是否有中断事件发生应是在( ) A.进程切换时 B.执行完一条指令后 C.执行P操作后 D.由用户态转入核心态时 5.设计批处理多道系统时,首先要考虑的是( ) A.灵活性和可适应性 B.系统效率和吞吐量 C.交互性和响应时间 D.实时性和可*性 6.若当前进程因时间片用完而让出处理机时,该进程应转变为( )状态。 A.就绪 B.等待 C.运行 D.完成 7.支持程序浮动的地址转换机制是( ) A.页式地址转换 B.段式地址转换 C.静态重定位 D.动态重定位 8.在可变分区存储管理中,最优适应分配算法要求对空闲区表项按( )进行排列。 A.地址从大到小 B.地址从小到大 C.尺寸从大到小 D.尺寸从小到大 9.逻辑文件存放在到存储介质上时,采用的组织形式是与( )有关的。 A.逻辑文件结构 B.存储介质特性 C.主存储器管理方式 D.分配外设方式 10.文件的保密是指防止文件被( ) A.篡改 B.破坏 C.窃取 D.删除 11.对磁盘进行移臂调度的目的是为了缩短( )时间。 A.寻找 B.延迟 C.传送 D.启动 12.启动外设前必须组织好通道程序,通道程序是由若干( )组成。 https://www.sodocs.net/doc/6714164703.html,W B.CSW C.CAW D.PSW 13.一种既有利于短小作业又兼顾到长作业的作业调度算法是( ) A.先来先服务 B.轮转 C.最高响应比优先 D.均衡调度 14.作业调度程序是从处于( )状态的作业中选取一个作业并把它装入主存。 A.输入 B.收容 C.执行 D.完成 15.在单处理器的多进程系统中,进程什么时候占用处理器和能占用多长时间,取决于( ) A.进程相应的程序段的长度 B.进程总共需要运行时间多少

历年电子设计大赛竞赛题目

“美亚光电”杯安徽省第一届大学生电子设计竞赛题 任意波形发生器(A题) 一、任务 设计制作一个波形发生器,该波形发生器能产生正弦波、方波、三角波和由用户编辑的特定形状波形。示意图如下: 二、要求 1、基本要求 (1)具有产生正弦波、方波、三角波三种周期性波形的功能。 (2)用键盘输入编辑生成上述三种波形(同周期)的线性组合波形,以及由基波及其谐波(5次以下)线性组合的波形。 (3)具有波形存储功能。 (4)输出波形的频率范围为100 Hz ~ 20 kHz(非正弦波频率按10次谐波计算);频率可调,频率步进间隔≤100 Hz。 (5)输出波形幅度范围0 ~ 5 V(峰—峰值),可按步进0.1 V(峰—峰值)调整。 (6)具有显示输出波形的类型、频率(周期)的功能。 2、发挥部分 (1)输出波形频率范围扩展至100 Hz~200 kHz。 (2)用键盘或其他输入装置产生任意波形。 (3)增加稳幅输出功能,当负载变化时,输出电压幅度变化不大于±3%(负载电阻变化范围:100 Ω~∞)。 (4)具有掉电存储功能,可存储掉电前用户编辑的波形和设置。 (5)特色与创新。 三、评分标准 项目满分 基本要求设计与总结报告:方案比较、设计与论证,理论分析与计算,电路图及有 关设计文件,测试方法与仪器,测试数据及测试结果分析。 50 实际制作完成情况50 发挥部分完成第(1)项10 完成第(2)项15 完成第(3)项10 完成第(4)项10 特色与创新 5

远程温湿度测量系统(B题) 一、任务 制作一个远程温湿度测量仪,该测试仪具有温湿度测量和远程显示等功能。 其结构框图如下: 二、要求 l、基本要求 (1)通过可编程控制器、变换器和温湿度传感器采集温湿度数据并在LED上显示。 (2)温度误差<1℃,湿度误差<1%,温度测量范围0℃~120℃,湿度测量范围1%~99%。 (3)可用电池供电。 2、发挥部分 (1)设计红外二极管发射电路和红外接收电路,实现温湿度数据的准确可靠发送和接收。 (2)设计射频发射电路和接收电路,实现温湿度数据的准确可靠发送和接收。 (3)最好采用微型化的温湿度传感器,无线传输距离>5米。 (4)特色与创新。 三、评分标准 项目满分 基本要求设计与总结报告:方案比较、设计与论证,理论分析与计算,电路图及有 关设计文件,测试方法与仪器,测试数据及测试结果分析。 50 实际制作完成情况50 发挥部分完成第(1)项15 完成第(2)项15 完成第(3)项10 特色与创新10

首届程序设计大赛题目及答案

首届程序设计大赛题目及答案 程序设计大赛题目 1. 硬币兑换:用一元人民币兑换一分、二分和五分的硬币,编程求出所有兑换方法,并打印每种情况下各面值硬币需几枚?(10分) 2. 旅馆里有一百个房间,从1到100编了号。第一个服务员把所有的房间门都打开了,第二个服务员把所有编号是2的倍数的房间“相反处理”,第三个服务员把所有编号是3的倍数的房间作“相反处理”,……,以后每个服务员都是如此。问第100个服务员来过后,哪几扇门是打开的。(所谓“相反处理”是:原来开着的门关上,原来关上的门打开。) (15分) 3. 整型数组,长度为10,输入数组各元后,求数组各元的平均值,并找出最接近平均值的那个元素。打印输出上述两个结果,用逗号隔开,不要有其它字符。(20分) 4. 编程求两个很长的整数之和,比如两个20位十进制整数。(很长的整数指无法用long型存储的数)(25分) 例如: 12345678900987654321+12345678900987654321=24691357801975308642 5.编写布雷程序。(30分) 在一个10*10的方格中,随机分布10个地雷,并在其它没有地雷的格中显示该方格周围相邻的方格中共有几枚地雷。 样例输出:(图中-1的位置表示地雷,其它值表示该位置相邻的八个格子中的地雷数) 答案: 第一题: #include using namespace std; int main() { int i,j,k; for(i=1;i<=20;i++) for(j=1;j<=50;j++) {

k=100-5*i-2*j; if(k>0) cout<<"五分硬币"< using namespace std; int main() { int i,j; //i为服务员编号,j为房间编号 int a[101]; for(int t=1;t<101;t++) a[t]=1; for(i=2;i<101;i++) for(j=i;j<101;j++) if(j%i==0) a[j]*=-1; cout<<"打开的房间为:"; for(i=1;i<101;i++) if(a==1) cout< #include using namespace std; int main() { int a[10],i,sum=0,n=0; float ave,ca; for(i=0;i<10;i++) { cin>>a; sum+=a; } ave=sum/10.0; cout<<"数组平均值为:"<

相关主题