计算机软考初级程序员的考试内容有哪些

计算机软考初级程序员的考试内容有哪些,第1张

初级程序员考试:考试科目1:计算机硬软件基础知识\x0d\\x0d\ 1 计算机科学基础\x0d\ 11 数制及其转换\x0d\ 二进制、十进制和十六进制等常用数制及其相互转换\x0d\ 12 数据的表示\x0d\ 数的表示(原码、反码、补码表示,整数和实数的机内表示方法,精度和溢出)\x0d\ 非数值表示(字符和汉字的机内表示、声音和图像的机内表示)\x0d\ 校验方法和校验码(奇偶校验码、海明校验码)\x0d\ 13 算术运算和逻辑运算\x0d\ 计算机中二进制数的运算方法\x0d\ 逻辑代数的基本运算和逻辑表达式的化简\x0d\ 14 数学应用\x0d\ 常用数值计算(矩阵、方程的近似求解、插值)\x0d\ 排列组合、应用统计(数据的统计分析)\x0d\ 15 常用数据结构\x0d\ 数组(表态数组、动态数组)、线性表、链表(单向链表、双向链表、循环链表)、队列、栈、树(二叉树、查找树)、图的定义、存储和 *** 作\x0d\ 16 常用算法\x0d\ 常用的排序算法、查找算法、数值计算、字符串处理、数据压缩算法、递归算法、图的相关算法\x0d\ 算法与数据结构的关系,算法效率,算法设计,算法描述(流程图、伪代码、决策表)\x0d\ 2. 计算机系统基础知识\x0d\ 21 硬件基础知识\x0d\ 211 计算机系统的组成,硬件系统、软件系统及层次结构\x0d\ 212 计算机类型和特点\x0d\ 微机、工作站、服务器、大型计算机、巨型计算机\x0d\ 213 中央处理器CPU\x0d\ 运算器和控制器的组成,常用的寄存器、指令系统、寻址方式、指令执行控制、处理机性能\x0d\ 214 主存和辅存\x0d\ 存储器系统\x0d\ 存储介质(半导体、硬盘、光盘、闪存、软盘、磁带等)\x0d\ 主存储器的组成、性能及基本原理\x0d\ Cache的概念、虚拟存储的概念\x0d\ 辅存设备的类型、特性、性能和容量计算\x0d\ 215 I/O接口、I/O设备和通信设备\x0d\ I/O接口(总线、DMA、通道、SCSI、并行口、RS232C、USB、IEEE1394)\x0d\ I/O设备的类型和特性(键盘、鼠标、显示器、打印机、扫描仪、摄像头,以及各种辅存设备)\x0d\ I/O设备控制方式(中断控制、DMA)\x0d\ 通信设备的类型和特性(Modem、集线器、交换机、中继器、路由器、网桥、网关)及其连接方法和连接介质(串行连接、并行连接,传输介质的类型和特性)\x0d\ 22 软件基础知识\x0d\ 221 *** 作系统基础知识\x0d\ *** 作系统的类型和功能\x0d\ *** 作系统的内核(中断控制)和进程概念\x0d\ 处理机管理、存储管理、设备管理、文件管理、作业管理\x0d\ 汉字处理\x0d\ 图形用户界面及其 *** 作方法\x0d\ 222 程序设计语言和语言处理程序基础知识\x0d\ 汇编、编译、解释系统的基础知识\x0d\ 程序设计语言的基本成分(数据、运算、控制和传输)\x0d\ 过程(函数)调用\x0d\ 23 网络基础知识\x0d\ 网络的功能、分类、组成和拓扑结构\x0d\ 网络体系结构与协议(OSI/RM,TCP/IP)\x0d\ 常用网络设备与网络通信设备,网络 *** 作系统基础知识和使用\x0d\ Client/Server结构、Browser/Server结构\x0d\ LAN基础知识\x0d\ Internet基础知识\x0d\ 24 数据库基础知识\x0d\ 数据库管理系统的主要功能和特征\x0d\ 数据库模型(概念模式、外模式、内模式)\x0d\ 数据模型,ER图\x0d\ 数据 *** 作(关系运算)\x0d\ 数据库语言(SQL)\x0d\ 数据库的主要控制功能\x0d\ 25 多媒体基础知识\x0d\ 多媒体基础概念,常用多媒体设备性能特征,常用多媒体文件格式类型\x0d\ 简单图形的绘制,图像文件的基本处理方法\x0d\ 音频和视频信息的应用\x0d\ 简单多媒体应用制作方法\x0d\ 26 系统性能指标\x0d\ 响应时间、吞吐量、周转时间等概念\x0d\ 可靠性、可维护性、可扩充性、可移植性、可用性、可重用性、安全性等概念\x0d\ 27 计算机应用基础知识和常用办公软件的 *** 作方法\x0d\ 信息管理、数据处理、辅助设计、自动控制、科学计算、人工智能等概念\x0d\ 文字处理基础知识和常用 *** 作方法\x0d\ 电子表格处理基础知识和常用 *** 作方法\x0d\ 演示文稿制作方法\x0d\ 电子邮件处理 *** 作方法\x0d\ 网页制作方法\x0d\ 3. 软件开发和运行维护基础知识\x0d\ 31 软件工程和项目管理基础知识\x0d\ 软件工程基本概念\x0d\ 软件开发各阶段的目标和任务\x0d\ 软件过程基本知识\x0d\ 软件工程项目管理基本知识\x0d\ 面向对象开发方法基础知识\x0d\ 软件开发工具与环境基础知识(CASE)\x0d\ 软件质量管理基础知识\x0d\ 32 软件需求分析、需求定义及软件基础知识\x0d\ 结构化分析概念(数据流图(DFD)、实体关系图(ER))\x0d\ 面向对象设计、结构化设计基础知识\x0d\ 模拟设计、代码设计、人机界面设计要点\x0d\ 33 程序设计基础知识\x0d\ 结构设计程序设计,程序流程图,NS图,PAD图\x0d\ 程序设计风格\x0d\ 面向对象设计基础知识、可视化程序设计基础知识\x0d\ 34 程序测试基础知识\x0d\ 黑盒测试、白盒测试、灰盒测试基础知识\x0d\ 测试工作流程\x0d\ 35 软件开发文档基础知识\x0d\ 36 软件运行和维护基础知识\x0d\ 软件运行基础知识\x0d\ 软件维护基础知识\x0d\ 4. 安全性基础知识\x0d\ 安全性基本概念\x0d\ 计算机病毒的防治,计算机犯罪的防范\x0d\ 访问控制\x0d\ 加密与解密基础知识\x0d\ 5. 标准化基础知识\x0d\ 标准化基本概念\x0d\ 国际标准、国家标准、行业标准、企业标准基础知识\x0d\ 代码标准、文件格式标准、安全标准、软件开发规范和文档标准基础知识\x0d\ 标准化机构\x0d\ 6. 信息化基本知识\x0d\ 信息化基本概念\x0d\ 全球信息化趋势,国家信息化战略,企业信息化战略和策略常识\x0d\ 有关的法律、法规要点\x0d\ 过程教育、电子商务、电子政务等常识\x0d\ 企业信息资源管理常识\x0d\ 7. 计算机专业英语\x0d\ 掌握计算机技术的基本词汇\x0d\ 能正确阅读和理解本领域的简单英文资料 \x0d\\x0d\考试科目2:程序设计\x0d\ 1 内部设计\x0d\ 11 理解外部设计\x0d\ 12 功能划分和确定结构\x0d\ 数据流图、结构图\x0d\ 13 物理数据设计\x0d\ 确定数据组织方式、存储介质,设计记录格式和处理方式\x0d\ 14 详细输入输出设计\x0d\ 界面设计、报表设计\x0d\ 15 内部设计文档\x0d\ 对程序接口、程序功能、人机界面、输入输出、测试计划的描述\x0d\ 16 内部设计文档\x0d\ 2. 程序设计\x0d\ 21 模拟划分(原则、方法、标准)\x0d\ 22 编写程序设计文档\x0d\ 模块规格说明书(程序处理逻辑的描述、输入输出数据格式的描述)\x0d\ 测试要求说明书(测试类型和目标、测试用例、测试方法)\x0d\ 23 程序设计评审\x0d\ 3. 程序实现\x0d\ 31 编程\x0d\ 编程方法和标准\x0d\ 程序设计语言的使用\x0d\ 人工检查\x0d\ 程序文档化\x0d\ 32 程序测试\x0d\ 准备测试环境和测试工具\x0d\ 准备测试数据 \x0d\ 写出测试报告\x0d\ 4程序设计语言(C语言为必选,其他语言可以任选一种)\x0d\ 41 C程序设计语言(ANSI C标准)\x0d\ 程序结构,语法,数据类型说明,可执行语句,函数调用,标准库函数,指针\x0d\ 42 C++程序设计语言(ANSI C++标准)\x0d\ C++和面向对象程序设计,语法和程序结构,类、成员、构造函数、析构函数、模板、继承、多态\x0d\ 43 Java程序设计(Java 2)\x0d\ Java和面向对象程序设计\x0d\ 语言机制(程序结构和语法,类、成员、构造函数、析构函数、继承、接口)\x0d\ 44 Visual Basic程序设计(Visual Basic 60)\x0d\ 用户界面设计\x0d\ 程序结构和语法\x0d\ 文件系统对象\x0d\ 访问数据库 \x0d\复习材料(均为清华大学出版社):\x0d\978-7-302-20585-2,程序员教程(第三版),张淑平主编\x0d\7-302-12895-2,程序员教程(第2版),沈林兴主编

