结构化程序设计

2024-05-06

结构化程序设计(共9篇)

篇1:结构化程序设计

结构化面试过程设计

一、准备面试

1. 人力资源部依据有关条件和需要确定面试的主试人

2. 以录用考试的总体目标以及考试录用计划为依据,确定面试内容和面试提纲

①面试内容应包括:仪表态度 、求职动机与工作期望、专业知识和特长、工作经验、工作态度、事业进取心、语言表达能力、综合分析能力、反应能力、自我控制能力、人际交往倾向及与人相处的技巧、精力和活力、兴趣与爱好

②面试提纲由若干面试项目组成,如敬业精神、专业知识、公关能力、兴趣爱好等。每一面试项目均应编制相应的提问提纲以便有针对性地提问、考察。

3. 针对面试内容,由专家设计相应问题和答案,并设计一个标准统一的面试成绩评分表

4. 通过阅读应聘者资料或者笔试筛选合适的应聘者参加面试

5. 准备面试的时间和场所

6. 向面试者发出通知

二、开始面试

7. 制定与使用面试官指南

8. 营造良好的面试环境,以简单的话题打开局面

9. 主试向应聘者介绍公司的基本情况以及应聘职位的基本资料

10. 主试通过广泛话题来了解应聘者的心理特点,工作能力等评价内容

①确认面试对象的背景资料

②评估面试对象的教育专长和工作成就

③考察面试对象的个性行为特征,对应征者的个人特征与工作是否相宜做出评价

④推断面试对象与职位的符合程度

11. 最后阶段,双方可以进行职位本身问题的讨论

12. 主试依据应聘者的表现,对其进行打分并写出简要评语或录用建议

(从面试中应获得的资料:)

①观察应征者的稳定性;

②研究应征者以往做事的经历与成就;

③了解应征者应付困难的能力;

④了解应征者自主的能力;

⑤了解应征者与同事相处的能力。

三、作出招聘决定

13主试人核对记录,进一步检查评分表,看看是否给予了相同的评分

14.检查一些关键性评价要素的评分,比较高分者与低分者的答案,看看他们的行为表现是否与评分匹配。若有需要,主试人在此时可调整评分

15.在相同得分的情况下,主试人需要查阅评分表,若使用加权评分表,在权重较高类获得高分的应聘者,应首先考虑聘用。

房地产营销结构化面试问题

一、房地产营销总监、营销经理岗位有什么具体要求?

这两个岗位需要具备如下素质?

1、良好的职业形象及素质

2、谈吐与思维逻辑出色

3、有过同行业从业经验

4、有过成功案例

5、对房地产的发展趋势有正确理解

二、结构化面试题的设计

1、外表形象与职业化装扮,通过观察法进行评定

2、让应聘者在等候区等候,放置报纸架、饮水机等,侧面观察应聘者如何坐、如何等候,是否帮助其他应聘者接水,是否能迅速和其他应聘者熟悉,来判断他是否有良好的主动沟通和公关能力

3、应聘这对自己的工作经历、性格特点、成功个案进行自我介绍,观察并评价应聘者的口头表达能力、语言组织能力、工作经历是否真实(通过看他对工作年限与细节描述是否合理来判断)

4、针对他说的成功个案,要求详细阐述思路产生过程与方案框架结构,来看是否真有成功个案,并在阐述完成后,针对案例提出细节问题来证明

5、要求他用5~10分钟表达对房地产行业发展趋势的判断及对将来营销手段的估计,来确定是否有好的趋势判断能力,及营销思路

6、另外,这种对于中高级人才的结构化面试最要注意的就是,应聘流程的安排必须很专业,不然应聘者会拒绝将对趋势的判断和营销思路说出来;

结构性面试在大部分面试中都可以通用,只不过对一些特殊素质要求再特殊设计流程与问题,这样就不会因为参与面试的考评测评人员的不同产生不同的判断或主观臆断。

篇2:结构化程序设计

[1]教学目的:

1、让学生了解选择结构程序

2、掌握逻辑量的概念

3、掌握关系表达式和逻辑表达式

4、了解IF 语句

[2]教学重点:选择结构程序和关系表达及逻辑表达式

[3]教学难点:选择结构程序的掌握

[4]教学方法:引入法

[5]教学工具:

[6]教学内容:

教师活动

学生活动

引入:

例子1、从键盘输入一个数,如果是正数则输出这个数,否则输出信息“这个数是负数”。

例子2、用程序编写一个求学生的六门课程六课程的的平均成绩和总分的程序。

例子3、用程序编写一个二元一次方程的根(△>=0)

例子4、把10个职工的工资和打印出来

提问5:如果求1+2+3+4+5+……+100的和怎么办呢?

提问6:如果求一个班所有学生的六门课程的平均成绩

提问7:如果所求方程的没有实根又怎么办呢?

提问8:如果要我们打印100个职工的工资又怎么办呢?

老师得出答案:这就不是顺序结构程序所能解决了。我们在前面已经学过选择结构,提醒学生回忆一下选择结构的流程图

图略:

为了能很好的掌握选择程序结构的设计,先了解一些选择程序的基础。

学生做1

学生做2:

学生做3:

学生做4:

学生回答5

学生回答6

学生回答7

学生回答8

一、关系表达式和逻辑表达式

1、逻辑量的.概念

逻辑量:在QBASIC中用-1,0,即真和假的表达法。

何时用到:在关系表达式中和逻辑表达式中用到。

当结构为真时是-1,结果是假时为0

例1:X+Y>Z当成立时为真即为-1,

当不成立时为假,即为0

例2:在2.9例中:

IFX>0 THEN PRINT X

2、关系运算符和关系表达式

关系:即运算量的关系。六种。>=<=

关系表达式:即用关系运算符把运算量联接起来的式子。

例:A>B, X>=Y, MN等。例:X=Z

注意:赋值符号和关系符号要区分开。

LET A=5

B=A

PRINT B=A,B,A

3、逻辑运算符号和逻辑表达式

逻辑运算符:NOT非AND与OR或

1)NOT即对某个运算量的逻辑值取反。

