《程序设计基础》记分作业4答案
C++程序设计基础(第4版)习题解答

《C++程序设计基础》(第4版)(上)习题与解答第1章基本数据与表达式1.1 选择题1.一个最简单的C++程序,可以只有一个(C )。
(A)库函数(B)自定义函数(C)main函数(D)空函数2.用C++语言编写的源程序要成为目标程序必须要经过(D )。
(A)解释(B)汇编(C)编辑(D)编译3.C++程序中的简单语句必须以(B )结束。
(A)冒号(B)分号(C)空格(D)花括号4.假设有说明int a=0; double x=5.16;,则在以下语句中,(C )属于编译错误。
(A)x=a/x; (B)x=x/a; (C)a=a%x; (D)x=x*a;5.执行C++程序时出现的―溢出‖错误属于(C )错误。
(A)编译(B)连接(C)运行(D)逻辑6.在下列选项中,全部都是C++关键字的选项为(C )。
(A)while IF Static (B)break char go(C)sizeof case extern (D)switch float integer7.按C++标识符的语法规定,合法的标识符是(A )。
(A)_abc (B)new (C)π(D)"age"8.在C++语句中,两个标识符之间(A )不能..作为C++的分隔符。
(A)数字(B); (C): (D)+9.下列正确的八进制整型常量表示是(B )。
(A)0a0 (B)015 (C)080 (D)0x1010.下列错误的十六进制整型常量表示是(C )。
(A)0x11 (B)0xaf (C)0xg (D)0x1f11.在下列选项中,全部都合法的浮点型数据的选项为(B )。
(A)-1e3.5 15. 2e-4 (B)12.34 -1e+5 0.1E-12(C)0.2e-2 -12345. e-5 (D)5.0e(1+4)0.1 8e+212.在下列选项中,正确的字符常量为(D )。
(A)"a" (B)'name' (C)a (D)'\101'13.在下列选项中,(D )不能..交换变量a和b的值。
C程序设计基础练习题4及答案

