由机器语言到高级语言 程序编写和编译练习题答案解析

合集下载

大学计算机第6讲-由机器语言到高级语言-程序编写编译

大学计算机第6讲-由机器语言到高级语言-程序编写编译
X = X - Y; } Else {
X= X - Z; } X = X + Y; If X > Z { X = Y; } X = X - Z; If X>Y { X = X - Y; }
高级语言(程序)的基本构成要素 (4)分支结构?
语句与程序控制 分支 结构
X
315-30300
Y
50
Z
80
战德臣 教授
Harbin Institute of Technology
由机器语言到高级语言 (1)为什么需要计算机语言?
战德臣 教授
为什么程序编写越来越方便?
高级语言程序怎样才能被机器执行?
由机器语言到高级语言 (1)为什么需要计算机语言?
算法、计算机语言与计算机程序
步骤书写的规范、语法规则、标准的集合 是人和计算机都能理解的语言
“高级语言”怎样表达“程序”的要素?
高级语言(程序)的基本构成要素 (1)计算机语言程序的基本构成要素有哪些?
认识计算机语言程序
战德臣 教授
变量
保留字
“ 保留字”为编译器 识别和处理语句而确 定的一些特定符号
常量
K = 0;
For I =1 to 100 Step 1
{ If I<=50 && I > 30 语句 { K = K+I; }
计算机语言---汇编语言---汇编程序(编译器)
汇编语言程序处理过程
战德臣 教授
汇编 语言
用助记符号书写程 序的规范、语法规 则、标准的集合
是人和计算机都能 理解的语言
汇编语言 源程序
助记符号
转换规则
{ 助记符号,机器指令}

课后答案——C++语言程序设计教程(第二版)

课后答案——C++语言程序设计教程(第二版)

1.1习题1解答1.(1)机器语言是计算机直接理解执行的语言,由一系列(二进制)指令组成,其助记符构成了汇编语言;接近人的自然语言习惯的程序设计语言为高级语言。

(2)结构化程序设计方法主要内容有:自顶向下,逐步求精;面向对象方法将现实世界中的客观事物描述成具有属性和行为的对象,抽象出共同属性和行为,形成类。

(3)C++程序开发通常要经过5个阶段,包括:编辑,编译,连接,运行,调试。

首先是编辑阶段,任务是编辑源程序,C++源程序文件通常带有.c p p扩展名。

接着,使用编译器对源程序进行编译,将源程序翻译为机器语言代码(目标代码),过程分为词法分析、语法分析、代码生成3个步骤。

在此之前,预编译器会自动执行源程序中的预处理指令,完成将其他源程序文件包括到要编译的文件中,以及执行各种文字替换等。

连接器的功能就是将目标代码同缺失函数的代码连接起来,将这个“漏洞”补上,生成可执行文件。

程序运行时,可执行文件由操作系统装入内存,然后CPU从内存中取出程序执行。

若程序运行进程中出现了错误,还在需要对程序进行调试。

(4)对象与对象之间通过消息进行相互通信。

(5)类是具有相同属性和行为的一组对象的抽象;任何一个对象都是某个类的一个实例。

(6)多态性是指在一般类中定义的属性或行为,被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。

(7)面向对象的软件开发过程主要包括面向对象的方法分析、面向对象的设计、面向对象的编程、面向对象的测试和面向对象的维护。

(8)泛型程序设计是指在程序设计时,将数据类型参数化,编写具有通用性和可重用的程序。

(9)#include<iostream>是一条预处理指令(语句),在编译(或预处理)时由编译器(或预编译器)执行,其功能是将iostream文件包含(复制)到指令处。

(10)C++中使用cin作为标准输入流对象,通常代表键盘,与提取操作符>>连用;使用cout作为标准输出流对象,通常代表显示设备,与<<连用。

编译廖力习题答案

编译廖力习题答案

编译廖力习题答案1、编译过程中,语法分析器的任务不包括()A、分析单词是怎样构成的B、分析单词串是如何构成语句和说明的C、分析语句和说明是如何构成程序的D、分析程序的结构答案:分析单词是怎样构成的2、编写一个计算机高级语言的源程序后,到正式上机运行之前,一般要经过()这几步a、编辑b、编译c、连接d、运行A、abcdB、abcC、acD、ad答案:编译3、解释方式和编译方式的主要区别在于A、能否对源程序查错B、能否生成目标代码C、能否多用户运行D、机器资源利用率高低答案:能否生成目标代码4、若在C语言源程序中出现“&#&”,且不出现在引号和注释里,在编译时会()A、不报错B、语法分析时报错C、词法分析时报错D、代码生成时报错答案:词法分析时报错5、若在C语言程序中出现“aa11bb=123;”,且不出现在引号和注释里,在编译时会()A、词法分析时报错B、语义分析时报错C、生成中间代码时报错D、语法分析时报错答案:语法分析时报错6、面向机器的语言指的是()A、用于解决机器硬件设计问题的语言B、特定计算机系统所固有的语言C、各种计算机系统都通用的语言D、只能在一台计算机上使用的语言答案:特定计算机系统所固有的语言7、面向机器语言的特点是()A、程序的执行效率低,编制效率低,可读性差B、程序的执行效率高,编制效率高,可读性强C、程序的执行效率低,编制效率高,可读性强D、程序的执行效率高,编制效率低,可读性差答案:程序的执行效率高,编制效率低,可读性差8、编译程序是对()A、汇编程序的翻译B、高级语言的解释执行C、机器语言的执行D、高级语言的翻译答案:D满分:2分9、编译程序是一种()软件A、系统B、应用C、MISD、ERP答案:C您的回答:无得分:0分解题思路:无10、()不是编译程序的组成部分A、词法分析器程序B、代码生成程序C、设备管理程序D、语法分析程序答案:设备管理程序11、设有表达式a*b-c,将其中a*b识别为表达式的编译阶段是()A、词法分析B、语法分析C、语义分析D、代码生成答案:语法分析12、编译原理各阶段的工作都涉及到()A、表格管理B、语法分析C、出错处理D、代码优化答案:表格管理;出错处理13、程序语言一般分为()和()A、高级语言B、专用程序语言C、低级语言D、通用程序语言答案:高级语言;低级语言14、高级语言的翻译方式有()和()将高级语言源程序“翻译”成目标程序的方式有()。

第3章练习题(附参考答案)

第3章练习题(附参考答案)

第3章练习题参考答案一、判断题(正确Y,错误N)1.软件产品的设计报告、维护手册和用户使用指南等不属于计算机软件的组成部分。

2. 完成从汇编语言到机器语言翻译过程的程序,称为编译程序。

3. 有一种计算机系统允许多个用户同时使用,每个用户都感觉好象自己在“独占”该计算机一样,这样的系统称为“分时处理系统”。

4. 从应用角度出发,通常将软件分为系统软件和应用软件两类,数据库管理系统软件属于应用软件。

5. 计算机软件技术就是指程序设计技术,包括程序的设计、编码、调试和维护等。

6. BIOS,Windows操作系统,C语言编译器等都是系统软件。

7. 汇编语言是面向机器指令系统的,因此汇编语言程序可以由计算机直接执行。

8. 程序是软件的主体,单独的数据和文档一般不认为是软件。

9. 操作系统的处理器调度程序负责计算机中所有处理器的分配和回收。

10. .虚拟存储器其实就是外存储器。

11.语言处理系统中的连接程序是将多个分别编译或汇编过的目标程序和库文件进行组合。

12. 所谓系统软件,就是购置计算机时计算机供应商提供的全部软件。

13.计算机自举完成后,操作系统的所有程序常驻内存。

操作系统可以在任何计算机上运行。

15.在裸机上不能运行任何程序。

16.在Windows系统中每张片软盘和每个逻辑硬盘经过高级格式化后都有一个根目录区存在于盘中。

参考答案:1~10:NNYNNYNYNN 11~16:YNNNNY二、单选题1. 目前流行的很多操作系统都具有网络功能,可以作为一个网络操作系统,以下操作系统中不能作为网络服务器操作系统的是_______。

A. Windows 98 B. Windows NT ServerC. Windows 2000 Server D. UNIX2. 高级语言种类繁多,但其基本成分可归纳为四种,其中对处理对象的类型说明属于高级语言中的_______ 成分。

A.数据B.运算 C.控制D.传输3. 在下列常用的PC机软件中,编辑的文档(内容)能直接保存为图片类型(例如JPEG文件类型)的是。

编译原理第三章练习题答案

编译原理第三章练习题答案

编译原理第三章练习题答案编译原理第三章练习题答案编译原理是计算机科学中的重要课程之一,它研究的是将高级语言程序转化为机器语言的过程。

在编译原理的学习过程中,练习题是提高理解和应用能力的重要途径。

本文将为大家提供编译原理第三章的练习题答案,希望能够对大家的学习有所帮助。

1. 什么是词法分析?请简要描述词法分析的过程。

词法分析是编译过程中的第一个阶段,它的主要任务是将源程序中的字符序列划分为有意义的词素(token)序列。

词法分析的过程包括以下几个步骤:1)扫描:从源程序中读取字符序列,并将其转化为内部表示形式。