在本科阶段,我本人参与过数学建模,我们团队最终也获得了全国一等奖的荣誉。在数学建模比赛中,程序员起到的是至关重要的作用,因为大部分工作都是由程序员去完成的。

程序员具体应做好以下工作:

1、你要去建模(要会微分方程, 机器学习算法, 图论);

2、写程序搞定你的模型(做A题的话你要会数值分析, 有些地方也叫计算方法 至于决策树, 图论, PCA降维, 聚类分析什么的, 那就是程序员的老本行了);

3、debug你的程序得到看上去正确的结果;

4、在论文里面详细的描述你的算法和实现过程。

数学建模竞赛的最佳配置是每一个人都具备这4个能力。此外,文献检索和文献阅读能力也很重要。阅读文献是多么的重要,更不要说有些人完全靠吹牛来做数学建模,这是我个人的深刻体会。如果数学建模的三个人只有一个人具备这4个能力,那么恭喜你中奖了,工作几乎全部都是你来完成了。

关于编程你需要具备什么能力我认为有三点:

1、数据处理

对于需要数据支持的一些问题,我们必须收集数据,完成数据预处理,规范化数据格式,便于建模和求解。

2、代码编写

这部分是广泛的,但总之,你应该提前使用你的理论模型。一些问题可能会产生一些现成的代码,这些代码可以修改,但是问题并不多,而且大多数问题都需要重写。语言和工具是不受限制的,只要它能被实现。常用的MATLAB、Python、SAS、Lingo等,你可以看到我之前的回答:哪个软件更适合数学建模MATLAB是有限的-一个老司机回答的数学模型-