如:A>B为真时,则 NOT A 等于假

程序:

A=3

B=4

PRINT A,B,NOTA>B,NOT A

IFNOT A>B THEN PRINT A

IFNOT A>B THEN PRINT B

END

2)AND相当于数学里的交集,即两个运算量取交集

如:A={1,2,3,4,5,6,7}

B={1,2,66,54,34,5,3}

A交B={1,2,3,5}

即AAND B=-1如AANDB没有值则为0

例:IFA AND B THEN PRINT A

3)OR相当于数学里的并集集

A={1,2,3,4,5,6,7}

B={1,2,66,54,34,5,3}

AUB={1,2,3,4,5,6,7,66,54,34}

即AOR B=-1,如A或B为空时则为0

逻辑运算符的运算规则为真值表:

真值表为(略)

逻辑表达式:用逻辑运算符联接起来的式子。

例1:A AND B OR C OR NOT A

A>B NOT A等。

4、IF 语句的格式:

IF逻辑表达式THEN 语句1 ELSE 语句2

学生写出程序运行的值:

小结:

教效果

篇3:结构化程序设计

作为控制论中的一个重要分支——系统辨识理论的基础理论之一黑箱—灰箱—白箱理论 (也称为盒子理论) , 无论从其理论的现成过程看, 还是从其基本内容看, 它们既体现了人认识过程中彼此联系又互有区别的认识阶段, 也反映出人认识事物的基本过程而结构化程序设计思想的实质上也体现出盒子理论的思想精髓, 即从“黑箱”到“灰箱”再到“白箱”的一个过程这一思想历程表现为程序设计者先通过对待开发系统的外部特征和内部功能进行分析、认识, 而后运用一些方法描述出系统的逻辑模型, 最后再使用一些具体的手段将该系统在计算机上具体实现.

2 盒子理论与结构化程序设计思想

2.1 盒子理论

盒子理论是由黑箱、灰箱和白箱理论具体构成的, 下面分别予以介绍.

2.1.1 黑箱理论

所谓“黑箱”是指一个系统, 不知它的内部结构如何, 就像一个既不透明又密封着的箱子, 故称黑箱或黑色系统在研究它的时候, 由于条件的限制, 不便或不能将其打开, 进行 其内部结构的直接观察, 只能依靠其输入和输出信息来研究它的功能、特性, 这就是所谓黑箱理论如众所周知的我国中医理论采用的就是黑箱理论, 它将人体看作一个整体即系统, 从系统的功能出发, 来研究人体生理和病理的规律;在诊病时通过望、闻、问、切这四种方法 (输入) , 获取人体输出的信息后, 得出诊断结论故而, 凡是根据对系统外部性质的研究来对其进行判断的系统, 均称之为黑箱黑箱理论就是从系统的整体功能出发, 将待研究系统看作是一个黑箱子, 通过外部观察和试验在不考虑系统局部细节的情况下对系统内部功能进行研究.

2.1.2 灰箱理论

从认识论上讲, 黑箱方法是以研究者对所研究对象“一无所知”为出发点的, 而人类对客观事物的认识过程是从不知到知, 从知之甚少到知之较多, 是一个不断深化、逐步积累的过程任何一个人都是在直接接收了前人的经验和知识的前提下, 再研究新的课题和新的对象一般地, 研究者对研究对象已具有关于实现输入输出关系的结构和功能的部分信息, 即被研究系统为一“灰箱”如生物系统, 农业系统等, 都没有确切的物理原型, 它们各自的系统信息部分清楚、部分不清楚, 因此都是灰箱或灰色系统要辨识这种“灰箱”系统, 就要充分利用已有的知识, 这些知识可以使我们知道系统过去的历史, 就好像系统内部存在着一种“记忆”, 只要了解了这种“记忆”, 再加上运用其它方法得到的一些知识, 就可以掌握系统的内部状态.

2.1.3 白箱理论

与灰箱方法的应用相联系, 人们又提出了“白箱方法” (或称为白箱理论) 白箱理论是这样一种方法, 当我们通过诸如黑箱理论、灰箱理论等认识了系统的内部结构时, 我们就可以把这种结构关系按一定的关系式表达出来, 这就是“白箱网络”制定“白箱网络”不是白箱方法的全部目的, 更重要的是通过这种“白箱网络”对系统进行再认识, 或者利用这种“白箱网络”去控制系统以后的过程或预测系统的行为例如, 我们使用电子计算机, 其运算程序都是事先设计好的, 这种程序就是以上所说的“白箱网络”因为在设计程序时, 我们对于程序输入计算机后, 它的运算步骤、运算方式都是知道的.

2.1.4 总结

无论从黑箱、灰箱和白箱理论的形成过程看, 还是从其基本内容看, 它们都是人类认识过程中彼此联系又互有区别的认识阶段首先, 它们明确了黑箱对认识主体来讲是不知, 但不是不可知, 并提供了一种认识它的新途径人的认识是一个能动的过程, 从这种角度认识不了的事物可以从另一种角度去认识, 一下子认识不了的事物可以逐步去认识这种灵活的、动态的认识过程保证了人们对客观的逐步逼近其次, 黑箱、灰箱和白箱展现的正是一个认识逐步深化的过程无论是人类的认识过程还是个体的认识过程, 都是一个由不知到知、由浅到深的逐步深化运动可以认为, “黑—灰—白”这三个环节正是具体描绘了人类的认识不断深化的过程, 并且提供了一种怎样由表及里、由不知到知、由知之较少到知之较多的科学手段第三, 在黑箱—灰箱—白箱的理论中, 认识对象和认识主体的交互作用, 尤其是认识主体对于认识对象的主观能动性, 是表现的很明显的这正体现了人类认识的真实过程, 即不断地认识、改造客观世界和不断地认识、改造主观世界的辩证统一的过程.

2.2 结构化程序设计思想