2)识别:根据预先定义的词法规则,将字符序列划分为不同的词素。

3)分类:将识别出的词素进行分类,如关键字、标识符、常量等。

4)输出:将分类后的词素输出给语法分析器进行进一步处理。

2. 什么是正则表达式?请给出一个简单的正则表达式示例。

正则表达式是一种用于描述字符串模式的工具,它由一系列字符和操作符组成。

正则表达式可以用于词法分析中的词法规则定义。

以下是一个简单的正则表达式示例:[a-z]+该正则表达式表示匹配一个或多个小写字母。

3. 请简要描述DFA和NFA的区别。

DFA(Deterministic Finite Automaton)和NFA(Nondeterministic Finite Automaton)是有限状态自动机的两种形式。

它们在词法分析中常用于构建词法分析器。

DFA是一种确定性有限状态自动机,它的状态转换是确定的,每个输入符号只能对应一个状态转换。

相比之下,NFA是一种非确定性有限状态自动机,它的状态转换是非确定的,每个输入符号可以对应多个状态转换。

4. 请简要描述词法分析器的实现过程。

词法分析器的实现过程包括以下几个步骤:1)定义词法规则:根据编程语言的语法规范,定义词法规则,如关键字、标识符、常量等。

2)构建正则表达式:根据词法规则,使用正则表达式描述不同类型的词素。

3)构建有限状态自动机:根据正则表达式,构建DFA或NFA来识别词素。

计算机处理问题的步骤

计算机处理问题的步骤

计算机处理问题的步骤一、选择题。

1. 计算机处理问题的第一步通常是()- A. 编写程序。

- B. 分析问题。

- C. 输入数据。

- D. 执行程序。

- 答案:B。

- 解析:在计算机处理问题之前,首先要对问题进行分析,明确问题的需求、目标、已知条件等,然后才能进行后续的步骤,如编写程序等。

编写程序是根据分析的结果来进行的,输入数据是在程序编写好之后进行的操作,执行程序更是后续步骤,所以第一步是分析问题。

2. 计算机执行程序时,将程序代码和数据从外部存储设备调入()- A. 运算器。

- B. 控制器。

- C. 内存。

- D. 输出设备。

- 答案:C。

- 解析:计算机在执行程序时,首先要将程序代码和相关数据从外部存储设备(如硬盘)调入内存。

因为运算器主要进行算术和逻辑运算;控制器负责控制计算机各部件协调工作;输出设备是用于输出结果的,而内存是计算机用于暂时存储数据和程序的地方,便于CPU快速访问,所以是调入内存。

3. 在计算机处理问题过程中,以下哪个部件负责对数据进行算术和逻辑运算?()- A. 存储器。

- B. 运算器。

- C. 控制器。

- D. 输入设备。

- 答案:B。

