ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:71.07KB ,
资源ID:16391240      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16391240.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(程序设计语言基本概念与试题Word文档下载推荐.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

程序设计语言基本概念与试题Word文档下载推荐.docx

1、Squarex:=xx函数定义2:Plustwox:= PlusonePlusonex函数定义3:factn:=if n =0 then 1 else nfactn-14逻辑型程序设计语言逻辑型程序设计语言是一类以形式逻辑为基础的语言,其代表是建立在关系理论和一阶谓词理论基础上的Prolog(Programming in Logic)。Prolog程序是一系列事实、数据对象或事实间的具体关系和规则的集合。通过查询操作把事实和规则输入数据库。用户通过输入查询来执行程序。在 Prolog中,关键操作是模式匹配,通过匹配一组变量与一个预先定义的模式并将该组变量赋给该模式来完成操作。三、程序设计语言的

2、基本成分1数据成分数据成分指的是一种程序语言的数据类型。(1)常量和变量按照程序运行时数据的值能否改变,将数据分为常量和变量。变量具有左值和右值,在程序运行过程中其右值可以改变;常量只有右值,在程序运行过程中不能改变。(2)全局变量和局部变量按照数据的作用域范围,可分为全局变量和局部变量。系统为全局变量分配的存储空间在程序运行的过程中一般是不改变的,而为局部变量分配的存储单元是动态改变的。(3)数据类型按照数据组织形式不同可将数据分为基本类型、用户定义类型、构造类型和其他类型。基本类型:整型(int)、字符型(char)、实型(float、double)和布尔类型(bool)。特殊类型:空类型

3、(void)。用户定义类型:枚举类型(enum)。构造类型:数组、结构、联合。指针类型:type *。抽象数据类型:类类型。2运算成分程序语言的运算成分指明允许使用的运算符号及运算规则。大多数高级程序语言的基本运算可分成算术运算、关系运算和逻辑运算,有些语言如C(C+)还提供位运算。3控制成分控制成分指明语言允许表述的控制结构。(1)顺序结构顺序结构用来表示一个计算操作序列,从第一个操作开始,按顺序依次执行后续的操作,直到最后一个操作,如图2-1所示。(2)选择结构选择结构提供了在两种或多种分支中选择其中一个的逻辑,如图2-2所示。图 2-1 顺序结构示意图图 2-2 选择结构示意图(3)循环

4、结构循环结构描述了重复计算的过程,通常由三部分组成:初始化、循环体和循环条件。主要有两种形式:while型循环结构和do-while型循环结构,如图2-3所示。(4)C(C+)语言提供的控制语句复合语句复合语句用于描述顺序控制结构。复合语句是一个整体,要么全部执行,要么一条语句也不执行。 if语句和switch语句if语句实现的是双分支的选择结构,其一般形式为:1. if(表达式) 2. 语句1; 3. else4. 语句2;需要注意的是if和else的匹配关系。switch语句描述了多分支的选择结构,其一般形式为:1. switch(表达式)2. case常量表达式1:语句1;3. case

5、常量表达式2:语句2;4. 5. 6. 常量表达式n:语句n;7. default:语句n+1;8. 9. 循环语句主要指while语句、do-while语句和for语句。 while语句描述了先判断条件再执行循环体的控制结构,其一般形式为:1. while(条件表达式)2. 4. 循环体语句;6. do-while语句描述了先执行循环再判断条件的控制结构,其一般格式是:1. do2. 3. 循环体语句;4. while(条件表达式);for语句的基本格式是:1. for(表达式1;表达式2;表达式3;)循环体语句;可用while语句等价地表示为:1. 表达式1;2. while(表达式2)4

6、. 表达式3;5. 4函数函数是程序模块的主要成分,它是一段具有独立功能的程序。函数的使用涉及三个概念:函数定义、函数声明和函数调用。函数定义函数定义包括两部分:函数首部和函数体。函数定义描述了函数做什么和怎么做。其一般格式是:1. 返回值类型函数名(形参表)3. 函数体;4. 5. 函数声明函数应该先声明后引用。如果程序中对一个函数的调用在该函数的定义之前进行,则应该在调用前对被调用函数进行声明。函数原型用于声明函数。函数声明的一般形式为:1. 返回值类型函数名(形参表);函数调用当在一个函数(称为主调函数)中需要使用另一个函数(称为被调函数)实现的功能时,便以名字进行调用,称为函数调用。函

7、数调用的一般形式为:1. 函数名(实参表);四、值调用和引用调用在C程序的执行过程中,通过函数调用实现了函数定义时描述的功能。函数体中若调用自己,则称为递归调用。C和C+通过传值方式将实参传递给形参。调用函数和被调用函数之间交换信息的方法主要有两种:一种是由被调函数把返回值返回给主调函数,另一种是通过参数带回信息。函数调用时实参与形参间交换信息的方法有值调用和引用调用两种。(1)传值调用(Call by Value)若实现函数调用时实参向形式参数传递相应类型的值(副本),则称为是传值调用。C语言采用的是传值调用的方式。传值调用最显著的特征是被调用的函数内部对形参的修改不影响实参的值。传值调用的

8、参数传递和被调用函数内对参数的使用主要按下述原则:函数定义时形参被当作局部变量看待,在函数被调用时为形参分配存储单元;调用函数前,首先计算实参的值,调用时将实参的值放入形参的存储单元;被调用函数内部对形参单元中的数据进行直接访问。(2)引用调用(Call by Reference)引用是C+中增加的数据类型,当形式参数为引用类型时,形参名实际上是实参的别名,函数中对形参的访问和修改实际上就是针对相应实际参数所作的访问和改变。实际上,引用调用是将实参的地址传递给形参,使得形参的地址就是对应实参的地址。引用调用的参数传递和被调用函数内对参数的使用主要按下述原则处理:调用时将实参的地址放入形参的存储

9、单元;被调用函数内部对形参单元中的数据(地址)进行间接访问。怎么考【试题 2-1】20XX年 11月真题 20若C程序的表达式中引用了未赋初值的变量,则( 20)。(20)A. 编译时一定会报告错误信息,该程序不能允许B. 可以通过编译并运行,但运行时一定会报告异常C. 可以通过编译,但链接时一定会报告错误而不能运行D. 可以通过编译并运行,但运行结果不一定是期望的结果分析:全局变量和静态局部变量在定义时如果没有初始化,编译时会自动初始化为0;而普通的局部变量,如果没有初始化,则其值是一个随机数。在 C程序表达式中,只要引用的变量定义了,就可以通过编译并运行,但运行结果不一定是期望的结果。【答

10、案:d】【试题 2-2】20XX年 11月真题 49、50函数t、f的定义如下所示,其中, a是整型全局变量。设调用函数t前a的值为5,则在函数中以传值调用( call by value)方式调用函数f时,输出为(49);在函数t中以引用调用(call by reference)方式调用函数时,输出为(50)。(49)A. 12 B. 16 C. 20 D. 24(50)A. 12本题主要考查函数调用时参数的传递方式。如果采用传值方式调用,则形参值的变化不会影响实参;而采用引用方式调用,则形参值的变化直接反映到实参。本题中如果在函数t中采用传值方式调用函数f,a的值传给形参r,在函数f中,a的

11、值变为6,r的值为10并返回赋给变量x,由于a是全局变量,退出函数f后a的值依然为6,所以函数t的输出结果为16。如果函数t采用传值方式调用函数f,则形参r就是对实参a的引用,对r的修改就是对a的修改,在执行a=r+1时,a和r的值都变为6,执行r=r*2,a和r的值都变为12,并将r的值返回给x,因此函数t的输出结果为24。(49)B (50)D】【试题 2-3】20XX年 11月真题 57在KMP模式匹配算法中,需要求解模式串 p的next函数值,其定义如下(其中, j为模式串字符的序号)。对于模式串“abaabaca”,其next函数值序列为( 57)。(57)A. 01111111 B

12、. 01122341 C. 01234567 D. 01122334模式串“abaabaca”的next函数值序列如下。当j=1时,next1=0;当j=2时,k不存在,next2=1;当j=3时,不存在满足条件的k,next3=1;当j=4时,p1=p3=a,存在k=2,使得 p1 p2 Lpk .1= pj.k +1 pj.k +2 L pj.1 ,故next4=2;当j=5时,存在k=2,使得 ,即p1=p4=a,故next5=2;当j=6时,存在k=3,使得p1p2 =p4p5 ,故 next6=3;当j=7时,存在k=4,使得p1p2 p3 =p4p5 p6 ,故next7=4;当j

13、=8时,不存在满足条件的k值,故 next8=1。B】【试题 2-4】20XX年 5月真题 22若一种程序设计语言规定其程序中的数据必须具有类型,则有利于( 22)。在翻译程序的过程中为数据合理分配存储单元对参与表达式计算的数据对象进行检查定义和应用动态数据结构规定数据对象的取值范围及能够进行的运算对数据进行强制类型转换(22)A B C D数据是程序操作的对象,类型说明数据占用的内存和存放形式。数据类型不仅可用于在基础机器中完成对值得布局,还可以用于检查表达式中对运算的应用是否正确。【试题 2-5】20XX年 5月真题 48以下关于高级程序设计语言翻译的叙述中,正确的是( 48)。(48)A

14、可以先进行语法分析,再进行词法分析B在语法分析阶段可以发现程序中的所有错误C语义分析阶段的工作与目标机器的体系结构密切相关D目标代码生成阶段的工作与目标机器的体系结构密切相关对于高级程序设计语言,编译程序会把编写的源程序翻译成与之等价的目标程序。编译程序的工作过程分为:词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成。语法分析要在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位。可见,要先进行词法分析,然后进行语法分析,故选项A错误。在语法分析阶段能发现语法错误,但不能发现语义错误,因此选项B错误。语义分析阶段主要检查源程序是否包含静态语义错误,并收集类型

15、信息供后面的代码生成阶段使用,可见,语义分析阶段工作与与目标机器的体系结构关联不大,选项C错误。目标代码生成阶段的任务是把中间代码变化成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码,这个阶段的工作与具体的机器密切相关。 D】【试题 2-6】20XX年 5月真题 50传值与传地址是函数调用时常采用的信息传递方式,( 50)。(50)A在传值方式下,是将形参的值传给实参B在传值方式下,形参可以是任意形式的表达式C在传地址方式下,是将实参的地址传给形参D在传地址方式下,实参可以是任意形式的表达式分析:在传值方式下,是将实参的值传给形参,形参不能向实际参数传递信息;实参可以是表达式或常量

16、,也可以是变量或数组元素。在传地址方式下,是将实参的地址传给形参,实参和形参都指向同一个对象,被调用函数中对形式参数的修改实际上就是对实际参数的修改,可以实现数据的双向传递。实参必须是变量地址、数组名,不能是表达式或常量。形参就是形式参数,用一个变量来代表,不能是表达式。C】【试题 2-7】20XX年 11月真题 50以下关于汇编语言的叙述中,错误的是(50)。(50)A汇编语言源程序中的指令语句将被翻译成机器代码B汇编程序先将源程序中的伪指令翻译成机器代码,然后再翻译指令语句C汇编程序以汇编语言源程序为输入,以机器语言表示的目标程序为输出D汇编语言的指令语句必须具有操作码字段,可以没有操作数

17、字段汇编程序的功能是将会变语言所编写的源程序翻译成机器指令程序。汇编语言源程序语句可分为指令语句、伪指令语句和宏指令语句。指令语句汇编后产生相应的机器代码;伪指令语句指示汇编程序在汇编源程序时完成某些操作,汇编后不产生机器代码。【试题 2-8】20XX年 11月真题 64下面C程序段中count+语句执行的次数为(64)。for(int i=1;i=11;i*=2)for(int j=1;j11,不满足循环条件,循环结束。可以计算count+语句执行的次数为:1+2+4+8=15【答案:A】【试题 2-9】20XX年 5月真题 33程序的三种基本控制结构是(33)。(33)A过程、子程序分程序

18、 B顺序、选择和重复C递归、堆栈和队列 D调用、返回和跳转程序的三种基本控制结构是顺序结构、选择结构和重复结构。【试题 2-10】20XX年 5月真题 20函数调用时,基本的参数传递方式有传值与传地址两种,( 20)。(20)A在传值方式下,形参将值传给实参B在传值方式下,实参不能是数组元素C在传地址方式下,形参和实参间可以实现数据的双向传递D在传地址方式下,实参可以是任意的变量和表达式分 析:首先看A选项,传值方式下,对应的实参和形参是两个独立的实体,占用不同的内存单元,调用函数时,系统把实参值复制一份给形参,便断开二者的联系,形参值的改变对实参无影响。因此,“传值”是单向的,只能由实参传递

19、给形参。B选项,形参为传值方式下的简单变量,实参可以是与其同类型的常量、变量、数组元素或表达式。C选项,在传址方式下,函数调用时,系统将实参的地址传递给形参,即这时参数传递的不是数据本身,而是数据在内存中的地址。所以在函数被调用中,任何对形参的访问,都被认为是对形参的间接访问。实参与形参占用相同的存储单元,传递方式是双向的,形参值的改变将影响实参值。故C选项正确。D选项,形参为传址方式时,实参如果为常量或表达式,则传址无效,相当于传值方式。 C】【试题 2-11】20XX年 5月真题 22下面关于程序语言的叙述,错误的是( 22)。(22)A脚本语言属于动态语言,其程序结构可以在运行中改变B脚

20、本语言一般通过脚本引擎解释执行,不产生独立保存的目标程序CPHP、JavaScript属于静态语言,其所有成分可在编译时确定DC语言属于静态语言,其所有成分可在编译时确定脚本语言,又叫动态语言,是一种编程语言控制软件的应用程序。脚本语言与编程语言有很多相似地方,其函数与编程语言比较类似,也涉及到变量,它与编程语言最大的区别是编程语言的语法和规则更为严格和复杂一些。脚本语言一般都有相应的脚本引擎来解释执行,一般需要解释器才能运行。Python、JavaScript、ASP、PHP、PERL、Nuva都是脚本语言。另外,脚本语言是一种解释性的语言,它不像 CC+等可以编译成二进制代码,以可执行文件

21、的形式存在。【试题 2-12】20XX年 12月真题 21程序设计语言一般都提供多种循环语句,例如实现先判断循环条件再执行循环体的while语句和先执行循环体再判断循环条件的do-while语句。关于这两种循环语句,在不改变循环体的条件下,( 21)是正确的。(21)Awhile语句的功能可由do-while语句实现Bdo-while语句的功能可由while语句实现C若已知循环体的次数,则只能使用while语句D循环条件相同时,do-while语句的执行效率更高分 析:do-while语句的循环体至少执行一次,即执行1次,而while语句的循环体可以不执行,也可以执行n次,因此do-while语句的功能可由while语句实现。【试题 2-13】20XX年 5月真题 22下列叙述中错误的是( 22)。(22)A面向对象程序设计语言可支持过程化的程序设计B给定算法的时间复杂性与实现该算法所采用的程序设计语言无关C与汇编语言相比,采用脚本语言编程可获得更高的运行效率D面向对象程序设计语言不支持对一个对象的成员变量进行直接访问本题考查基本概念问题。C选项明显是错误的,脚本语言与汇编语言不是一个意义层面上的语言,而且汇编语言是接近计算机硬件的语言,运行效率是非常高的。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1