结构化程序设计 (STRUCTURED PROGRAMING, 简称SP) 思想是为解决“软件危机”而由E.Dijkstra等人于1972年提出的多年来的实践证明, 结构化程序设计思想确实使程序执行效率提高, 程序的出错率和维护费用大大减少结构程序设计就是一种进行程序设计的原则和方法, 按照这种原则和方法可设计出结构清晰、容易理解、容易修改、容易验证的程序结构化程序设计的目标在于使程序具有一个合理结构, 以保证和验证程序的正确性, 从而开发出正确、合理的程序.

结构化程序设计的基本思想是按自顶向下、逐步求精的方式, 由三种标准控制结构反复嵌套来构造一个程序按照这种思想, 可以对一个执行过程模糊不清的模块, 以顺序、选择、循环的形式加以分解, 最后使整个模块都清晰起来, 从而确定全部细节用结构化程序设计方法逐层把系统划分为大小适当、功能明确、具有一定独立性、并容易实现的模块, 从而把一个复杂的系统的设计转变为多个简单模块的设计对于小规模程序设计, 它与逐步精化的设计策略相联系, 即采用自顶向下、逐步求精的方法对其进行分析和设计;对于大规模程序设计, 它则与模块化程序设计策略相结合, 即将一个大规模的问题划分为几个模块, 每一个模块完成一定的功能用结构化程序设计方法产生的程序也由许多模块组成, 每个模块只有一个入口和一个出口, 程序中一般没有GOTO语句, 所以把这种程序称为结构化程序结构化程序易于阅读, 而且可提高系统的可修改性和可维护性藉助于体现结构化程序设计思想的所谓结构化程序设计语言来书写结构化程序, 并采用一定的书写格式以提高程序结构的清晰性, 增进程序的易读性.

3 应用

结构化程序设计是编程人员对要编程解决的问题由浅到深的一个认识过程, 而且也是编程人员经过认识、抽象, 最终将所要解决的问题由现实世界转化到计算机世界的过程鉴于程序设计过程也就是一个不断认识与实现的过程, 我们可以发现盒子理论思想在其中各个环节上的体现.

首先, 我们将待开发的程序系统看作一个“黑箱”, 使用一些方法和手段对所要模拟的现实系统进行详尽、彻底地了解了解现实系统为实现其功能所需的各种数据、外界条件等, 以及完成功能后产生的结果通过前面所做的调查研究, 获得现实系统的具体模型, 去掉具体模型中的非本质因素, 抽象出现实系统的逻辑模型与此同时对所收集到的信息进行分析、处理, 以便区分出哪些是目标系统所需的输入信息, 哪些是目标系统应该产生的输出信息这样就可以得到一个关于目标系统的“黑箱模型”, 见图1.

对目标系统的“黑箱模型”和现实系统的逻辑模型进行比较, 以便得到更加合理的目标系统的“黑箱模型”, 也即是对已经确定的黑箱的输入输出进行再确认接着采用某些方法来描绘目标系统所能完成的功能因为任何计算机系统实质上都是信息处理系统, 也就是说计算机系统本质上都是把输入数据变换成输出数据因此目标系统的最终“黑箱模型”实质上就是目标系统的逻辑模型, 它包含着系统对数据加工变换的基本功能从这个模型出发, 利用某些方法可以逐步细化的将系统内部的所有功能都分析得出这一逐步细化的过程也就是一个由“黑”变“灰”的过程, 可以得到抽象等级灰箱级上的目标系统逻辑模型在这一模型中目标系统的所有功能都被描述出来, 并且可按照功能将目标系统分成若干个子系统, 每个子系统完成一个任务, 如此不断细化直至最下层的子系统完成最具体的功能为实现这步工作我们可以使用一些工具, 如IPO图、HC图等这样做提高了系统内聚性和降低了系统耦合性这时可以说目标系统的结构设计已经完成, 系统由哪些模块构成, 各模块之间的关系都已明确而且每个模块都已被最简化, 即每个模块只完成某一基本功能现在就可以进行由“灰”变“白”的过程了, 亦即根据前面得出的目标系统的总体结构为每个模块确定具体采用的算法和块内数据结构为把实现这些模块功能的算法描述出来, 可以利用一些表达工具 (例如结构化程序流程图、NS图等) 将这些算法表达出来最后根据这些算法并利用某种具体的结构化程序设计语言编制出实现目标系统功能的完整程序到这里就基本完成了整个系统的开发过程, 也就基本完成了由“黑”到“灰”再到“白”的过程.

下面结合一个采用结构化程序设计方法开发系统的具体实例来说明盒子理论思想在整个开发过程中的具体体现实例:某校教材科想开发一个微型计算机售书系统, 以解决人工发售教材手续繁琐, 且易出错的问题据了解, 学生购买学校教材的手续是:先找系办公室的张秘书开一个证明, 凭证明找教材科的王会计开购书发票, 向李出纳员交付书款, 然后到书库找赵保管员领书图2是这一过程的具体模型.

在去掉具体模型中的非本质因素后, 抽象出现实系统的逻辑模型, 见图3.

这时, 我们可将目标系统看作一个“黑箱”, 借助所得的现实系统的逻辑模型, 通过具体分析而得出这个“黑箱”的有效输入输出, 这样做是因为在计算机上实现的系统与现实系统是有区别的, 但它所能实现的基本功能应与现实系统的要求一致根据已了解到的情况, 可分析得出目标系统所需要的输入是购书单, 而输出是领书单至于按照书款收费、发书等一些工作仍须由人工完成这样可以得到目标系统的“黑箱模型”, 见图4.

现在我们要做的工作是从这个“黑箱模型”出发, 将它逐步地变灰, 也就是要把目标系统的所有功能都分析得出, 同时把实现各个功能的子模块的有关输入输出弄清楚具体的做法是将目标系统的“黑箱模型”作为售书系统的顶层数据流图, 接下来就用分层数据流图将目标系统的所有功能分析得出, 这一过程使“黑箱模型”变灰了, 详见图5.

这时我们就可以得知目标系统所包含的功能有哪些了, 见图6.

接着再采用画IPO图的方法将实现各个功能的子模块的有关输入输出及实现算法和有关数据结构详细的描述出来, 见图7.

当把所有模块都详尽描述清楚后, 利用结构化程序流程图等工具将算法具体化, 为最后编码做准备随后就可根据需要选择某种程序设计语言将目标系统具体实现到这里目标系统就由灰变白了, 也就是目标系统已经确确实实地实现了.