- 解析:运算器的功能就是对数据进行算术运算(如加、减、乘、除等)和逻辑运算(如与、或、非等)。

存储器主要用于存储数据和程序;控制器控制计算机各部件协同工作;输入设备用于向计算机输入数据,所以负责运算的是运算器。

4. 计算机处理问题时,数据输入完成后,下一步是()- A. 数据存储。

- B. 程序执行。

- C. 结果输出。

- D. 数据处理。

- 答案:D。

- 解析:计算机处理问题的一般步骤是输入数据,然后对输入的数据进行处理(如按照程序中的算法进行计算、转换等操作),之后才是存储处理结果(如果需要),接着执行程序(程序执行过程中包含数据处理),最后输出结果。

所以数据输入完成后下一步是数据处理。

5. 以下关于计算机处理问题步骤的描述,错误的是()- A. 程序编写要根据问题分析的结果进行。

编译练习题答案

编译练习题答案

一、填空题:1-01.编译程序的工作过程一般可以划分为词法分析,语法分析,语义分析,之间代码生成,代码优化等几个基本阶段,同时还会伴有表格处理和出错处理 .1-02.若源程序是用高级语言编写的,目标程序是机器语言程序或汇编程序 ,则其翻译程序称为编译程序.1-03.编译方式与解释方式的根本区别在于是否生成目标代码 .1-04.翻译程序是这样一种程序,它能够将用甲语言书写的程序转换成与其等价的用乙语言书写的程序 .1-05.对编译程序而言,输入数据是源程序 ,输出结果是目标程序 .1-06.如果编译程序生成的目标程序是机器代码程序,则源程序的执行分为两大阶段: 编译阶段和运行阶段 .如果编译程序生成的目标程序是汇编语言程序,则源程序的执行分为三个阶段: 编译阶段 ,汇编阶段和运行阶段 .1-07.若源程序是用高级语言编写的,目标程序是机器语言程序或汇编程序,则其翻译程序称为编译程序。

1-08.一个典型的编译程序中,不仅包括词法分析、语法分析、中间代码生成、代码优化、目标代码生成等五个部分,还应包括表格处理和出错处理。

其中,词法分析器用于识别单词。

1-09.编译方式与解释方式的根本区别为是否生成目标代码。

2-01.所谓最右推导是指:任何一步α β都是对α中最右非终结符进行替换的。

2-02.一个上下文无关文法所含四个组成部分是一组终结符号、一组非终结符号、一个开始符号、一组产生式。

2-03.产生式是用于定义语法成分的一种书写规则。

2-04.设G[S]是给定文法,则由文法G所定义的语言L(G)可描述为: L(G)={x│S x,x∈V T*} 。

2-05.设G是一个给定的文法,S是文法的开始符号,如果S x(其中x∈V*),则称x是文法的一个句型。

2-06.设G是一个给定的文法,S是文法的开始符号,如果S x(其中x∈V T*),则称x是文法的一个句子。

3-01.扫描器的任务是从源程序中识别出一个个单词符号。

高级语言程序设计(Python)习题与答案

高级语言程序设计(Python)习题与答案

高级语言程序设计(Python)习题与答案一、单选题1、计算机为什么采用二进制,而非十进制作为数制的基础?A.因为二进制比十进制计算速度快B.因为二进制比十进制表示能力更强C.因为二进制数精度更高D.因为二进制数更容易被硬件存储和计算正确答案:D2、Python语言为什么被称为高级程序设计语言?A.因为它是编译型语言B.因为它是解释型语言C.因为它比低级语言更复杂D.因为它比低级语言更抽象正确答案:D3、关于Python语言的执行过程,描述正确的是?A.可以同时执行多条语句B.由解释器一条语句一条语句地执行C.执行过的语句将不会再被执行D.由编译器将源程序转化为机器语言,然后执行正确答案:B4、下列Python程序,没有错误的是?A.print 'Hello, ' print 'World!'B.print 'Hello, I\'m Tom.'C.print 'Hello, this's Tom.'D.Print 'Hello, World!'正确答案:B5、在Spyder IDE中编写Python程序,输出“Hello World”,要求将这两个单词分两行输出,以下哪个程序不正确?A.print 'HelloWorld'B.print 'Hello\nWorld'C.print 'Hello'print 'World'D.print "Hello\nWorld"正确答案:A6、执行下列语句,输出的结果是?x = 7.0y = 5print x % yA.1B.2C.1.0D.2.0正确答案:D7、能实现下面功能的程序是?接收用户输入的一个整数。

如果输入的是偶数,则输出“True”,否则输出“False”。

A.print not bool(raw_input() % 2)B.print int(raw_input()) % 2 == 0C.print int(raw_input()) % 2 == 1D.print bool(int(raw_input()) % 2)正确答案:B8、以下程序的输出结果是?y = 0for i in range(0, 10, 2):y += iprint yA.30B.20D.10正确答案:B9、以下程序的输出结果是?number = 30 if number % 2 == 0:print number, 'is even'elif number % 3 == 0:print number, 'is multiple of 3'A.30 is evenB.30 is multiple of 3C.程序出错D.30 is even30 is multiple of 3正确答案:A10、以下程序的输出结果是?x = 1y = -1z = 1if x > 0:if y > 0: print 'AAA'elif z > 0: print 'BBB'A.语法错误B.BBBC.AAAD.无输出正确答案:D11、下列程序的输出结果是:def foo():m = 1def bar():return m + nm = bar()print mfoo()A.1B.3C.程序出错D.2正确答案:B12、字符串s长度为奇数,则显示中间字符的表达式为?A.s[len(s)/2 - 1]B.s[len(s)/2 + 1]C.s[len(s)/2]D.s[(len(s) + 1)/2]正确答案:C13、关于元组数据结构,下面描述正确的是:A.元组不支持切片操作B.所有元素数据类型必须相同C.支持 in 运算符D.插入的新元素放在最后正确答案:C14、一个学生的信息包括:学号、姓名、年龄、性别、电话。

高级语言程序设计(C语言)习题答案及详解