一、单选题1、以下数组定义中,错误的是()。
A.inta[3]={‰2,3,4};B.inta[]={l,2,3};C.inta[5]={l z2,3};D.inta[5],b;正确答案:A解析:A、数组长度为3,但赋了4个初值2、设有定义inta[10]={0};则说法正确的是()。
A.数组初始化错误,初值个数少于数组元素个数B.数组a有10个元素,各元素的值为0C.数组a有1个元素,其值为0D.数组a有10个元素,其中a[0]的值为0,其他元素的值不确定正确答案:B解析:B、当定义的同时,给数组赋了初值,但初值个数小于数组长度时,剩余的数组元素全赋为03、执行下面的初始化语句,()保存的不是字符串。
A.charstr[6]={,S, ,r,,,i√n,,,g,};B.charstr[]={'S';t','r,,,i,z,n∖,g,,0};C.charstr[10]={'S',,t',,r',,i√n∖,g,,,∖0,};D.charstr[10]="String";正确答案:A解析:A、Str数组长度为6,6个元素值都不是'0)没有成为字符串B›,∖0,的ASClI码是0,初始化为。
或'∖0'是一样的。
4、设有以下定义,则数组Sl和s2()ocharsl[]={'S'z,t','r'∕i√n','g');chars2[]="String";A.长度不同,但内容相同B.长度相同,内容也相同C.长度相同,但内容不同D.长度不同,内容也不同正确答案:D解析:D、s2比Sl多一个∖0T长度多15、设已定义charstr[6]={,a√b√∖O√c√d√∖O,};执行语句printf(("%s",str)后,输出结果为()。
c语言程序设计c语言程序设计练习四(参考答案).docx

《C语言程序设计》练习四(参考答案)1. 输入一个学生的成绩(在o〜100分之间,超出此范围显示错),进行五级评分并显示。
答案:第一空:score>=0 && score<=100第二空:score/10第三空:break2. 使用二维数组形成并按下列形式输出数据0 12 3 412 3 4 52 3 4 5 63 4 5 6 74 5 6 7 8答案:第一空:a[5][5]第二空:i+j第三空:printf(n\n n)3. 对含有10个元素的数组“先按元素的存储次序倒序输入,再按其正序输出。
答案:第一空:N 10第二空:i>=0第三空:&a[i]4.学生成绩的字母等级和分数范围如下:字母等级分数范围9()〜100B 80-89C 70〜7960 〜690〜59输入错误输入字母等级之后,输出相应的分数范围。
答案:第一空:char score 第二空:break 第三空:default5.从键盘输入x 的值,根据以下公式计算并输岀x 和 J = <y 的值。
X 0<x<2 x 2 +l 2<x<6 Jx + l 6SxvlOY、in答案: 第一空:&X 第二空:break 第三空:sqrt(x-i-l)A 二IVU 2 +i6. 分别统计并输出17、18、19和20岁各年龄的学生人数。
答案:第一空:prim 廿(”输入年龄有\n”) 第二空:age 第三空:a[i]7. 将从键盘输入的字符串逆序显示。
答案: 第一空:str 第二空:n 第三空:p-E其它字母8. 输入100名学生的出生月份,统计并输出每个月份过生FI的学生人数。
答案:第一空:&month第二空:iv=12第三空:%d9. ........................................................................... 输入n(ndl),计算1+ (1+2) + (1+2+3) + ...................................................................... +(1+2+……+n)的值。
C++程序设计基础(第4版)习题解答

《C++程序设计基础》(第4版)(上)习题与解答第1章基本数据与表达式1.1 选择题1.一个最简单的C++程序,可以只有一个(C )。
(A)库函数(B)自定义函数(C)main函数(D)空函数2.用C++语言编写的源程序要成为目标程序必须要经过(D )。
(A)解释(B)汇编(C)编辑(D)编译3.C++程序中的简单语句必须以(B )结束。
(A)冒号(B)分号(C)空格(D)花括号4.假设有说明int a=0; double x=5.16;,则在以下语句中,(C )属于编译错误。
(A)x=a/x; (B)x=x/a; (C)a=a%x; (D)x=x*a;5.执行C++程序时出现的―溢出‖错误属于(C )错误。
(A)编译(B)连接(C)运行(D)逻辑6.在下列选项中,全部都是C++关键字的选项为(C )。
(A)while IF Static (B)break char go(C)sizeof case extern (D)switch float integer7.按C++标识符的语法规定,合法的标识符是(A )。
(A)_abc (B)new (C)π(D)"age"8.在C++语句中,两个标识符之间(A )不能..作为C++的分隔符。
(A)数字(B); (C): (D)+9.下列正确的八进制整型常量表示是(B )。
(A)0a0 (B)015 (C)080 (D)0x1010.下列错误的十六进制整型常量表示是(C )。
(A)0x11 (B)0xaf (C)0xg (D)0x1f11.在下列选项中,全部都合法的浮点型数据的选项为(B )。
(A)-1e3.5 15. 2e-4 (B)12.34 -1e+5 0.1E-12(C)0.2e-2 -12345. e-5 (D)5.0e(1+4)0.1 8e+212.在下列选项中,正确的字符常量为(D )。
(A)"a" (B)'name' (C)a (D)'\101'13.在下列选项中,(D )不能..交换变量a和b的值。
C++程序设计基础(第4版)习题解答

《C++程序设计基础》(第4版)(上)习题与解答第1章基本数据与表达式1.1 选择题1.一个最简单的C++程序,可以只有一个(C )。
(A)库函数(B)自定义函数(C)main函数(D)空函数2.用C++语言编写的源程序要成为目标程序必须要经过(D )。
(A)解释(B)汇编(C)编辑(D)编译3.C++程序中的简单语句必须以(B )结束。
(A)冒号(B)分号(C)空格(D)花括号4.假设有说明int a=0; double x=5.16;,则在以下语句中,(C )属于编译错误。
(A)x=a/x; (B)x=x/a; (C)a=a%x; (D)x=x*a;5.执行C++程序时出现的―溢出‖错误属于(C )错误。
(A)编译(B)连接(C)运行(D)逻辑6.在下列选项中,全部都是C++关键字的选项为(C )。
(A)while IF Static (B)break char go(C)sizeof case extern (D)switch float integer7.按C++标识符的语法规定,合法的标识符是(A )。
(A)_abc (B)new (C)π(D)"age"8.在C++语句中,两个标识符之间(A )不能..作为C++的分隔符。
(A)数字(B); (C): (D)+9.下列正确的八进制整型常量表示是(B )。
(A)0a0 (B)015 (C)080 (D)0x1010.下列错误的十六进制整型常量表示是(C )。
(A)0x11 (B)0xaf (C)0xg (D)0x1f11.在下列选项中,全部都合法的浮点型数据的选项为(B )。
(A)-1e3.5 15. 2e-4 (B)12.34 -1e+5 0.1E-12(C)0.2e-2 -12345. e-5 (D)5.0e(1+4)0.1 8e+212.在下列选项中,正确的字符常量为(D )。
(A)"a" (B)'name' (C)a (D)'\101'13.在下列选项中,(D )不能..交换变量a和b的值。
国家开放大学《程序设计基础》形考任务1-4参考答案

国家开放大学《程序设计基础》形考任务1-4参考答案形考任务1一、填空题1.计算机的五大主要应用领域是(科学计算)、(数据处理)、(过程控制)、(计算机辅助系统)和(人工智能)。
2.总线是连接(CPU)、(存储器)和(外部设备)的公共信息通道。
通常由三部分组成:(数据总线)、(地址总线)、(控制总线)。
3.计算机是一类智能机器,这是因为它除了完成算术运算外,还能完成某些(逻辑运算)。
4.世界上第一台计算机取名为(ENIAC)。
5.目前制造计算机所采用的电子器件是(大规模集成电路)。
6.CPU是Central Processing Unit的英文缩写,它主要由(运算器)、(控制器)和寄存器3个部分组成。
7.完整的计算机系统是由(硬件系统)和(软件系统)两大部分组成的。
8.计算机的硬件系统一般可分为(存储器)、(中央处理器)、(输入设备)和(输出设备)等几个部分。
9.计算机的存储器分为(内存)和(外存)两级。
10.随机存储器和只读存储器的英文缩写分别为(RAM)和(ROM)。
11.(系统软件)是为有效利用计算机的资源、充分发挥计算机的工作潜力、保证正常运行、尽可能方便用户使用计算机而编制的软件。
12.(程序)是为实现一定功能,用计算机程序设计语言所编制的语句的有序集合。
(文档)是描述程序设计的过程及程序的使用方法的有关资料。
13.(图灵机)是计算机的概念模型,奠定了现代计算机的理论基础;(冯·诺依曼)是计算机的结构模型,奠定了现代计算机的设计基础。
14.高级语言源程序的翻译成机器语言程序一般有两种做法:(编译)方式和(解释)方式。
15.按照使用方式,程序设计语言分为(交互式)语言和(非交互式)语言;按照应用范围则分为(通用)语言和(专用)语言。
16.编译程序的核心部分,叫(语法分析器),其任务就是检查源程序在语法上是否(正确)。
二、选择题1.当代计算机的最主要的体系结构称为是()。
A.冯·诺依曼机B.非冯·诺依曼机C.图灵机D.PASCAL机2.计算机软件是指()。
C程序设计基础(第4版)习题解答

2.用 C++语言编写的源程序要成为目标程序必须要经过( D )。
(A)解释
(B)汇编
(C)编辑
(D)编译
3.C++程序中冒号
(B)分号
(C)空格
(D)花括号
4.假设有说明 int a=0; double x=5.16;,则在以下语句中,( C )属于编译错误。
一个最简单的c程序可以只有一个a库函数a解释冒号b自定义函数b汇编b分号cmain函数c编辑c空格d空函数d编译d花括号2
《C++程序设计基础》(第 4 版)(上)
习题与解答
第 1 章 基本数据与表达式
1.1 选择题
1.一个最简单的 C++程序,可以只有一个( C )。
(A)库函数
(B)自定义函数
(C)main 函数 (D)空函数
【解答】
变量类型
定义
存储
使用方式
数据
类型 标识符
数据值
通过名访问即直接访问对变量内容操作
指针
类型 * 标识符
地址值
通过指针变量的地址值间址访问对象
验证程序:
#include<iostream>
using namespace std;
int main()
{ int a,b,c;
cout<<"a,b,c= ";
} 4.数据对象在 C++中有几种不同的访问方式?请编写一个程序验证之。
【解答】
数据对象在 C++中的访问方式有:名访问,引用(别名)访问,间址访问。 验证程序:
#include<iostream> using namespace std; int main() { int a;
《程序设计基础》记分作业4答案

《程序设计基础》记分作业4答案单选题。
(共16道试题,每题3分)1、树的典型特点是各个结点之间是( C )。
A、没有直接关系B、一对一关系C、一对多关系D、多对多关系2、采用顺序空间作为栈的存储空间时,在进行栈操作的时候( D )。
A、不需要判断栈是否空,不需要判断栈是否满 B、不需要判断栈是否空,但需要判断栈是否满 C、需要判断栈是否空,不需要判断栈是否满 D、需要判断栈是否空,也需要判断栈是否满3、在存储线性表时,( C )。
A、只能采用顺序存储结构B、只能采取链式存储结构C、可以任意采用顺序或链式存储结构D、没有明确的结论4、线性表表长的含义是( C )。
A、线性表所占用的内存字节数量B、线性表占用的内存和外存的字节数量C、线性表中所包含的元素数量D、线性表在内存中元素的数量5、采用链式存储保存线性表与采用顺序存储保存线性表进行比较,在链式存储线性表时进行插入操作的执行效率( C )。
A、比较低B、一样C、比较高D、没有明确结论6、对于一张一般的图,其中的各个结点之间的关系是( D )。
A、集合关系B、一对一关系C、一对多关系D、多对多关系7、数据的存储结构分为( D )。
A、线性存储结构和非线性存储结构B、有序存储结构和非有序存储结构C、树型存储结构和图型存储结构D、链式存储结构和顺序存储结构8、进行折半查找的条件是( A )。
A、数据有序且采用顺序存储方式B、数据不需要有序,但需要顺序存储C、数据有序且采用链式存储方式D、数据不需要有序,但需要链式存储9、采用链式存储的有序数据要进行查找,可以采用( A )。
A、顺序查找B、折半查找C、顺序索引查找D、顺序或折半查找10、下面4句结论中只有一句是错误的,它是( B )。
A、二叉树是树B、二叉树的左右子树的位置可以颠倒C、可以使用二叉树的思想对数值进行排序D、可以采用链表方式存储二叉树11、软件生存周期是指( D )。
A、软件从编程开始,经过调试直至交付使用的全过程B、软件从编程、测试和使用,直到维护结束的全过程C、软件从定义、需求分析和编程,直至最后完成的全过程D、软件从开发、使用和维护,直至最后退役的全过程12、在下列4种方法中,有一个不是软件的开发模型,它是( D )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《程序设计基础》记分作业4答案
单选题。
(共16道试题,每题3分)
1、树的典型特点是各个结点之间是( C )。
A、没有直接关系
B、一对一关系
C、一对多关系
D、多对多关系
2、采用顺序空间作为栈的存储空间时,在进行栈操作的时候( D )。
A、不需要判断栈是否空,不需要判断栈是否满 B、不需要判断栈是否空,但需要判断栈是否满 C、需要判断栈是否空,不需要判断栈是否满 D、需要判断栈是否空,也需要判断栈是否满
3、在存储线性表时,( C )。
A、只能采用顺序存储结构
B、只能采取链式存储结构
C、可以任意采用顺序或链式存储结构
D、没有明确的结论
4、线性表表长的含义是( C )。
A、线性表所占用的内存字节数量
B、线性表占用的内存和外存的字节数量
C、线性表中所包含的元素数量
D、线性表在内存中元素的数量
5、采用链式存储保存线性表与采用顺序存储保存线性表进行比较,在链式存储线性表时进行插入操作的执行效率( C )。
A、比较低
B、一样
C、比较高
D、没有明确结论
6、对于一张一般的图,其中的各个结点之间的关系是( D )。
A、集合关系
B、一对一关系
C、一对多关系
D、多对多关系
7、数据的存储结构分为( D )。
A、线性存储结构和非线性存储结构
B、有序存储结构和非有序存储结构
C、树型存储结构和图型存储结构
D、链式存储结构和顺序存储结构
8、进行折半查找的条件是( A )。
A、数据有序且采用顺序存储方式
B、数据不需要有序,但需要顺序存储
C、数据有序且采用链式存储方式
D、数据不需要有序,但需要链式存储
9、采用链式存储的有序数据要进行查找,可以采用( A )。
A、顺序查找
B、折半查找
C、顺序索引查找
D、顺序或折半查找
10、下面4句结论中只有一句是错误的,它是( B )。
A、二叉树是树
B、二叉树的左右子树的位置可以颠倒
C、可以使用二叉树的思想对数值进行排序
D、可以采用链表方式存储二叉树
11、软件生存周期是指( D )。
A、软件从编程开始,经过调试直至交付使用的全过程
B、软件从编程、测试和使用,直到维护结束的全过程
C、软件从定义、需求分析和编程,直至最后完成的全过程
D、软件从开发、使用和维护,直至最后退役的全过程
12、在下列4种方法中,有一个不是软件的开发模型,它是( D )。
A、瀑布模型
B、螺旋模型
C、喷泉模型
D、逐步求精法
13、下面关于测试的结论中只有一个是正确的,它是( A )。
A、测试工作要贯穿于整个软件开发的全过程 B、测试工作是指在编程实现过程中进行的排错工作 C、测试工作是指在产品完成后用户的验收工作过程 D、测试工作量的弹性比较大,可以根据时间进度进行裁减
14、在软件需求完全确定的情况下,应该采用的软件开发模型是( A )。
A、瀑布模型
B、渐进式开发模型
C、原型模型
D、螺旋模型
15、程序设计要遵循一定的开发方法及思想,以下有一个不是程序设计过程中应该遵循的开发方法,
它是( D )。
A、结构化设计方法
B、模块化程序设计方法
C、面向对象的程序设计方法
D、数据结构优先原则
16、螺旋模型中包括需求定义、风险分析、工程实现和评审四个阶段,在开发过程中( A )。
A、每个周期都要包括这四个阶段
B、每个周期可以包括不同的阶段
C、在最后交付使用之前才进行评审
D、开项目开始时才需要进行风险分析
判断题。
(共14道试题,每题2分)
1、数据的逻辑结构是指数据元素之间的逻辑关系,与数据的存储无关,它独立于计算机,如用户在电话号码表中的先后次序关系。
( √ )
2、在图型结构中,任何两个结点之间都可能存在着联系,数据元素之间存在着多对多的关系。
( √ )
3、常见的线性结构有线性表、栈和队列等,其主要特征为各个结点之间“先后”有序。
( √ )
4、通常二叉树采用链式存储结构。
( √ )
5、数据的存储结构可以用顺序存储方式和链式存储方式。
( √ )
6、穷举法也叫枚举法或蛮干法。
( √ )
7、所谓算法,粗略地讲,是为解决一个特定的问题而采取的特定的有限的步骤。
( √ )
8、一个完整的计算机算法应满足输入性、可行性、输出性、有穷性和确定性。
( √ )
9、百钱百鸡问题需要用穷举法来解决。
( √ )
10、在一定意义上,人们认为:程序=算法+数据结构。
( √ )
11、软件开发模型大体上可分为两种类型,第一种是以软件需求完全确定为前提的瀑布模型。
第二种是在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如原型模型、螺旋模型等。
( √ )
12、当前流行的程序设计方法是结构化程序设计和面对对象程序设计。
( √ )
13、软件产品从形成概念开始,经过开发、使用和维护,直至最后退役的全过程称为软件生存周期。
( √ )
14、软件工程就是应用计算机科学、数学及管理科学等原理,开发软件的工程。
( √ )
编程题。
(共2道试题,每题6分)
1、百钱百鸡问题。
中国古代数学家张丘建在他的《算经》中提出了著名的“百钱百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何?
2、利用穷举法编写一个算法判断给定的正整数n是否是素数,即判断n 是否只能被1和自身整除。
简答题。
(共3道试题,每题4分)
1、何谓算法?算法有什么性质?
算法就是为解决一个特定问题而采取的特定的有限的步骤。
一个完整的计算机算法必须满足下述5个准则或标准:有穷性,确定性,可行性,输入性,输出性。
具有上述5个特性才能称为算法,而其中最重要的是算法的有穷性,如果不具备有穷性的性质,仅具有另外4种性质,只能称为计算过程或计算方法,而不是算法。
2、瀑布模型的主要思想和特点是什么?
瀑布模型也称软件生存周期模型。
根据软件生存周期各个阶段的任务,瀑布模型从可行性研究(或称系统需求分析)开始,逐步进行阶段性变换,直至通过确认测试并得到用户确认的软件产品为止。
瀑布模型上一阶段的变换结果是下一阶段变换的输入,相邻的两个阶段具有因果关系,紧密相联。
一个阶段工作的失误将蔓延到以后的各个阶段。
为了保证软件开发的正确性,每一阶段任务完成后,都必须对它的阶段性产品进行评审,确认之后再转入下一阶段的工作。
评审过程发现错误和疏漏后,应该反馈到前面的有关阶段修正错误、弥补疏漏,然后再重复前面的工作,直至某一阶段通过评审后再进入下一阶段,这种形式的瀑布模型是带有反馈的瀑布模型。
瀑布模型在软件工程中占有重要的地位,它提供了软件开发的基本框架,这比依靠“个人技艺”开发软件好得多。
它有利于大型软件开发过程中人员的组织
和管理,有利于软件开发方法和工具的研究与使用,从而提高了大型软件项目开发的质量和效率。
瀑布模型的主要特点是:阶段间的顺序性和依赖性,开发过程是一个严格的下导式过程,即前一阶段的输出是后一阶段的输入,每一阶段工作的完成需要确认,而确认过程是严格的追溯式过程,后一阶段出现了问题要通过前一阶段的重新确认来解决。
因此,问题发现得越晚解决问题的代价就越高。
瀑布模型的主要缺点是:
(1)在软件开发的初始阶段指明软件系统的全部需求是困难的,有时甚至是不现实的。
(2) 软件开发是个知识密集型的开发活动,需要人们合作交流才能完成,但在瀑布模型中没有这方面的体现。
随着软件开发项目规模的日益庞大,由此引发的问题显得更为严重。
3、在软件工程过程中围绕着工程设计、工程支持和工程管理应当遵循什么基本原则?
围绕工程设计、工程支持以及工程管理,提出了以下四条基本原则:
第一条原则是选取适宜的开发模型。
该原则与系统设计有关。
在系统设计中,软件需求、硬件需求以及其它因素之间是相互制约、相互影响的,经常需要权衡。
因此,必须认识需求定义的易变性,采用适宜的开发模型予以控制,以保证软件产品满足用户的要求。
第二条原则是采用合适的设计方法。
在软件设计中,通常要考虑软件的模块化、抽象与信息隐蔽、局部化、一致性以及适应性等特征。
合适的设计方法有助于这些特征的实现,以达到软件工程的目标。
第三条原则是提供高质量的工程支持。
在软件工程中,软件工具与环境对软件过程的支持颇为重要。
软件工程项目的质量与开销直接取决于对软件工程所提供的支撑质量和效用。
第四条原则是重视开发过程的管理。
软件工程的管理,直接影响可用资源的有效利用,生产满足目标的软件产品,提高软件组织的生产能力等问题。
因此,仅当软件过程予以有效管理时,才能实现有效的软件工程。