到此盒子理论思想在结构化程序设计过程的各个环节中的具体体现就呈现于此由于主要是为了探讨理论思想在具体开发中的体现, 故而就只偏重讲解思想的具体体现, 而将系统开发过程中的其它一些细节省略了, 比如数据库的设计、某些系统功能的扩充以及具体程序的开发等等.

4 结束语

盒子理论不仅对我们在认识事物、理解真理上给予深刻的启迪, 而且为我们揭示了人类认识事物、理解真理的过程, 同时也为我们提供了认识事物、理解真理的科学理论指导而 结构化程序设计在其的各个环节中无不体现着盒子理论的思想精要.

摘要:本文就盒子理论在结构化程序设计思想中的具体体现结合实例进行了分析.

关键词:盒子理论,结构化,程序设计,体现

参考文献

[1]王珊, 萨师煊.数据库系统概论 (第4版) [M].北京:高教出版社, 2006.

[2]谭浩强.C程序设计 (第3版) [M].北京:清华大学出版社, 2005.

[3]赵子都.黑箱、灰箱和白箱方法——系统辩识的理论基础[J].知识工程, 1992, (2) .

篇4:试论C中的结构化程序设计

关键词:程序设计;结构;C语言

中图分类号:TP312文献标识码:A文章编号:1006-8937(2009)08-0121-01

当前,计算机技术飞速发展,程序设计技术已从结构化程序设计技术向面向对象程序设计技术过渡,对一个规模较大的应用程序,总体框架是由面向对象程序设计构搭而成,而在局部实现时仍需采用结构化程序设计技术。C语言是一种很好的结构化程序设计语言,因此,在这里我想论述一下C中的结构化程序设计的方法。

结构化程序设计(STRUCTURED PROGRAMING,简称SP)的概念是由荷兰学者E·W.DIJKSTRA等人在20世纪60年代后期提出的。是以模块化设计为中心,将原来较为复杂的问题化简为一系列简单模块的设计,也就是将一个大的计算任务划分为一个个比较小的任务,这些小任务均由函数来完成。而函数既可以是C的标准库函数,也可以是自定义函数。在C中,一个具备一定规模的C程序往往是由多个函数组成,其中必有一个名为main的主函数,由main来调用其它函数,必要的话,其它函数还可以调用另外的函数。同一函数可以被一个或多个函数调用一次或多次。模块的独立性还为扩充已有的系统、建立新系统带来了不少的方便,因为我们可以充分利用现有的模块作积木式的扩展。

结构化程序设计的思想是一个程序的任何逻辑问题均可用顺序结构、选择结构和循环结构这3种基本结构来描述。顺序结构的程序流程是按语句的书写顺序依次执行;选择结构是对给定条件进行判断,根据判断结果决定执行两分支中的一个分支或多分支中的一个分支;循环结构是在给定条件成立的情况下,反复执行某个程序段。实现这些程序流程的语句都是流程控制语句。流程控制语句在程序设计中起着重要的作用,通过三种基本控制结构使结构化程序具有唯一的入口和出口,没有死循环,而且程序的静态形式与动态执行形式之间具有良好的对应关系 。在C语言中,有4种语句是顺序执行的:①空语句,光有一个分号“;”,作为语句结束符,它表示什么也不做。②表达式语句,表达式后面加一个分号,表达式语句主要有3种:赋值语句;自加减运算符构成的语句;逗号表达式语句。③函数调用语句,它是由一个函数调用加上一个分号组成的。④复合语句,由“{”和“}”把一些变量说明和语句组合放在一起,,又称为语句块。选择语句有if语句和switch语句。循环语句有for,while和do-while语句以及一些辅助流程转向语句如continue,break,goto等。顺序结构,选择结构和循环结构共同作为各种复杂程序的基本构造单元,由这三种结构经过反复嵌套构成的程序称为结构化程序,也就是说,结构化程序是由上述三种基本结构组成的。但如果在编程过程中无限制地使用转移语句(goto),会使程序的控制流程强制性地向前或向后跳转而导致程序的流程无序可循,结构杂乱无章。结构化构造减少了程序的复杂性,提高了可靠性、可测试性和可维护性,使用少数的基本结构,就可使程序逻辑结构清晰,易读易懂,并且容易验证程序的正确性。对一个初学计算机语言的人来说,最重要的就是要有正确的程序流程概念,不仅要懂得而且要灵活应用。由此可见,用结构化方法设计的结构是清晰的,有利于编写出结构良好的程序。因此,结构化程序设计方法的主要原则可以概括为自顶向下,逐步求精,模块化,限制使用goto 语句。将程序设计针对的问题进行分解,直到分解到对应于一个个功能更简单,又独立的模块,每个模块再分解到上述3种基本程序结构。

实质上,结构化程序设计主要强调的是程序。程序=算法+数据结构+程序设计方法+语言工具和环境,其中算法是灵魂,是解决“做什么”和“怎么做”的问题;数据结构是加工对象;语言是工具;编程需要采用合适的方法。具体解决问题包含的步骤:分析问题,找出解决问题的模型;根据模型设计出适合计算机特点的处理方法即算法;进行编程程序,以实现算法;上机编辑(.c)、编译(.obj)、连接(.exe)、运行所编制的程序,直到得出正确结果;对结果进行分析,整理出文字材料。

现在人们已经认识到,程序设计的任务不只是编写出一个能得到正确结果的程序,还应考虑程序的质量。否则将会使程序质量低下、可靠性差、开发周期长、维护费用高——这也就是我们平常说的“软件危机”,它会严重阻碍计算机应用的发展。由于大多高级语言都支持结构化程序设计方法,其语法上都含有表示三种基本结构的语句,所以用结构化程序设计方法设计的模块结构到程序的实现是直接转换的,只需用相应的语句结构代替标准的控制结构即可。

参考文献:

[1] 刘明军,韩玫瑰.C语言程序设计[M].北京:电子工业出版社,2007,4.

篇5:结构化程序设计