高级语言程序设计(C语言)习题答案及详解

1.1 单项选择题1.二进制语言是属于()①面向机器语言②面向问题语言③面向过程语言④面向汇编语言「解」人们研制了许许多多计算机程序设计语言,其中二进制语言直接来自计算机的指令系统,与具体计算机紧密相关,所以是一种面向机器语言。

面向问题语言是为了易于描述和求解某类特定领域的问题而专门设计的一种非过程语言。

面向过程语言是一种能方便描述算法过程的计算机程序设计语言。

有汇编语言,但没有面向汇编语言。

汇编语言也是一种面向机器的语言,与机器语言比较,汇编语言用有助于记忆的符号来代表二进制代码。

所以解答是①。

2.下列语言中不属于面向过程的语言是()①高级语言②低级语言③C语言④PASCAL语言「解」C语言和PASCAL等程序设计语言都是高级语言,它们用于描述复杂加工的处理过程,所以也称它们是面向过程语言。

低级语言是指机器语言和汇编语言,低级语言是面向机器的语言,而不是面向问题的语言。

所以解答是②。

3.下列字符中属于键盘符号的是()①\ ②\n ③\t ④\b「解」键盘符号是指键盘上有标记,并能在显示器上直接以其标记字样显示的字符。

有许多键盘上有标记的符号,它们不是用于直接显示的,键入这种字符用于表示特定的意义,如常用的回车符。

为了能让C程序标记这种符号,程序采用转义字符的方式书写这种字符。

如'\n'、'\t' 、'\b'都不是键盘字符,在C语言中,它们都得用转义字符来表达。

只有字符\才是键盘字符。

所以解答是①。

但在C程序中,反斜杠字符\已特别用作转义字符的引导符,它也得用转义字符的表达形式书写,将它写成‘\\’。

4.下列字符列中,不是用来表达转义字符是()①\\ ②\' ③074 ④\0「解」转义字符有三种书写形式:反斜社字符后接上某个规定的字符;反斜杠字符后接上13个八进制数字符;反斜社字符和字符X之后接上1至2个十六进制数字符。

后两种分别八进制数和十六进制数直接给出字符的ASCll代码值。

编译原理第三章练习题答案

编译原理第三章练习题答案

编译原理第三章练习题答案编译原理第三章练习题答案编译原理是计算机科学中的重要学科,它研究的是如何将高级语言代码转化为机器语言的过程。

在编译原理的学习过程中,练习题是不可或缺的一部分,通过完成练习题可以更好地理解和掌握编译原理的知识。

本文将为大家提供编译原理第三章练习题的答案,希望对大家的学习有所帮助。

1. 什么是语法分析?语法分析是编译器中的一个重要模块,它的主要任务是根据给定的语法规则,对输入的源代码进行分析和解释。

语法分析器会根据语法规则构建一个语法树,用于表示源代码的结构和含义。

常用的语法分析方法有递归下降法、LL(1)分析法和LR分析法等。

2. 什么是LL(1)文法?LL(1)文法是一种特殊的上下文无关文法,它具有以下两个特点:(1) 对于任何一个句子,最左推导和最右推导是唯一的。

(2) 在预测分析过程中,只需要向前看一个输入符号就可以确定所采用的产生式。

LL(1)文法是一种常用的文法形式,它适用于递归下降法和LL(1)分析法。

3. 什么是FIRST集合和FOLLOW集合?FIRST集合是指对于一个文法符号,它能够推导出的终结符号的集合。

FOLLOW 集合是指在一个句型中,某个非终结符号的后继终结符号的集合。

计算FIRST集合和FOLLOW集合可以帮助我们进行语法分析,特别是LL(1)分析。

4. 什么是递归下降语法分析法?递归下降语法分析法是一种基于产生式的自顶向下的语法分析方法。

它的基本思想是从文法的开始符号开始,递归地根据产生式进行分析,直到推导出输入符号串或发现错误。

递归下降语法分析法的实现比较简单,但对于某些文法可能会出现回溯现象,影响分析效率。

5. 什么是LR分析法?LR分析法是一种自底向上的语法分析方法,它的基本思想是从输入符号串开始,逐步构建语法树,直到推导出文法的开始符号。

LR分析法具有较好的分析效率和广泛的适用性,常用的LR分析方法有LR(0)、SLR(1)、LR(1)和LALR(1)等。

c语言程序设计教程2014年韩立毛徐秀芳书后练习试题参考答案解析

c语言程序设计教程2014年韩立毛徐秀芳书后练习试题参考答案解析

练习题1参考答案一、选择题二、填空题1.程序设计语言主要分为以下三类:机器语言、汇编语言和高级语言。

2.在C语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。

3.C程序开发过程的一般步骤为:源程序的编辑、编译、连接和运行。

4. C程序源文件的扩展名为.c ,编译成功后产生的文件扩展名为.obj ,连接成功后产生文件扩展名为.exe 。

三、应用题略练习题2参考答案一、选择题1.通常一个字节包含8 个二进制位。

在一个字节中能存放的最大(十进制)整数是255(无符号),127(带符号),最小(十进制)整数是-128 ,它的二进制数的形式是10000000 。

2.在C语言中,十进制数30的八进制数表示形式是 036 ,十六进制数表示形式是 0x1e ,在内存中它的二进制数表示形式是 0000000000011110 。

3.条件“20<x<30或x<-100”的C语言表达式是 x>20&&x<30||x<-100 。

4.若a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为 6 ,b 值为 4 ,c值为 2 。

5.已知int y; float x=-3; ,执行语句y=x%2; 后,变量y的值为语句出错。

6.字符串"ab\034\\\x79"的长度为 5 。

7.在C语言中(以16位PC机为例),一个float型数据在内存中所占用的字节数为4 ;一个double型数据在内存中所占的字节数为 8 。

8.若s是int型变量,且s=6,则s%2+(s+1)%2表达式的值为 1 。

9.表达式pow(2.8,sqrt(double(x)))值的数据类型为 double 。

10.若a是int型变量,则表达式(a=4*5, a*2), a+6的值为 26 。

