国家开放大学《程序设计基础(本)》形考任务1-4参考答案.docx
《国家开放大学《程序设计基础(本)》形考任务1-4参考答案.docx》由会员分享,可在线阅读,更多相关《国家开放大学《程序设计基础(本)》形考任务1-4参考答案.docx(14页珍藏版)》请在冰点文库上搜索。
国家开放大学《程序设计基础(本)》形考任务1-4参考答案
形考任务1
一、填空题
1.计算机的五大主要应用领域是(科学计算)、(数据处理)、(过程控制)、(计算机辅助系统)和(人工智能)。
2.总线是连接(CPU)、(存储器)和(外部设备)的公共信息通道。
通常由三部分组成:
(数据总线)、(地址总线)、(控制总线)。
3.计算机是一类智能机器,这是因为它除了完成算术运算外,还能完成某些(逻辑运算)。
4.世界上第一台计算机取名为(ENIAC)。
5.目前制造计算机所采用的电子器件是(大规模集成电路)。
6.CPU是CentralProcessingUnit的英文缩写,它主要由(运算器)、(控制器)和寄存器3个部分组成。
7.完整的计算机系统是由(硬件系统)和(软件系统)两大部分组成的。
8.计算机的硬件系统一般可分为(存储器)、(中央处理器)、(输入设备)和(输出设备)等几个部分。
9.计算机的存储器分为(内存)和(外存)两级。
10.随机存储器和只读存储器的英文缩写分别为(RAM)和(ROM)。
11.(系统软件)是为有效利用计算机的资源、充分发挥计算机的工作潜力、保证正常运行、尽可能方便用户使用计算机而编制的软件。
12.(程序)是为实现一定功能,用计算机程序设计语言所编制的语句的有序集合。
(文档)是描述程序设计的过程及程序的使用方法的有关资料。
13.(图灵机)是计算机的概念模型,奠定了现代计算机的理论基础;(冯•诺依曼机)是计算机的结构模型,奠定了现代计算机的设计基础。
14.高级语言源程序的翻译成机器语言程序一般有两种做法:
(编译)方式和(解释)方式。
15.按照使用方式,程序设计语言分为(交互式)语言和(非交互式)语言;按照应用范围则分为(通用)语言和(专用)语言。
16.编译程序的核心部分,叫(语法分析器),其任务就是检查源程序在语法上是否(正确)。
二、单项选择题
1.当代计算机的最主要的体系结构称为是______。
A.冯·诺依曼机
B.非冯·诺依曼机
C.图灵机
D.PASCAL机
2.计算机软件是指______。
A.源程序和目标程序
B.源程序
C.计算机程序及其有关文挡
D.计算机程序
3.计算机能直接执行的语言是______。
A.机器语言
B.目标语言
C.汇编语言
D.高级语言
4.显示器是______。
A.存储设备
B.计算设备
C.输出设备
D.输入设备
5.系统软件的核心软件是______。
A.机器语言
B.操作系统
C.编译程序
D.汇编程序
6.要保证程序在多次反复使用过程中不发生错误,关键应该提高程序的______。
A.有效性
B.正确性
C.可靠性
D.可维护性
7.汇编语言属于______。
A.函数式语言
B.过程式语言
C.逻辑语言
D.非过程式语言
8.要编写高质量的程序,判断程序质量的首要标准是程序的_____①______,要保证程序在多次反复使用过程不发生错误,应该保证程序的_____②______。
A.①有效性②正确性
B.①正确性②可靠性
C.①可靠性②有效性
9.编译程序的实现算法较为复杂,但它可以产生高效运行的____①______程序,因此更适合翻译那些规模较大、结构较复杂、需要较长运行时间的_____②______程序。
A.①可执行代码②系统
B.①执行②复杂
C.①目标②应用
10.高级语言源程序的翻译有两种方式,对程序逐句进行分析并立即执行的这种方式为_____①_______,另一种是需要把程序先转化为目标代码再装入内存运行,这种方式为______②______。
A.①翻译②解释
B.①解释②编译
C.①编译②解释
形考任务2
1.在C语言中,字符串常量的定界符是______。
A.空格
B.双引号
C.方括号
D.单引号
2.C语言中int变量能够表示的数值范围是______。
A.-32768~32767
B.0~65536
C.-32767~32768
D.0~65535
3.在C语言中,为了表示关系:
x≥y≥z,应该使用表达式______。
A.x≥y≥z
B.x>=y&y>=B=z
C.x>=y&&y>=z
D.x>=y>=z
4.实型常量在C语言中只能用____①______表示,表示方法有:
____②_______。
A.①十进制②小数形式和指数形式
B.①二进制②小数形式
C.①小数形式②十进制和二进制
4.在C语言中,不合法的int型常量是______。
A.32767
B.0678
C.32768L
D.0XABC
5.关于C语言语句的正确概念是______。
A.goto语句可以从C语言中去除
B.while和do-while都是直到型循环
C.switch语句可以替代if语句
D.在C语言中不能使用goto语句
6.C语言中的语句#defineR20用于定义_____①_______,语句charr1B.则用于定义_____②_____。
A.①整型常量20②字符串变量
B.①符号变量R②字符常量
C.①符号常量R②字符变量
7.写出程序的运行结果。
#include
main()
{inta,b;
scanf(”%d%d,&a,&b);
if(++a>=b)printf(”Yes”);
printf(“a+b=%d\n”,a+b);
}
如果输入:
a=6,b=8,则输出结果是___________。
A.①a+b=15
B.“a+b=%d\n”,14
C.15
D.①a+b=14
8.写出程序的运行结果。
main()
{inta=0;
for(a=0;a<3;a++);
printf(“%d\n”,a);
}
输出结果是___________。
A.2
B.4
C.1
D.3
9.写出程序的运行结果。
#include
main()
{inti=0,j=0,k=0,m,
for(m=0;m<4;m++)
switch(m)
{case0:
i=m++;
case1:
j=m++;
case2:
k=m++;
case3:
m++;
}
printf(“\n%d,%d,%d,%d”,i,j,k,m);
}
该程序的执行结果是______。
A.0,1,2,4
B.0,1,2,3
C.0,1,1,3
D.0,1,2,5
10.写出程序的运行结果。
#include
main()
{intj;
for(j=0;j<10;j++)
{if(j%2==0)continue;
printf(“%d”,j);
}
}
该程序的执行结果是___________。
A.1357
B.2468
C.02468
D.13579
11.从键盘输入3个整数,输出其中最大数。
参考答案:
#include”stdio.h”
voidmain()
{inta,b,c,max;
printf(“a,b,c”);
scanf(“%d,%d,%d”,&a,&b,&c);
max=a;
if(max
if(max//printf(“a:
%d,b:
%d,c:
%d\n”,a,b,c);
printf(“%d\n”,max);
}
12.编写一程序,从键盘输入10个实数,计算并输出算术平均数。
参考答案:
main()
{
floata[11]={0};
floatave=0;
inti,j;
printf(“pleaseenteryournum”);
for(i=0;i<10,i++)
{
scanf(“%df\n”,&a[i]);
}
for(j=0;j<10;j++)
{
a[10]+=a[j];
}
printf(theansweris%f,a[10]);
}
13.利用穷举法编写一个算法判断给定的正整数n是否是素数,即判断n是否只能被1和自身整除。
参考答案:
main()
{intm,I,k;
scanf(“%d”,&m);
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)break;
if(i>=k+1)
printf(“%disaprimenumber\n”,m);
else
printf(“%disaprimenumber\n”,m);
}
形考任务3
1.数据结构研究主要包括三个方面的内容,分别是:
数据的(逻辑)结构,数据的(存储)结构,以及定义在这上面的数据的(运算)。
2.当向一个顺序表插入一个元素时,从插入位置开始后的所有元素均需(向后)一个位置,移动过程是从(后)向(前)依次移动每一个元素。
3.要从一个顺序表删除一个元素时,被删除之后的所有元素均需(向前)一个位置,移动过程是从(前)向(后)依次移动每一个元素。
4.线性表、栈和队列都是(线性)结构,可以在线性表的(任意)位置插入和删除元素,而栈只能在(栈顶)插入和删除元素;对于队列只能在(队尾)插入元素,在(对头)删除元素。
5.如果要在链表中删除一个元素,则只要将要删除的元素的(前)一个元素的指针调整为指向要删除的元素的下一个元素。
6.为了解决假溢出,通常采用(循环)队列的方法,即把队列的存储空间设想成一个头尾相接的环状结构。
7.二叉树的第(i)层上至多有2i-1(i≥1)个结点。
8.在任意二叉树中,若有n0个叶子结点,n2个度为2的结点,则必有:
(n0=n2+1)
9.深度为h且含有2h-1个结点的二叉树为(满)二叉树。
10.深度为5的二叉树中至多含有(31)点。
11.数据的存储结构分为两种,它们是______。
A.顺序存储和链式存储
B.线性存储和数组存储
C.数组存储和指针存储
D.线性存储和树型存储
12.如果在内存中采用链式保存线性表,则元素之间的逻辑关系通过______。
A.设立单独的区域存储元素之间的逻辑次序
B.保存在元素中的指针表示先后次序
C.元素在内存中的相对位置表示逻辑次序
D.元素本身的关键字来表示逻辑次序
13.进行顺序查找的条件是______。
A.数据有序且采用顺序存储方式
B.数据不需要有序,也不限制存储方式
C.数据不需要有序,但需要顺序存储
D.数据有序且采用链式存储方式
14.队列的最主要特点是______。
A.一端进一端出
B.先进后出
C.两端进出
D.先进先出
15.如果在具有层次结构的一组元素中,存在着一对一的关系,我们可以认为这样的数据的逻辑类型就是______。
A.集合
B.图型结构
C.线性结构
D.树型结构
16.在任意二叉树中,如有N个叶子结点,M个度为_____①_______的节点,则必有_____②_____。
A.①2②N=M+2
B.①2②N=M+1
C.①1②N=M+2
17.若按照一定的顺序依次访问树中的每一个结点,而且每个结点只被访问一次,则称这样的操作为______。
A.建立
B.遍历
C.查找
D.排序
18.对如图所示的二叉树进行先序遍历的顶点序列是 _____①_______,后序遍历时得到的顶点序列是_____②_____。
A.①ABDEC ②EDBCA
B.①EDBCA ②DEBAC
C.①DEBAC②ABDEC
19.设有一个栈,元素进栈的次序为A,B,C,D,E,下列是不可能的出栈序列。
A.B,C,D,E,A
B.E,A,B,C,D
C.A,B,C,D,E
D.E,D,C,B,A
20.已知一个图如下所示,则从顶点a出发按深度优先搜索遍历可以得到的一种顶点序列为哪个?
A.a,b,f,e,c,d
B.a,e,c,b,f,d
C.a,e,d,f,b,c
D.a,c,e,b,d,f
形考任务4
1.算法的四种基本操作是(逻辑运算)、(算术运算)、(数据比较)、(数据传送)。
2.算法的控制结构有三种基本形式:
(顺序结构)、(选择结构)、(循环结构)。
3.评价算法需要从几个不同的角度考虑,最主要的是(正确性)和(运行效率)。
4.算法的运行效率包括两方面,算法的(时间)复杂度和算法的(空间)复杂度。
5.结构化程序设计的总体思想是采用模块化结构,(自顶向下)、(逐步求精)。
6.软件生存周期包括软件的(定义)、软件的(开发)和软件(使用与维护)3个部分。
7.软件定义时期主要包括(可行性研究)和(需求分析)两个阶段。
8.软件开发时期是具体设计和实现在前一时期定义的软件,它由软件的(设计)阶段、(实现)阶段、(集成)阶段组成。
9.软件工程的目标是可概括为生产具有(正确)性、(可用)性以及开销合宜的产品。
10.软件开发模型大体上可分为两种类型,第一种是以软件需求完全确定为前提的(瀑布)模型。
第二种是在软件开发初始阶段只能提供基本需求时采用的(渐进式)开发模型。
11.下列叙述中正确的是_____。
A.算法就是程序
B.设计算法时只需要考虑结果的可靠性
C.以上三种说法都不对
D.设计算法时只需要考虑数据结构的设计
12.下列叙述中正确的是_____。
A.一个算法的空间复杂度大,则其时间复杂度也必定大
B.以上三种说法都不对
C.一个算法的空间复杂度大,则其时间复杂度必定小
D.一个算法的时间复杂度大,则其空间复杂度必定小
13.一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是()。
A.有穷性
B.可行性
C.有零个或多个输入
D.有零个或多个输出
14.下面叙述正确的是()。
A.算法的时间复杂度是指执行算法所需要的计算工作量
B.算法的时间复杂度与空间复杂度一定相关
C.算法的效率只与问题的规模有关,而与数据的存储结构无关
D.数据的逻辑结构与存储结构是一一对应的
15.那一项不属于算法的四种基本的功能操作()。
A.数据比较
B.循环结构
C.算术运算
D.逻辑运算
16.在求解规模较大的问题时,可以把它分解成若干个规模较小的子问题,求出各个子问题的解之后,再把这些解合成原问题的解,这种方法是()。
A.递归法
B.回溯法
C.穷举法
D.分治法
17.当一个算法输入不合法的数据时,应当能够作适当处理,不致于引起严重后果,这属于算法的()。
A.高效性
B.正确性
C.可读性
D.健壮性
18.软件开发模型着重研究的是______。
A.程序设计的方法和编程技巧
B.软件系统的模型和对应不同模型的开发方法
C.软件开发全部过程、活动和任务的结构框架
D.软件系统的基本架构和常见的软件系统模型
19.早期进行程序开发过程中存在不少问题,在下列问题中有一个并不是早期程序员常见的问题,它是______。
A.对问题的抽象层次不够深入
B.程序员过分依赖技巧与天分,不太注重所编写程序的结构
C.无固定程序设计方法
D.程序中的控制随意跳转,不加限制地使用goto语句
20.程序设计要遵循一定的开发方法及思想,以下有一个不是程序设计过程中应该遵循的开发方法,它是______。
A.数据结构优先原则
B.模块化程序设计方法
C.面向对象的程序设计方法
D.结构化设计方法
21.人才的成长道路是多种多样的,每个人都可以走出一条独特的成材之路。
通过对程序设计基础课程的学习以及你对计算机历史中的先驱大师生平成就的了解,谈谈你都有些什么收获?
为成为一个合格的计算机人才,今后你将如何规划好自己的成才之路?
参考答案:
在知识经济的今天,职业能力对每一个在职者提出了更大的挑战。
而如今,一边在工作岗位上努力拼搏,一边在给自己学习充电,虽然有些辛苦。
但是为了家庭,为了工作,为了未来,还是要撸起袖子加油干。
未来掌握在自己手中,只有不断学习,加油充电,才能立于不败之地。
电大远程教育教学方式非常适合我们在职人员,学习家庭两不误。
特别是电大学习网有着丰富的学习资源,各种各样的学习方式,能够满足我们的学习需求。
我们年轻一代正面临人生发展最为关键的时期。
时代要求我们要在学习、生活各个方面全方位面对和思考如何正确处理个体与社会的关系等一系列重大问题。
我们要学会生存的技能、学会学习的潜力、学会创造与创新、学会奉献。
计划定好固然好,但更重要的,在于其具体实施并取得成效。
这一点时刻都不能被忘记。
任何目标,只说不做到头来都只会是一场空。
然而,现实是未知多变的。
定出的目标计划随时都可能受到各方面因素的影响。
这一点,每个人都应该有充分心理准备。
当然,包括我自己。
因此,在遇到突发因素、不良影响时,要注意保持清醒冷静的头脑,不仅要及时面对、分析所遇问题,更应快速果断的拿出应对方案,对所发生的事情,能挽救的尽量挽救,不能挽救的要积极采取措施,争取做出最好矫正。
相信如此以来,即使将来的作为和目标相比有所偏差,也不至于相距太远。
当然,这只是我个人观点,若有不当之处,敬请大家指出或补充,在此感谢!