“第一、面霸满街都是,面试指导书籍更不用说,无论是学生也好,还是那些职场人士也罢,都会在网络上或者书店里,去找面试的书籍来应付面试,所以,回答这两个问题,绝对倒背如流,答案绝对雷同,第二、这样的提问,根据刚才我之前跟你说过的个性化面试,我们知道通过这两道面试题你就根本区别不出来什么是高绩效和低绩效,什么是符合我们公司价值观的。所以,问这两道题简直是浪费时间。”前辈的解释让我有一种被当头一棒的感觉,只不过被打得更加困惑了。前辈说的是真的是那样的吗?如果真如他所说,问应聘者这两道题是浪费时间,那么为什么现在有那么多HR在用?不是说存在即合理吗?为什么那么多HR都在用的东西在前辈看来却是浪费时间?……一连串的问题萦绕在我的脑海里,真想将这些疑惑告诉前辈,但我还是想自己得到答案。回到家里,我又认真的将前辈的话回想了几遍,最终明白了他是对的。想想自己面试的经历就知道这两道面试题真的是在浪费双方的时间。我们都知道,应聘者在回答面试官提出的问题时都会有一种社会称评心理,即应聘者的答案带有明显的倾向性,这种倾向性会受到面试官的影响。也就是说面试官想要什么答案,应聘者就会自觉或不自觉地给出什么答案。如此一来,面试就失去了原有的意义。其实,很多面试官问这两道题的初衷不外乎想考察应聘者的语言表达能力以及对自我的认识是否客观、正确,但事实证明,这两道面试题看起来并不那么有效。如何避免设计无效的面试问题呢,这就需要我们明白面试的目的是什么?公司面试的目的就是要找到符合公司价值观、能创造高绩效的人。这就要求我们在面试题目必须做到个性化、差异化,避免计那些废话问题,没有意义的问题。实际上,有三种问题不能设计出来成为面试问题的:

第一种:不提与诱导性行为相关的问题。只有求职者的回复能看出其优缺点和态度时,提问才有效。正因如此,如果每个行为面试题都暗示,求职者必然表现好的一面,隐藏坏的一面。什么意思,就是说我们在设计行为面试题的时候,经常会不自觉地去诱导、引导应聘者回答出来我们期望的答案!这种现象在没有经验的面试官身上更明显。在这里给大家举个例子:“请你告诉我,最近一次你面临困难的时候,必须调整自己来适应的案例,你是怎么做的?”当那些有丰富面试经验的应聘者在回答这一问题时就会给出我们潜意识里想要的那个答案,但这个答案有时候并不是我们需要的。

第二种:不提假设性的问题。我们都知道,假设性的问题一般都是“如果……你怎么办(做)?”这类的问题,关键就是因为是假设的,不是真

的,那么,你就得到答案也是虚拟的,但实际上应聘者遇到这样的情况会怎么做,我们也很难知道。

第三种:不要设计没有差异化得问题。要知道,公司选人不是学校考试,大家的题型都是一样的,我们也不需要满分,我们需要的是那些符合公司价值观又能创造高绩效的人。因此,我们的面试题必须做到根据不同的应聘者以不同的提问方式来面试。

我们知道了哪些问题不能作为面试题目,那么我们又该设计怎样的面试题目才有效呢?我感觉首先需要确定某一种岗位产生高绩效的情形有哪些、需要怎么样的技能,从而在采取行为面试法时可以以不同的方式来提问。在这里要提示三点:第一、我们所设计的面试题目必须确保应聘者听了之后认为没有固定答案,正如没有结局的结局是最好的结局。

第二,设计完面试题目之后必须进行一定样本的试测以确保面试题目的效度。选择样本的时候一定要选择那些符合公司价值观又能创造高绩

效的员工,之所以这样做主要是基于两点:一是让你自己更加地对自己设计的问题进行完善,变得有信心;二是通过他们的回答,你就会找到正能量和负能量的回答之间的区别,那么,就方便你判断了。就容易得出评价标准。

第三,在提问题的时候,在语言设计上,别说什么“麻烦你告诉我……”之类的话,而是“能不能告诉我……”之类的用词。这样用模糊的

篇6:分支结构程序设计教案

一、教学目标 1.知识与技能目标

(1)理解程序的分支结构。(2)了解编程思路。2.过程与方法目标

(1)借助多媒体教学,强化学生的理解力和注意力。(2)能根据问题设计界面和编写程序。3.情感、态度与价值观目标

(1)让学生从无到有的探索过程中感受成功的喜悦。(2)培养学生探究精神与独立操作能力。

二、教学重点和难点 1.教学重点:

使用visual basic语言的条件语句来实现分支结构,从而解决实际问题。

2、教学难点:

理解程序中流程的代码描述。

三、教学方法

情境教学法、讲授法、任务驱动法

四、教学准备

1、教学环境。多媒体网络教室。

2、教学资源。

学生用机需要安装好visual Bastc语言环境。任务卡

五、教学过程

1.创设情境,导入新课

ppt演示导出课题“分支结构”通过链接到“体型判断”小程序,然后让同学们自己推荐同学来测试是否偏胖或偏瘦或正常。学生的兴趣度很高,积极的配合。

设计意图:引起学生兴趣,激发学生的学习热情,点名课题。2.讲授新课

(1)给出标准体重的计算公式,并简介如何评判体型。

(2)列举生活中需要进行条件选择的例子来讲解,帮学生理解分支结构程序设计的概念。(3)关系表达式和逻辑表达式的简介。(4)画出if语句流程图,了解简单的if语句。

(5)教师操作“体型判断”的案例,介绍框架控件的使用,编写部分程序,回忆旧知。

设计意图:师生共同构思,写出“体型判断”源程序,让学生对分支结构的理解更深刻。

3.布置作业,巩固提高

以书本上的典型案例“体型判断”让学生操作,有不懂的看书本或任务卡。(巡回指导,及时帮学生解决操作过程中存在的问题)

4.归纳总结,加强记忆

先让学生们归纳总结本节课所学的内容,然后教师总结,让学生有一个更深刻的印象,并强调应注意的几个问题。