3、可视化

这是非常重要的。一个好的数学建模论文必须要有良好的视觉化,这就是要有高质量的。这可以在学术论文中引用。

总结

个人认为,程序员在数学建模中起到最重要的作用,如果一个团队里面只有一个程序员,那么这个人的工作量无疑是最大的。

其实编程可以看做是数学的模式化,数学培养的是分析问题解决问题的能力,在编程初级来讲,数学是体现不了多大的作用,因为初级的编程只要求对于法和简单算法的掌握,用不到太高深的东西,但在数据结构,算法中,数学就尤为重要了,有时候需要用数学来证明一些类似于最短路,最短时间,空间复杂度,时间复杂度的问题,还有通过数学计算出最优的解法,初级编程很那理解,但当你要将一段功能很强大的程序写到一个只有几十K甚至更小的空间里,你就会发现用数学推导的作用了。举个简单的例子,关于计算机软件方面的考研,名师们一般都喜欢数学更好一些的学生,哪怕专业课稍差一些

一基本算法:

枚举 (poj1753,poj2965)

贪心(poj1328,poj2109,poj2586)

递归和分治法

递推

构造法(poj3295)

模拟法(poj1068,poj2632,poj1573,poj2993,poj2996)

二图算法:

图的深度优先遍历和广度优先遍历