11.若a是int型变量,则执行表达式a=25/3%3后a的值为 2 。

(word完整版)C语言程序设计课后习题1-8参考答案

(word完整版)C语言程序设计课后习题1-8参考答案

C语言程序设计课后习题1—8参考答案习题1参考答案一、简答题1、冯诺依曼计算机模型有哪几个基本组成部分?各部分的主要功能是什么?答:冯诺依曼计算机模型是由运算器、控制器、存储器、输入设备、输出设备五大功能部件组成的。

运算器又称算术逻辑部件,简称ALU,是计算机用来进行数据运算的部件。

数据运算包括算术运算和逻辑运算。

控制器是计算机的指挥系统,计算机就是在控制器的控制下有条不紊地协调工作的.存储器是计算机中具有记忆能力的部件,用来存放程序和数据.输入设备是用来输入程序和数据的部件。

输出设备正好与输入设备相反,是用来输出结果的部件。

2、简述计算机的工作原理。

答:计算机的工作原理可简单地概括为:各种各样的信息,通过输入设备,进入计算机的存储器,然后送到运算器,运算完毕把结果送到存储器存储,最后通过输出设备显示出来。

整个过程由控制器进行控制。

3、计算机软件系统分为哪几类?答:软件内容丰富,种类繁多,通常根据软件用途将其分为两大类:系统软件和应用软件。

系统软件是指管理、监控、维护计算机正常工作和供用户操作使用计算机的软件。

这类软件一般与具体应用无关,是在系统一级上提供的服务。

系统软件主要包括以下两类:一类是面向计算机本身的软件,如操作系统、诊断程序等。

另一类是面向用户的软件,如各种语言处理程序(像BC、VC等)、实用程序、字处理程序等。

在操作系统的基础上运行。

4、什么叫软件?说明软件与硬件之间的相互关系。

答:软件是指计算机程序及有关程序的技术文档资料。

两者中更为重要的是程序,它是计算机进行数据处理的指令集,也是计算机正常工作最重要的因素。

在不太严格的情况下,认为程序就是软件。

硬件与软件是相互依存的,软件依赖于硬件的物质条件,而硬件则需在软件支配下才能有效地工作.在现代,软件技术变得越来越重要,有了软件,用户面对的将不再是物理计算机,而是一台抽象的逻辑计算机,人们可以不必了解计算机本身,可以采用更加方便、更加有效地手段使用计算机。

[VIP专享]第6章由机器语言到高级语言:程序编写与编译练习题答案解析

[VIP专享]第6章由机器语言到高级语言:程序编写与编译练习题答案解析

第6章由机器语言到高级语言:程序编写与编译1、关于计算机语言,下列说法不正确的是_____。

(A)所有源程序最后都需被转换为汇编语言程序,机器才能够执行;(B)所谓“高级语言”和“低级语言”是指其和机器硬件的相关程度,不涉及机器硬件的语言为高级语言,而与机器硬件相关的语言则为低级语言;(C)低级语言程序执行效率高是因为用低级语言编程时可以充分利用硬件的各种特殊性,而高级语言则只能使用硬件的标准结构;(D)高级语言编程效率高是因为其可用大粒度积木块来构造程序,比一行行语句、一条条指令来编程效率高出很多。

(E)上述有不正确的。

答案:A解释:本题考核对“计算机语言”的理解。

(A)所有源程序最后都需被转换为机器语言程序,机器才能够执行,所以(A)错误;(B)(C)和(D)的叙述都是正确的。

具体内容请参考第六章视频之“从机器语言到汇编语言”以及第六章课件。

2、关于计算机语言,下列说法不正确的是_____。