设计意图:课堂小结的目的是强化认识,可以把课堂传授的知识尽快地转化为学生的知识;简单扼要的课堂小结,可使学生更深刻地理解分支结构程序设计在实际生活中的应用。

六、课后反思

篇7:结构化综合布线系统的设计与施工

。它能适应任何大楼或建筑物的布线系统。其代表产品是建筑与建筑群综合布线系统(Premises Distribution System, 缩写PDS)。另外,还有两种先进的系统,即智能大楼布线系统(IBS)和工业布线系统(IDS)。它们的原理和设计方法基本相同,差别是PDS以商务环境和办公自动化环境为主。

PDS一般采用模块化设计和物理分层星型拓扑结构,传输语音、数据、图像以及各类控制信号。

PDS的结构可分6个独立的子系统(模块)。

1.工作区(终端)子系统(WORK AREA SURSYSTEM)

工作区布线子系统由终端设备到信息插座的连线(或软线)组线,它包括装配软线、连接器和连接所需的扩展软线,并在终端设备和I/O之间搭桥,信息插座有墙上、地上、桌上、软基型多种,标准有RJ45/RJ11的单、双、多孔等各种类型.---bianceng.cn(学电脑)

2.水平布线子系统(HORIZONTAL SUBSYSTEM)

水平布线子系统将电缆从楼层配线架连接到各用户工作区上的信息插座上,一般处在同一楼层。通常可以采用5类8芯4对双绞线,符合或超过EIA/TIA一568标准

3.垂直干线子系统(RISER BACKBONE SURSYSTEM)

垂直干线子系统指各楼层配线架与主配线架间的大对数多芯铜缆或光缆组成,或二者混用,它是综合布线系统的神经中枢,其主要功能是将主配线架系统与各楼层配线架系统连接起来。

4.管理子系统(ADMINISTRATION SUBSYSTEM)

管理子系统由楼层配线架组成。其主要功能是将垂直干缆线与各楼层水平布线子系统相连接。布线系统的优势和灵活性主要体现在管理子系统上,只要简单地跳一下线就可完成任何一个结构化布线系统的信息插座以对任何一类智能系统的连接,极大地方便了线路重新布局和网络终端的调整。光纤连接时,要用光纤接续箱(LIU),箱内可有多个ST连接器安装孔,箱体箱内的线路弯曲设计应符合62.5/125微米多模光纤的弯曲度要求,光纤接头用STII,由陶瓷材料制成,最大信号衰减小于0.2dB,光耦合器可作为多模光纤与网络设备或光纤接续装置上的连接,配线架和光纤接续箱通常设在弱电井或设备间内,用来连接其它子系统,并对它们通过跳线进行管理

5.设备间子系统(EQUIPMENT SUBSYSTEM)

设备间子系统由主配线架和各公共设备组成。它的主要功能是将各种公共设备(如计算机主机、数字程控交换机、各种控制系统、网络互连设备)等与主配线架连接起来。该子系统还包括电气保护装置等。

6.建筑群向连接子系统(CAMPUS BACKBONE SUBSY5TEM)

篇8:结构化程序设计

计算机技术的应用在我国各个领域发展迅速,为了适应知识经济和信息产业发展的需要,操作和应用计算机已成为人们必须掌握的一种基本技能。许多单位部门已把掌握一定的计算机知识和应用技能作为干部录用、职务晋升、职称评定、上岗资格的重要依据之一。鉴于社会的客观需求,《Visual Foxpro程序设计》作为许多高等院校的非计算机专业公共基础课程之一,又是全国高校计算机等级考试的语言之一,使用非常灵活、实用,通过对历年的计算机等级考试情况调查,绝大部分学生对程序设计以及数据库部分感觉到十分吃力,无从下手,失分率高,特别是其中的结构化程序设计,是学习计算机编程技术的基础,但涉及的程序设计方法和数据算法很复杂,对于初学者来说是比较难的一章内容。针对这种情况,更加要从以前的教学方法以及教学手段进行研究分析,整合出一套合理有效的教学实践措施,让同学们真正的了解VF结构化程序语言的语法,算法以及编写方式的内涵,从而使同学们在等级考试中更有自信地去面对这部分题目,保证比较高的正确率,提高考试成绩,同时通过不断地探索新的教学方法与教学模式,才能更有效地调动学生的学习VF的兴趣,培养他们的程序设计能力,同时为后续课程的学习打下基础,相应提高了教学质量和教学效率。

2、教学经历中的具体体会

由于该课程在大部分高等院校都有一定的历史教学而且主要是针对非计算机专业学生开设的,大部分任课老师在教学过程中普遍都总结了一些教与学过程中存在的大大小小的问题,共性十足,同样这里主要也是从过去几年的教学经历进行总结,采纳每一堂课当中学生反映良好、自我评价较高的教学细节以及平时试验指导心得,同时进一步探索教学方法和手段,通过制定的教学方法的使用目的、实施过程、实施效果详细计划表,并且结合我院的教学硬件情况、师资队伍结构、学生知识基础构建情况,采取一定的教学技巧,争取在以前的基础上得到认可和有所创新,并在这里作如下总结。

2.1 注重程序概念、语法精讲的细节

对于非计算机专业学生来说,绝大多数在学习本课程之前是没有任何计算机编程语言和程序设计基础的,所以核心内容的精讲是非常有必要的。首先是对某些概念的精讲,比如说结构化程序设计的定义,那么一开始就得把程序结构设计和程序设计思想提出来,并分别作出解释,程序结构设计包括顺序、分支、循环三种结构,用N-S图描绘出来。程序设计思想在整个程序的构思中采用自顶向下、逐步求精、模块化的步骤去分析问题。例如给出100以内的所有正整数,求其中的所有素数。问题分析:⑴输入1到100给x1到x100;⑵将其中的素数找出来(或者将非素数除去);⑶打印全部素数。这3部分分别用A、B、C表示,因此主模块如下:

A:输入100个数给x1到x100

B:将其中的素数找出来

C:打印全部素数