最短路径算法(dijkstra,bellman-ford,floyd,heap+dijkstra)

(poj1860,poj3259,poj1062,poj2253,poj1125,poj2240)

最小生成树算法(prim,kruskal)

(poj1789,poj2485,poj1258,poj3026)

拓扑排序 (poj1094)

二分图的最大匹配 (匈牙利算法) (poj3041,poj3020)

最大流的增广路算法(KM算法) (poj1459,poj3436)

三数据结构

串 (poj1035,poj3080,poj1936)

排序(快排、归并排(与逆序数有关)、堆排) (poj2388,poj2299)

简单并查集的应用

哈希表和二分查找等高效查找法(数的Hash,串的Hash)

(poj3349,poj3274,POJ2151,poj1840,poj2002,poj2503)

哈夫曼树(poj3253)

trie树(静态建树、动态建树) (poj2513)

四简单搜索

深度优先搜索 (poj2488,poj3083,poj3009,poj1321,poj2251)

广度优先搜索(poj3278,poj1426,poj3126,poj3087poj3414)

简单搜索技巧和剪枝(poj2531,poj1416,poj2676,1129)

五动态规划

背包问题 (poj1837,poj1276)

型如下表的简单DP(可参考lrj的书 page149):

E[j]=opt{D+w(i,j)} (poj3267,poj1836,poj1260,poj2533)

E[i,j]=opt{D[i-1,j]+xi,D[i,j-1]+yj,D[i-1][j-1]+zij} (最长公共子序列) (poj3176,poj1080,poj1159)

C[i,j]=w[i,j]+opt{C[i,k-1]+C[k,j]}(最优二分检索树问题)

六数学

组合数学:

1加法原理和乘法原理

2排列组合

3递推关系

(POJ3252,poj1850,poj1019,poj1942)

数论

1素数与整除问题

2进制位

3同余模运算

(poj2635, poj3292,poj1845,poj2115)

计算方法

1二分法求解单调函数相关知识(poj3273,poj3258,poj1905,poj3122)

七计算几何学

几何公式

叉积和点积的运用(如线段相交的判定,点到线段的距离等) (poj2031,poj1039)

多边型的简单算法(求面积)和相关判定(点在多边型内,多边型是否相交)

(poj1408,poj1584)

凸包 (poj2187,poj1113)

中级(校赛压轴及省赛中等难度):

一基本算法:

C++的标准模版库的应用 (poj3096,poj3007)

较为复杂的模拟题的训练(poj3393,poj1472,poj3371,poj1027,poj2706)

二图算法:

差分约束系统的建立和求解 (poj1201,poj2983)

最小费用最大流(poj2516,poj2516,poj2195)

双连通分量(poj2942)

强连通分支及其缩点(poj2186)

图的割边和割点(poj3352)

最小割模型、网络流规约(poj3308)

三数据结构

线段树 (poj2528,poj2828,poj2777,poj2886,poj2750)

静态二叉检索树 (poj2482,poj2352)

树状树组(poj1195,poj3321)

RMQ (poj3264,poj3368)

并查集的高级应用 (poj1703,2492)

KMP算法 (poj1961,poj2406)

四搜索

最优化剪枝和可行性剪枝

搜索的技巧和优化 (poj3411,poj1724)

记忆化搜索(poj3373,poj1691)

五动态规划

较为复杂的动态规划(如动态规划解特别的旅行商TSP问题等)

(poj1191,poj1054,poj3280,poj2029,poj2948,poj1925,poj3034)

记录状态的动态规划 (POJ3254,poj2411,poj1185)

树型动态规划(poj2057,poj1947,poj2486,poj3140)

六数学

组合数学:

1容斥原理

2抽屉原理

3置换群与Polya定理(poj1286,poj2409,poj3270,poj1026)

4递推关系和母函数

数学