(A)汇编语言和机器语言是以指令为单位来编写程序;(B)高级语言是以语句为单位来编写程序,一条语句相当于若干条指令(或者说一条语句可用若干条指令来实现);(C)面向对象语言或可视化构造语言是以对象(类)为单位来编写程序,一个对象相当于若干条语句((或者说一个对象可用若干条语句来实现);(D)我们可以设计一种新语言,让用户以其更熟悉的对象(类)来编写源程序,然后提供一个编译器将该源程序转换成某种已广泛使用的高级语言源程序,就可以让机器执行该程序。

(E)上述有不正确的。

答案:E解释:本题考核对“计算机语言”的理解。

(A)(B)(C)和(D)的叙述都是正确的,所以选择(E)。

大学计算机-计算思维练习题集具体内容请参考第六章视频之“从机器语言到汇编语言”以及第六章课件。

3、关于计算机语言的编译,下列说法不正确的是_____。

(A)需要“分词”,将其中的常量、变量名和保留字识别出来,并分类及编号;(B)需要识别每一条语句所对应的“模式”。

高级语言程序设计课后练习参考答案(全部)

高级语言程序设计课后练习参考答案(全部)

特别说明:此答案不是标准答案,仅供参考,如有疑问,请与老师共同商量第1章一、单项选择题1-6 ACDBBD二、填空题1、机器、过程2、源、解释、编译、目标3、用某种计算机能理解并执行的计算机语言描述解决问题的方法和步骤、分写解决问题的方法步骤并将其记录下来的过程第2章一、单项选择题1-5 ACCBB 6-10 ADDDD二、填空题1、\2、小写3、字母、下划线、32、84、P105、P10-116、函数调用、表达式7、main 8、main、main9、/*、*/ 10、分11、略第3章一、单项选择题1-5 CBABB 6-10 ACBAB 11-15 AADAD 16-20 CDCCB21-25 CCCDB 26-30 ACDDC 31-34 CADC二、填空题1、字符、字符串2、-15、-153、0、655354、2、15、'\0'、06、#define 符号常量常量7、4 8、数据类型符变量名1,变量名2,……9、unsigned int、double、char 10、const int nn=199;11、1.0 12、a/(b*c)13、1、0 14、非0、0、1、015、1 16、(x>20 && x<30)||x<-10017、x<0 || y<0 || z<0 18、019、 20、5、5、321、++、&&22、算术、关系、逻辑、赋值、逗号、条件第4章一、单项选择题1-5 BCBDC 6-10 CBCAB 11-15 CAADC 16-18 ADA二、填空题1、顺序、循环2、单分支、双分支、多分支3、直到、当4、#include<stdio.h>5、输出格式字符串、输出表达式表6、整、短整、无符号、字符、长整、无符号长整、单精度、双精度、单精度、双精度。

7、如果e1和e2两个条件都成立,那么就执行语句s。

C语言程序设计习题答案(第三版)

C语言程序设计习题答案(第三版)

C语言程序设计(第三版)习题答案习题一一、名词解释(1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)高级语言P2(5)汇编程序P3 (6)编译程序P4 (7)算法P5 (8)结构化程序设计方法P10二、简答题1. 设计程序时应遵循哪些基本原则?P4答:正确性、可靠性、简明性、有效性、可维护性、可移植性。

2. 算法具有哪些特点?答:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。

3. 算法的表示形式有哪几种?答:自然语言、伪代码、传统流程图、N-S流程图、计算机语言。

4. 结构化程序设计方法的三种基本结构是什么?答:顺序结构、选择结构和循环结构。

5. 传统流程图与N-S流程图最大的区别是什么?答:N-S流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。

三、用传统流程图或N-S流程图表示求解以下问题的算法。

1. 从键盘输入10个整数,求出其中的最小数并输出。

2. 求1+2+3+…+100的值。

3. 求10~50的所有素数之和。

4. 求下列分段函数的值。

四、请参照本章例题,编写一个简单的C 程序,输出以下三行信息。

**************************Yangtze University**************************#include <stdio.h>void main(){printf("**************************\n");printf(" Yangtze University\n");printf("**************************\n");}4X-1 (X ≤1) 5(X-1)+6 (1<X<5) 6-3X (X ≥5)习题二一、选择题1~10: B C D C D D B C A A11~20: D A C D B D B A C D二、填空题1.字母 L 或字母 l2. %c(或字符) 、 %d(或整数)3.在程序运行过程中,其值可以在一定的范围内变化的量4.'\0'5.小数形式、指数形式6.关键字、预定义标识符、用户标识符7.字母、数字、下划线、数字8. 189. 2 、 1 、 3010.双精度实数或double11.赋值、逗号、 20 、 20 、 20 、 412. 4 、 4习题三一、选择题1~10: B C C B C C C D C C注:第4题答案D为: 10 22↙33↙二、填空题1. printf 、 scanf2. h3."%5d"4.'\0'5. e 、 E6. 67. s 、 c8. *9. - 、 +10. i三、编程题1. 编写程序,从键盘输入一个以秒为单位的时间数,将其换算成几小时几分几秒,然后进行输出。

高级语言程序设计练习题1及答案

高级语言程序设计练习题1及答案

一、单选题1、程序设计语言包括( )A.机器语言B.机器语言、汇编语言、高级语言C.高级语言D.汇编语言正确答案:B2、用C语言编写的程序( )A.以上说法都不对B.可直接被计算机硬件执行C.经过编译方式翻译成其机器指令,并链接后可以执行D.经过解释方式翻译成其机器指令后可以执行正确答案:C3、程序设计的基本步骤主要包括( )A.确定程序实现算法、编写程序以及程序测试B.确定程序设计方法,描述数据方式、编写程序以及程序调试C.确定数据结构,算法描述、编写程序以及程序测试D.数据描述,算法描述、编写程序正确答案:C4、一个C语言程序如何执行()A.从主程序开始执行B.子程序开始执行C.主函数main()开始执行D.主过程开始执行正确答案:C5、以下叙述中错误的是( )A.一个C程序只能有一个主函数B.C程序在书写时,有严格的缩进要求,否则不能编译通过C.C程序的主函数必须用main作为函数名D.一个C程序中可以包含多个不同名的函数正确答案:B6、下列叙述中错误的是( )A.后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件B.C程序经C编译程序编译后,生成后缀为.obj的文件是一个二进制文件C.计算机不能直接执行用C语言编写的源程序D.后缀为.obj和.exe的二进制文件都可以直接运行正确答案:D7、C语言源程序中如何实现注释A. 一行中#开始的剩余部分为注释内容。

例如int a=10;#测试B. 一行中@开始的剩余部分为注释内容。

例如int a=10;@测试C. 一行中\\开始的剩余部分为注释内容。

例如int a=10;\\测试D.通过/* */ 界定的内容为注释内容。

例如/* 测试*/正确答案:D8、C语言程序中主函数的名称是A.mainB.MAINC.MainD.WinMain正确答案:A9、如下属于C语言的基本语句的是?A.x=sin(100)B.#include <stdio.h>C.1+2;D.x=1+2正确答案:C10、C语言中界定函数开始与结束的符号是A.< >B.( )C.[ ]D.{ }正确答案:D11、不合法的c语言标识符是()A.MDB.x.cC.IntD._abc正确答案:B12、关于C语言中数的表示,以下叙述中正确的是()A.只有实型数在允许范围内能精确无误的表示,整型数会有误差B.只有整型数在允许范围内能准确无误的表示,实型数会有误差C.只要在允许范围内整型数和实型数都能精确的表示D.只有用八进制表示的数才不会有误差正确答案:B13、已知char a=’\17’,变量a中()A.存储3个字符B.存储1个字符C.错误的变量声明与初始化D.存储2个字符正确答案:B14、有定义:int a; long b; double x,y; 则以下选项中正确的表达式是( )A.y=x+y=xB.a=x/10=y;C.a%(int)(x-y)D.(a*y)%b正确答案:C15、设有定义:int x=2;,以下表达式中,值不为6的是A.x++,2*xB.x*=(1+x)C.2*x, x+=2D.x*=x+1正确答案:C16、若有int n=6;表达式n%=n+=n-=n*n的值为()A.0B.10C.12D.6正确答案:A17、sizeof(float)是()A.一个整型表达式B.一个函数调用C.一个不合法的表达式D.一个双精度型表达式正确答案:A18、判断char型变量c1是否为大写字母的正确表达式是()A.'A'<=c1<='Z'B.('A'<=c1)AND('Z'>=c1)C.(c1>='A')&(c1<='Z')D.(c1>='A')&&(c1<='Z')正确答案:D19、正确表达式数学不等式10<x<100的C语言表达式是?(假设x 已经声明)()A.10<x and x<100B.10<x && x<100C.10<x<100D.10>x>100正确答案:B20、关于如下语句的输出结果为const int a=100;a=a+100;printf("%d",a);A.300B.200C.100D.程序存在错误无法运行正确答案:D21、有以下程序void main(){int a=6,b=7;printf("a=%%d,b=%%d",a,b);}输出结果是()。

c++(王珊珊版)习题答案1-15章习题1答案

c++(王珊珊版)习题答案1-15章习题1答案

习题1答案
1.答案:
三代。

第一代为机器语言,用二进制代码表示机器指令,机器语言程序可直接运行。

第二代为汇编语言,用助记符表示一条指令,汇编语言程序必须经过汇编才能执行。

第三代为高级语言,用预先规定好的语句编写程序,高级语言程序必须经过编译连接才能执行。

2.答案:
所谓移植,是指将在一种计算机系统下编写的程序,经过改动放在另一种计算机系统中运行,要求运行结果一样。

改动越少,可移植性越好;改动越多,可移植性越差。

3.答案:见1.2节。

4.答案:见1.3.1节。

5.答案:见1.3.1节。

面向对象程序设计的要素是:封装性、继承性、重载性和多态性。

6.答案:
C++程序是由若干函数构成,其中必须有一个主函数。

每个函数由函数名和函数体构成。

在函数体中有若干语句构成。

有两种注释形式,一种是以两个斜杠“//”开头直到该行结束,在// 和行末之间加注释,此种形式的注释只能在一行中书写;另一种是在“/*”和“*/”之间加注释,此种形式的注释可以跨多行书写。

7.答案:
四个步骤。

编辑:输入修改源程序。

编译:将源程序翻译成目标代码。

连接:将目标代码和库程序连接生成可执行代码。

运行:执行可执行代码。

若后三步出错,可以回退到源代码编辑阶段。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

完美WORD格式第6章由机器语言到高级语言:程序编写与编译1、关于计算机语言,下列说法不正确的是_____。

(A)所有源程序最后都需被转换为汇编语言程序,机器才能够执行;(B)所谓“高级语言”和“低级语言”是指其和机器硬件的相关程度,不涉及机器硬件的语言为高级语言,而与机器硬件相关的语言则为低级语言;(C)低级语言程序执行效率高是因为用低级语言编程时可以充分利用硬件的各种特殊性,而高级语言则只能使用硬件的标准结构;(D)高级语言编程效率高是因为其可用大粒度积木块来构造程序,比一行行语句、一条条指令来编程效率高出很多。

(E)上述有不正确的。

答案:A解释:本题考核对“计算机语言”的理解。

(A)所有源程序最后都需被转换为机器语言程序,机器才能够执行,所以(A)错误;(B)(C)和(D)的叙述都是正确的。

具体内容请参考第六章视频之“从机器语言到汇编语言”以及第六章课件。

2、关于计算机语言,下列说法不正确的是_____。

(A)汇编语言和机器语言是以指令为单位来编写程序;(B)高级语言是以语句为单位来编写程序,一条语句相当于若干条指令(或者说一条语句可用若干条指令来实现);(C)面向对象语言或可视化构造语言是以对象(类)为单位来编写程序,一个对象相当于若干条语句((或者说一个对象可用若干条语句来实现);(D)我们可以设计一种新语言,让用户以其更熟悉的对象(类)来编写源程序,然后提供一个编译器将该源程序转换成某种已广泛使用的高级语言源程序,就可以让机器执行该程序。

(E)上述有不正确的。

答案:E解释:本题考核对“计算机语言”的理解。

(A)(B)(C)和(D)的叙述都是正确的,所以选择(E)。

具体内容请参考第六章视频之“从机器语言到汇编语言”以及第六章课件。

知识分享专业大学计算机-计算思维练习题集3、关于计算机语言的编译,下列说法不正确的是_____。

(A)需要“分词”,将其中的常量、变量名和保留字识别出来,并分类及编号;(B)需要识别每一条语句所对应的“模式”。

任意语句的常量和变量名被归为“标识符”类别,而标识符与保留字的不同组合关系构成了语句的模式;计算机语言是由有限的语句模式构成的;(C)对每一种模式,都有相应的组合构造方法,即模式可被认为是由原子模式或说基本模式通过组合的方法构造出来的,对原子模式或者基本模式可以事先写好其相应的目标语言的指令或语句;(D)按照模式由原子模式的组合次序,可将模式语句转换成目标语言的指令或语句;进一步按照分类及编号将常量、变量名代入形成最终的目标语言程序,完成编译;(E)上述有不正确的。

答案:E解释:本题考核计算机语言编译的基本思想。

(A)(B)(C)和(D)的叙述都是正确的,所以选择(E)。

具体内容请参考第六章视频之“高级语言编译器-基本思想”以及第六章课件。

4、从语言编译角度看计算机语言,下列说法不正确的是_____。

(A)计算机语言就是由标识符和保留字构成的,标识符是可由程序员按规则任意命名的符号,而保留字则是编译器识别语句模式的重要符号;(B)计算机语言定义了基本元素的集合,以及基本元素的组合构造规则,所谓基本元素即是指标识符和保留字,所谓组合构造规则即是指语句的书写模式,即不同标识符和保留字的组合规则;(C)标识符可以是常量、变量名,也可以是函数名;保留字可以是赋值符号如“=”、语句结束符号如“;”、基本运算符号如“+”“-”“*”“/”、程序段落符号如“{ }”等,保留字还可以是其他语句模式的标志性符号。

(D)上述有不正确的。

答案:D解释:本题考核从语言编译角度理解计算机语言。

(A)(B)(C)的叙述都是正确的,所以选择(D)。

具体内容请参考第六章视频之“高级语言编译器-基本思想”以及第六章课件。

_____的基本构成要素,下列说法最完整的是)或者说程序(、关于普通计算机语言5.大学计算机-计算思维练习题集(A)常量与变量和表达式;(B)常量与变量、表达式和语句;(C)常量与变量、表达式、语句和函数;(D)都不完整。

答案:C解释:本题考核程序的基本构成要素。

程序的基本构成要素包括常量与变量、表达式、语句和函数,所以(C)正确,(A)和(B)叙述不完整。

具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。

6、关于表达式,下列说法不正确的是_____。

(A)由常量、变量及各种算术运算符构造的表达式,被称为算术表达式,其结果为一数值;(B)由常量、变量和各种比较运算符构造的表达式,被称为比较表达式,其结果只能为逻辑“真”或“假”;(C)由常量、变量和各种逻辑运算符构造的表达式,被称为逻辑表达式,其结果只能为逻辑“真”或“假”;(D)比较表达式中不能含有算术表达式,逻辑表达式中可以含算术表达式。

(E)上述有不正确的。

答案:D解释:本题考核对“表达式”的理解。

比较表达式和逻辑表达式中都可以含算术表达式,所以(D)错误;(A)(B)和(C)的叙述都是正确的。

具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。

7、已知A=40;B=30;C=100;D=50,逻辑“与”运算符为and,“或”运算符为or,“非”运算符为not。

围绕这些已知条件回答问题:(1) 计算表达式 (A + (C – B) *3) / D 的值,结果为_____。

(A) 5; (B) -5; (C) 10; (D) 4;A答案:大学计算机-计算思维练习题集(2) 计算表达式 (A * A - B * B) + D 的值,结果为_____。

(A) 70; (B) 150; (C) 570; (D) 750;答案:D(3) 计算表达式 (A > B) and (B < C )的值,结果为_____。

(A) 100; (B) 30; (C) 真; (D) 假;答案:C(4) 计算表达式 (A > B +20 ) or (B +60 < C )的值,结果为_____。

(A) 100; (B) 30; (C) 真; (D) 假;答案:C(5) 计算表达式C > A +B +D的值,结果为_____。

(A) 120; (B) 100; (C) 真; (D) 假;答案:D(6) 计算表达式A + A * 5的值,结果为_____。

(A) 400; (B) 240; (C) 真; (D) 假;答案:B(7) 计算表达式A < A * 5的值,结果为_____。

(A) 40; (B) 200; (C) 160;(D) 真;(E) 假;答案:D。

_____的值,结果为(X > Y) and (X<=Y)计算表达式(8)大学计算机-计算思维练习题集(A) 真;(B) 假;答案:B解释:本题考核表达式的计算。

(1)(A + (C – B) *3) / D = (40 + (100 - 30) * 3) / 50 = 5,(A)选项正确;(2)(A * A - B * B) + D = (40 * 40 – 30 * 30) + 50 = 750,(D)选项正确;(3)(A > B)=(40 > 30)为真,(B < C)= (30 < 100)为真,所以(A > B) and (B < C )为真,(C)选项正确;(4)(A > B +20 ) = (40 > 30 +20 ) = ( 40 >50 )为假,(B + 60 < C) = (30 + 60 <100) =(90 < 100 )为真,所以(A > B +20 ) or (B +60 < C ) 为真,(C)选项正确;(5)A+B+D= 40+30+50 = 120,C>A+B+D为100>120为假,(D)选项正确;(6)A+A*5=40+40*5=240,(B)选项正确;(7)A*5=40*5=200,A<A*5为40<200为真,(D)选项正确;(8)X>Y与X<=Y不能同时成立,而要是“and ”为真时,必须左右两边同时成立,所以(X > Y) and (X<=Y) 为假,(B)选项正确;具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。

8. 已知X=21, Y=15, Z=22,围绕这些已知条件回答问题:(1) 计算表达式 ((X>Y) or (Y>Z)) and ((X<Y) or (Y<Z))的值,结果为_____。

(A) 真;(B) 假;答案:A(2) 计算表达式 ((X>Y) AND (Y>Z)) OR ((X<Y) AND (Y<Z))的值,结果为_____。

(A) 真;(B) 假;答案:B(3) 计算表达式 ((X>Y) AND (Y>Z)) OR ((X<Z) AND (Y<Z))的值,结果为_____。

(A) 真;(B) 假;大学计算机-计算思维练习题集答案:A(4) 假设不知道X、Y的值,计算表达式(X > Y) and (X<=Y)的值,结果为_____。

(A) 真;(B) 假;答案:B解释:本题考核表达式的计算。

(1)(X>Y)=(21>15)为真,(Y>Z)=(15>22)为假,因此((X>Y) or (Y>Z))为真,(X<Y) = (21<15)为假,(Y<Z)=(15<22)为真,因此((X<Y) or (Y<Z))为真,所以((X>Y) or (Y>Z)) and((X<Y) or (Y<Z))为真,(A)选项正确;(2)(X>Y)=(21>15)为真,(Y>Z)=(15>22)为假,因此((X>Y) and (Y>Z))为假,(X<Y) = (21<15)为假,(Y<Z)=(15<22)为真,因此((X<Y) and (Y<Z))为假,所以((X>Y) AND (Y>Z)) OR((X<Y) AND (Y<Z))为假,(B)选项正确;(3)(X>Y)=(21>15)为真,(Y>Z)=(15>22)为假,因此((X>Y) and (Y>Z))为假,(X<Z) = (21<22)为真,(Y<Z)=(15<22)为真,因此((X<Y) and (Y<Z))为真,所以((X>Y) AND (Y>Z)) OR((X<Z) AND (Y<Z))为真,(A)选项正确;(4)X>Y与X<=Y不能同时成立,而要是“and ”为真时,必须左右两边同时成立,所以(X > Y) and (X<=Y) 为假,(B)选项正确;具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。

相关文档
最新文档