现在我们对A进行分析:输入100个数给x1到x100,只要1个循环语句即可完成;对B进行分析:用1个循环对每一个正整数进行判断是否是素数,若不是素数,则将该数清除;对C进行分析:当B循环结束后,进行下一次A循环之前将是素数的数字打印出来,然后再画出各自的N-S图,这样让学生听起来容易,强调解决实际问题的思路,淡化操作步骤,效果也很好。其次,注意某些语法上的细节,哪怕是一句简单的命令里的格式、功能,一个关键词,甚至一个运算符都要讲清楚、讲明白,这样才不会让学生犯一些明显的常规错误。例如,i=j和if i=j中的"=",前一个是赋值语句,后一个是分支结构中的判断条件,前一个中的"="运算方向是从右往左进行传送变量的值,它是赋值运算符,两个变量如果交换位置那么赋值的方向就改变了,当然在程序中的作用就不同了,最终导致程序出现错误,而判断条件中的"="实际上是一个关系运算符,用来验证左右两边的变量值是否相等,两个变量交换位置也不会影响判断的结果,所以对于一些重要的知识点一定要讲清讲透,这样在同学们刚开始编写程序的时候能从中得到体会,慢慢摸索,加深编写方式的印象,减少一些不必要的错误,这个对他们加深程序的了解以及激发编写兴趣起着很大的帮助。

2.2 适当简化程序编写步骤和转换程序设计思想

大部分程序设计题目对于非计算机专业学生来说,要求并不是很高,有着一些固定的算法套路和结构设计模式,而且编写的代码也不会很长,但是总有个别现象需要引起注意的地方,这就考察学生对程序结构本身的理解,所涉及数学问题的了解程度以及逻辑思维能力。比如:对自然数,编程求取[121, 140]之间的弦数的个数。有些同学会这样去编写:

最终显示的结果为12,但是正确的答案为8,为什么会出现错误,错在哪,明明循环嵌套都没问题,也提示结果输出,有些同学冥思苦想也不知道所以然,他没有想到的是弦相同的情况下,勾股数有多种组合,这个就体现了对数学问题没理解透彻,一味去追求一个完美的答案,如果要只显示最终的正确答案,还必须把if c=m (m在之前赋值为[121, 140]以外的自然数);exit;endif m=c;放到程序的n=n+1语句前面,所编写的代码为替换消除重复的弦的个数,但这样也就增加了程序编写的难度,有时候更是增加算法的复杂度,有些同学也根本没想到这一步,为了不让学生感到为难的情绪,增强他们的自信心,可以简化一些程序的步骤,像刚才新加入的代码省略,n=n+1和最后?n也省略,只在分支判断条件中编写?a, b, c,这样的好处是从列出的a、b、c组合情况中看结果,重复的部分只计算一个,同时同学们也可以从中分析出弦相同勾股可以不同的问题来,恍然大悟而又恢复自信。另外,一些程序设计思想的相互转换能够使学生对程序本身的内涵和特点有深入、透彻的了解,增加结构化程序编写的灵活性和熟练程度,并对程序结构有着一些错误理解的学生起到正确指导、帮助纠正的作用,达到潜移默化的效果。例如:求自然数100到1000内的素数的个数,两种编写方式如下:

第二种方式中增加一个判断标志flag,设计思路明确,更有助于学生理解,相反可能对第一种编写方式不懂,那么从中可以了解到学生根本对程序结构没搞清楚,对控制流程没有掌握,只会死板硬套,通过反馈,就可以在教学中详细演示程序的流程动向,讲清楚程序结构的理念,有助于培养学生空间转换意识,独立思考和分析问题的能力。

2.3 单元案例传授带动综合多样化处理

VF结构化程序设计内容丰富,包括各种函数的使用,还有各种分割、递推、分析技术和设计思路,漫无目的的去讲授只会增加程序的难度,加重学生对程序理解的负担,教学效果也会明显降低。通过单元案例讲授,以点带面,触类旁通,以某些实际问题作为典型实例,逐步分门别类,把遇到的问题类型化,比如各位位数取法类、整除与余数类、素数类、数列类、勾股与组合类等等,这样形成良好的循序渐进的学习途径,更加有利于学生对知识重点、难点的掌握,然后在这个基础之上进行综合多样化处理,培养学生运用多种思路去设计编写程序,例如:编程求所有数字的和为16的四位数的个数,可以运用各位位数取法以及组合关系等单元案例去完成程序的编写:

通过典型问题的思考再进行串联方式的处理,并加上强化实践训练,培养学生编程能力的思维方式,激发他们的学习兴趣有很大的帮助,同时总结出其中的规律,更加有利于学生的复习和备考。

2.4 养成良好的编程风格和习惯

许多人认为程序只是给机器执行,而不是供人阅读的,所以只要程序逻辑正确,能为机器理解并依次执行就足够了。至于"风格"如何无关紧要,很多学生在编写程序的时候出现语法错误、嵌套错误就是由于没有养成这种严谨的习惯而造成的,而且对于别人去指导、修改程序相对而言要花费更多的时间去阅读,所以在讲课以及平时实践训练中,应当强调程序的规范化,在编写程序时多化些工夫。为了使程序便于阅读、维护和修改,讲求程序的风格,养成良好的程序设计风格是很必要的,这将大量地减少人们读程序的时间,从整体上看,效率是高的。

2.5 开展趣味知识讲座

专题讲座内容紧密联系实际,围绕学生们中易出现的错误问题,逐一解决。首先从宏观对程序设计的理论了解,再到微观上题目的命题特点和解题技巧,做系统的讲解。讲座把理论和实际有机结合,并采用语言简洁形象生动的教学风格,使学生们思维积极运作起来,领悟该题型的特点,在轻松和谐的气氛中科学有效的掌握。

3、结束语

按照学校"知识传授,知识创新,知识物化"的教学定位,主要目标是使学生初步了解计算机,建立起程序设计的概念;通过学习使用VF语言编写程序,初步掌握程序设计的基本方法和技巧,养成良好的程序设计风格;初步学习结构化程序设计的思想和方法;结合上机实践,使学生对程序设计过程有一个比较全面地、系统地了解;具备应用程序设计解决相关专业领域内实际问题的基本能力。