1高斯消元法(poj2947,poj1487, poj2065,poj1166,poj1222)

2概率问题 (poj3071,poj3440)

3GCD、扩展的欧几里德(中国剩余定理) (poj3101)

计算方法

10/1分数规划 (poj2976)

2三分法求解单峰(单谷)的极值

3矩阵法(poj3150,poj3422,poj3070)

4迭代逼近(poj3301)

随机化算法(poj3318,poj2454)

杂题(poj1870,poj3296,poj3286,poj1095)

七计算几何学

坐标离散化

扫描线算法(例如求矩形的面积和周长并,常和线段树或堆一起使用)

(poj1765,poj1177,poj1151,poj3277,poj2280,poj3004)

多边形的内核(半平面交)(poj3130,poj3335)

几何工具的综合应用(poj1819,poj1066,poj2043,poj3227,poj2165,poj3429)

高级(regional中等难度):

一基本算法要求:

代码快速写成,精简但不失风格

(poj2525,poj1684,poj1421,poj1048,poj2050,poj3306)

保证正确性和高效性 poj3434

二图算法:

度限制最小生成树和第K最短路 (poj1639)

最短路,最小生成树,二分图,最大流问题的相关理论(主要是模型建立和求解)

(poj3155, poj2112,poj1966,poj3281,poj1087,poj2289,poj3216,poj2446

最优比率生成树 (poj2728)

最小树形图(poj3164)

次小生成树

无向图、有向图的最小环

三数据结构

trie图的建立和应用 (poj2778)

LCA和RMQ问题(LCA(最近公共祖先问题) 有离线算法(并查集+dfs) 和 在线算法(RMQ+dfs))(poj1330)

双端队列和它的应用(维护一个单调的队列,常常在动态规划中起到优化状态转移的目的) (poj2823)

左偏树(可合并堆)

后缀树(非常有用的数据结构,也是赛区考题的热点)(poj3415,poj3294)

四搜索

较麻烦的搜索题目训练(poj1069,poj3322,poj1475,poj1924,poj2049,poj3426)

广搜的状态优化:利用M进制数存储状态、转化为串用hash表判重、按位压缩存储状态、双向广搜、A算法 (poj1768,poj1184,poj1872,poj1324,poj2046,poj1482)

深搜的优化:尽量用位运算、一定要加剪枝、函数参数尽可能少、层数不易过大、可以考虑双向搜索或者是轮换搜索、IDA算法 (poj3131,poj2870,poj2286)

五动态规划

需要用数据结构优化的动态规划(poj2754,poj3378,poj3017)

四边形不等式理论

较难的状态DP(poj3133)

六数学

组合数学

1MoBius反演(poj2888,poj2154)

2偏序关系理论

博奕论

1极大极小过程(poj3317,poj1085)

2Nim问题

七计算几何学

半平面求交(poj3384,poj2540)

可视图的建立(poj2966)

点集最小圆覆盖

对踵点(poj2079)

主要学的内容如下:

1游戏程序设计:C++程序设计入门;基本数据类型和输入输出;流程控制语句;数组、指针和引用、函数;程序结构和书写规;范结构体和联合体、类;继承与多态;异常处理与程序调试。

2算法与数据结构:算法分析;数据结构;基本算法;STL的概念与使用;静态库与动态库;XML库的使用。

3Win32程序设计:Windows程序入门;Windows消息;GDI绘图游戏工具与MFC;网络编程基础。

4游戏数学和智能应用:游戏中的坐标系;矢量、矩阵;几何碰撞;物理模拟;人工智能与寻路算法。

52D游戏技术与应用:2D游戏技术概论;游戏地图系统;GUI系统;战斗系统设计;任务系统;优秀的声音引擎BASS;Cocos2D-X引擎;Box2D物理引擎。

想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。

祝你学有所成,望采纳。

以上就是关于计算机软考初级程序员的考试内容有哪些全部的内容,包括:计算机软考初级程序员的考试内容有哪些、数学建模比赛中,程序员具体需要做些什么,以及程序员的数学水平应该达到什么程度、数学对编程的作用,最好是程序员来回答.等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9277983.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存