摘要:通过对《Visual Foxpro程序设计》课程章节教学方法和手段问题进行探讨, 激发非计算机专业学生利用Visual Foxpro (以下简称VF) 语言熟练编写程序的能力, 拓展他们的逻辑思维, 技巧转换意识, 培养独立思考问题、分析问题和解决问题的能力, 并养成良好编写程序代码的风格。

关键词:Visual Foxpro,结构化程序设计,教学方法和技巧

参考文献

[1]陈海波, 王申康.新编程序设计方法学 (第二版) [M].浙江:浙江大学出版社, 2006.

[2]谢艳春.非计算机专业VFP程序设计教学的思考与探讨[J].长沙铁道学院学报, 2009, 10 (3) :130-131.

[3]张梨宁, 苗哲, 周宇.基于多种教学方法优势互补的《C程序设计》课堂教学[J].电脑知识与技术, 2008, 4 (8) :2284-2285.

篇9:结构化程序设计

关键词:Visual Basic 6.0;结构化;程序设计

Visual Basic 6.0是编程入门者容易掌握和使用的编程语言。VB虽然采用面向对象的编程方法,但是在具体的过程内部,仍然要用到结构化程序设计的方法来对其流程进行控制。结构化程序设计中共有三种结构:顺序结构、选择结构、循环结构,这三种结构贯穿了编程语言学习的始终。所有的复杂程序都可以由这三种结构通过组合、嵌套来完成。

一、常见问题解析

在选择结构的讲解过程中,有不少学生说,教师讲课能听懂,流程图和例题也可以看懂,就是一到了自己上機编写程序代码的时候就不知所措了,特别是编写具体作业的程序代码,测试运行的时候就经常出错,得不到正确结果,而且又找不到毛病。

要提高学生编程的正确率和准确性,需要:(1)教师要使用一些灵活的方法进行授课,了解学生的盲点和编程误区,及时进行点拨,帮助学生理解各种语句的执行流程,尤其是选择语句和循环语句,从而让学生顺利掌握重点和难点。(2)需要学生对Visual Basic语法规则和常用保留字熟悉,养成做好注释等良好的编程习惯。(3)需要学生能构建好语言框架,熟练掌握算法运用,并形成专业的编程思维。

二、在VB6.0中讲解结构化程序设计的方法

1.流程图的运用

VB的重点在思路、算法、编程构思和程序实现上,流程图是一种用图形来表示算法和解题思路的描述方法,对于初学者来说非常重要。它直观形象、容易理解,学生通过流程图可以掌握程序的走向,构建好程序的基本框架,这样就能把平时的知识如语法、函数、对象、事件等组织起来编出程序,从而达到正确的结果。

2.边讲边练,理论与实践相结合

上课时多和学生互动,每讲完一个小知识点后必须让学生自己动手做出来(上机操作),这样,每一个知识点学生都可以各个击破,然后教师可以把相关的知识点进行综合讲解和分析,让学生把所学的内容统一于结构化程序设计的主题。如果45分钟教师都在讲解,然后下节课再让学生上机操作的话,效果会很不理想。

3.养成良好的编程习惯

学生刚开始学习VB,要打好基础,需要留意每一个细微的小规则或习惯,好的习惯可以为以后编程省下很多麻烦。细节决定成败,注意每一个细节,养成良好的编程习惯,虽然一开始会有些烦琐,但可以为以后的编程省去很多查错和调试的时间,可以说磨刀不误砍柴工。

养成良好的编程习惯,尤其要注意:(1)多做注释。变量要加注释,程序构思也要有说明,这样不仅可以增强程序的可读性,还可以在编写注释时,进一步理清思路,查找到程序设计的缺陷和出现的漏洞,及时进行弥补和纠错。(2)机房安装VB的同时要装上MSDN(就是帮助),学生对函数、语法等的使用方法和功能有疑问时,可以自己获得帮助。

4.掌握调试程序的方法,学会运用系统的断点调试功能

在代码中设置断点是常用的一种调试方法。断点是告诉VB挂起程序执行的一个标记,当程序执行到断点处即暂停程序的执行,进入中断模式,此时可以在【代码】窗口中查看程序内变量、属性的值。

学生在自己完成作业时,程序编好了,经常出现结果不正确,一运行就崩溃的情况,学生不知道在哪里出了问题,或者精确到哪一句,就可以在可疑的几句上设置断点,逐步执行。

当执行到断点所在的语句时,把鼠标移到当前语句的变量上,就会显示出此变量的值,学生通过观察这些值的变化,就能发现程序设计的错误和漏洞,进而改正错误。应该注意的是显示的变量的值是没有执行完当前语句的值,而不是执行完语句后变量的值。

5.示例和作业要贴合实际

为了让学生更好地掌握程序设计方法,教师示例和作业的安排要巧妙而合理,可以:(1)尽可能结合学生的实际情况,找他们感兴趣的话题和内容进行示范并安排作业,以此激发他们的学习兴趣。(2)示例和作业的安排要循序渐进。(3)示例和作业要有较强的针对性,可应用的语句和最优的语句要明确。

6.同一问题使用多种语句实现

在VB6.0中,使用程序设计处理某一问题时,可以让学生用多种不同语句来编程,如选择结构可以用if嵌套语句,多分支控制结构Select Case语句,还可以用Iif函数;需要用到循环结构的时候,可以使用For循环,Do循环,While循环,甚至GoTo语句。这样学生把各个语句的共同点和不同点都掌握了,在以后的编程中就会选择最合适的语句,灵活运用嵌套等多种方法来实现,而不再盲目编程。

7.培养结构化的程序设计思维

使用计算机编制程序解决现实生活中的实际问题,需要在课程讲解时,有意识地培养学生使用计算机的思维模式来对问题进行分解和处理,这样才能编制出逻辑合理、条理清楚、层次分明的结构化程序代码。

参考文献:

[1]沈大林.Visual Basic程序设计案例教程[M].北京:中国铁道出版社,2004.

上一篇:隧道(地下结构)总结下一篇:高中生物优秀教案