程序设计基础形考作业答案_第1页
程序设计基础形考作业答案_第2页
程序设计基础形考作业答案_第3页
程序设计基础形考作业答案_第4页
程序设计基础形考作业答案_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《程序设计基础》形考作业答案广州市广播电视大学吴献彩程序设计基础作业1一、选择题1、B世界上第一台电子数字计算机研制成功的时间是(1946)年。2、B计算机的发展阶段通常是按计算机所采用的(逻辑元件)来划分的。3、C从第一代电子计算机到第四代计算机的体系结构都是相同的,都是由运算器、控制器、存储器以及输入/输出设备组成的,称为(冯 .诺依曼)体系结构。4、C一个完整的计算机系统应该包括(硬件系统和软件系统)5、A主要决定微机性能的是(CPU)6、B计算机应用广泛,而其应用最广泛的领域是(数据处理)7、B计算机硬件系统中最核心的部件是(CPU)8、A、D计算机的主存储器一般由(ROM和RAM)组成,主存储器比辅存储器(读写速度快)、C解释程序的功能是(解释执行高级语言程序)、D下述所列程序中哪种程序不属于语言处理程序?(操作系统)、C在下列计算机语言中,哪个依赖于具体的机器?(机器语言、汇编语言)、A解释程序和编译程序同属于语言处理程序,下列关于它们的叙述中哪一个是正确的?(解释程序产生目标程序)、B计算机硬件能直接执行的语言只有(机器语言)14、D下述语言(1)JAVA(2)FORTRAN(3)C哪个一般是编译型语言?((2)和(3))、A在软件方面、第一代计算机主要使用(机器语言)、D计算机软件是指:(计算机程序及其有关文档)、C用高级语言编写的程序:(具有通用性和可移植性)、填空题1、计算机的五大应用领域是( 科学计算)、(数据处理)、(过程控制)、(计算机辅助系统)和(人工智能)2、总线是连接(CPU)、(存储器)和(外部设备)的公共信息通道。通常由三部分组成:(数据总线)、(地址总线)、(控制总线)3、计算机是一类智能机器,这是因为它除了完成自述运算外,还能完成某些(逻辑运算)。4、世界上第一台计算机取名为( ENIAC)5、个人计算机简称PC,这种计算机属于(微)型计算机6、目前制造计算机所采用的电子器件是( 超大规模集成电路)7、CPU是(中央处理器)的英文缩写,它主要由(运算器)和(控制器)组成8、计算机的系统组成部分是( 硬件系统)和(软件系统)9、计算机的硬件系统一般可分为( 运算器)、(控制器)、(存储器)和(输入/输出设备)等几个部分10、计算机的存储器分为( 主存)和(辅存)两类(或内存外存)11、随机存储器和只读存储器的英文缩写分别为(RAM)和(ROM)12、按工作原理分类,电子计算机分为(电子数字计算机)和(电子模拟计算机)13、(操作系统)是管理计算机软、硬件资源,为用户提供方便、高效使用界面的最重要的一种系统软件。14、(图灵机)是现代计算机的抽象数学模型,奠定了现代计算机的基础,则是现代计算机的一种物理实现。15、高级语言源程序的翻译方式包括( 编译方式)和(解释方式)16、按照语言的级别,程序设计语言分为( 低级语言)和(高级语言);按照应用范围则分为(通用语言)和(专用语言)三、问答题1、计算机的主要特点是什么?答:1.运算速度快2.计算精度高3.存储容量大4.具有逻辑判断功能5.自动化程度高,通用性强2、什么是系统软件和应用软件?它们的作用有何不同?答:系统软件是为有效利用计算机系统的资源、充分发挥计算机系统的工作潜力、正常运行、尽可能方便用户使用计算机而编制的软件。应用软件是用户利用计算机及其提供的系统软件,为解决实际问题所开发的软件的总称。没有系统软件,计算机将难以发挥其功能,甚至无法工作。而应用软件的存在与否并不影响整个计算机系统的运转,但它必须在系统软件的支持下才能工作。3、软件和硬件的关系如何?答:硬件是软件的基础,软件是硬件功能的完善和扩充,它们相互依存,无严格界面,相互促进。具体表现在:(1)互相依存:计算机硬件与软件的产生与发展是相辅相成、互相促进的,二者密不可分;(2)无严格功能界面:计算机的硬件与软件虽然各有分工,但它们之间的功能界面是浮动的。(3)相互促进:无论从实际应用,还是计算机技术的发展看,计算机的硬件与软件之间都是相互依赖、相互影响、相互促进的。4、简述存储程序控制的基本原理答:“存储程序控制”原理的基本内容是:(1)用二进制形式表示数据和指令;(2)将程序(数据和指令序列)预先存放在主存储器中,使计算机在工作时能够自动高速地从存储器中取出指令,并加以执行,这是“存储程序控制”的基本特点;(3)确立了计算机系统的5大基本部件:存储器、控制器、运算器、输入设备和输出设备,同时也规定了5大部件的基本功能。5、简述程序设计过程包括哪些步骤?答:程序设计过程一般包括以下几个步骤(1)确定要解决的问题;2)分析问题,建立数学模型;3)选择计算方法;(4)确定数据结构和算法;(5)绘制流程图;(6)编写程序;(7)调试并测试程序;(8)整理资料,交付使用。6、编译过程分为几个阶段?各阶段的主要工作是什么?答:编译过程包括以下六个阶段:(1)词法分析:对源程序进行扫描,产生单词符号,并归类以等待处理;(2)语法分析:检查源程序在语法上是否正确;(3)语义分析:判断源程序含义;(4)中间代码生成:生成中间代码;(5)代码优化:对中间代码进行优化,简化计算;(6)目标代码生成:将中间代码转换成目标代码。程序设计基础作业2、选择题1、A正确的C语言自定义标志符是:(file_bak)2、C已知intj,i=1;执行语句j=-i++;后。j的值是:(-1)3、AC语言中,错误的int类型的常数是:(32768)4、A阅读程序,选择运行结果:(YES)#include<stdio.h>main(){charc='A';if(‘0'<=c<='9')printf(“YES”);elseprintf(“NO”);}5、DC语言对嵌套if语句的规定是:else总是与(其前面最近的且尚未配对的if)配对。6、B一个C语言程序总是从(主函数)开始执行。7、D C语言中函数返回值的类型是由(定义函数时所指定的函数类型)8、C设inta=9,b=8,c=7,x=1;则执行语句:if(a>7)if(b>8)if(c>9)x=2;elsex=3:后x的值是(1)9、B有如下程序:main0{intx=23;do{printf( “%d--”);},xwhile(!X);}该程序的执行结果是:(23)10、A若调用一个函数,且此函数没有return语句,则正确的说法是:有返回值)二、阅读下列程序,写出运行结果1、#include<stdio.h>Voidmain(){inta=1,b=4,c=2;a=(a+b)/c;printf(“%dn”,--a);}答:运行结果:12、voidmain(){charc1=67; /*'A'的ASCII码值为65*/If(‘A'<=c1&&c1<='Z')printf( “%d,%c”,c1,c1+1);elseprintf(“%c”,c1);}答:运行结果:67,D3、viodmain(){inta=0,n=5;for(;;){a++;n--;printf(“%d,”,a);a=n;{{if(n==0)break;}printf(“%d”,a);}答:运行结果:1、5、4、3、2、04、main(){intx=20,y=8;printf("x=%d;y=%d",x+1,--y);}运行结果:x=21;y=75、 #include"stdio.h"main(){intk=1,j=0;while(k+j<=4){if(k>j)j=j+2;elsek=k+2;}printf("%d%d\n",k,j);}运行结果:326、main()intx=10,y=10;x=x+1;y=y%3;printf("x=%d;y=%d",x++,y);}运行结果:x=11;y=17、 #include"stdio.h"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);}运行结果:0,1,2,58、main()intm=5;if(m++>5)printf("%d\n",m);elseprintf("%d\n",m--);}运行结果:69、 #include"stdio.h"main(){intj;for(j=0;j<10;j++){if(j%2==0)continue;printf("%d",j);}}运行结果:13579三、编程题1、从键盘输入3个整数,输出其中最大数答:#include<stdio.h>

voidmain(){inta,b,c,max;printf( “Pleaseinput3integers:n”);scanf(“%d%d%d”,&a,&b,&c);max=a;if(b>a)max=b;if(c>x)max=c;printf(“Max=%d”,max);}成年女子一次编程求出成年2、由36块砖,共36人搬,成年男子一次搬4块砖,搬3块砖,儿童两个人抬1块砖,恰好一次全部搬完,男子、成年女子和儿童各有多少人?成年女子一次编程求出成年答:#include<stdio.h>voidmain(){intx,y,z;for(x=0;x<=36/4;x++)for(y=0;y<=36/3;y++){z=36-x-y;if(4*x+3*y+z/2==36&&z%2==0)printf(x=%d,y=%d,z=%d,x,y,z);printf(x=%d,y=%d,z=%d,x,y,z);}}3、按下列公式s(n)12+22??+n2编写计算并输出s值,其中的n值由键盘输入。答:#include<stdio.h>voidmain(){intx,i,s=0;for(i=1;i<=x;i++)s=s+i*i;printf( “s=%d”,s);}4、编写一程序,从键盘输入 10个实数,计算并输出算数平均数答:#include<stdio.h>voidmain(){floatx,s=0;for(i=0;i<10;i++){scanf(“%f”,&x);s=s+x;printf( “Theaverageis%f ”,s/10);}5、求方程ax2+bx+c=0的根。其中abc由键盘输入,设b2-4ac>0#include<math.h>#include<stdio.h>voidmain(){floata,b,c,disc,x1,x2,x3,p,q;printf("pleaseinputfloata,b,c:\n");scanf("%f%f%f",&a,&b,&c);disc=b*b-4*a*c;p=-b/(2*a);q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf("x1=%5.2f,x2=%5.2f\n",x1,x2);}6、编写程序。从键盘输入 h值,输出h行用*号组成的平行四边形。例:输入h=4,输出的图形如下:答:#include<stdio.h>voidmain(){inth,k,j;scanf("%d",&h);for(k=1;k<=h;k++){for(j=1;j<=h-k;j++)printf("");for(j=1;j<=h;j++)printf("*");printf("\n");}}7、利用穷举法编写一个算法判断给定的正整数 n是否是素数,即判断n是否只能被1和自身整除。答:#include<math.h>#include<stdio.h>voidmain(){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);elseprintf("%disnotaprimenumber\n",m);}程序设计基础作业3一、选择题1、D、A、C、F、A(数据)是所有能输入到计算机中被计算机加工处理的信息集合,(数据元素)是的基本单位,它可以由基本单位,它可以由若干个(数据项)和(数据结构)是性质相同的(数据元素)集合。2、B用链表表示线性的优点是:(便于插入和删除操作)3、A下述哪一条是顺序存储方式的优点?(存储密度大)4、B、A线性表的顺序存储结构是一种(顺序存储)的相信结构,线性表的链式存储结构是一种(随机存储)的存储结构。5、A在一个长度为n的顺序表中删除第i(0<i<=n)个元素时,需向前移动(n-i)个元素。6、D线性表L=(a1,a2?an),下列说法正确的是(:除第一个元素和最后一个元素外,其余每个元素都有一个且仅有一个直接前驱和直接后继7、B一个队列的人队序是1,2,3,4,则队列的输出序列是:1,2,3,4.8、C若进栈序列为1,2,3,4,进栈过程中可以出栈,则(3,1,4,2)不可能是一个出栈序列9、A 队列是限制插入只能在表的一端,而删除在表的另一商进行的线性表,其特点是:(先进先出)10、 B以下哪一个不是队列的基本运算?(从队列中删除第I个元素)、C、C、D、A栈和队列是一种限制了插入和删除操作位置的线性表。栈插入操作只能在栈(顶)进行,删除操作只能在栈(顶)进行:队列的插入操作只能在队(尾)进行,删除操作只能在队(首)进行。、A某二叉权的前序编历结点的访问顺序是ABCDEFG,中序编历结点的访问顺序是CBDAFGE,则其后序编历结点的访问顺序是:(CDBGFEA)、B有关二叉树的下列说法正确的是:(一颗二叉树的度可以小于 2)14、B在二叉树结点的先序序列、中序序列和后序序列中,所有叶子结点的先后顺序:(完全相同)、B在一棵二叉树上第5层的结点数最多为:(16)、B、C在一个图中,所有顶点的度数之和等于所有边数的(2)倍,在一个有向图中,所有的顶点入度之和等于所有顶点的出度之和的( 1)倍。、D一个具有n个顶点的无向图中,要连通全部顶点至少需要(n-1)条边。、D对一个具有n个顶点的图,采用邻接接矩阵表示则该矩阵的大小为:n2)、D已知一个图如下所示,则从顶点a出发按深度优先搜索遍历可以等到的一种顶点序列为:(a,e,d,f,b,c)、D从未排序的序列中依次取出元素与已排序列中的元素作比较,放已入排序序列中的正确位置上,此方法称为:(直接插入排序)、填空题:1、数据结构包括的三个方面的内容是:数据的(逻辑结构),数据的(存储结构),数据的(运算)。2、当向一个顺序表插入一个元素时,从插入位置开始后的所有元素均需( 向后移动)一个位置,移动过程是从(最后一个元素开始)向(后)依次移动每一个元素向前移动)3、要从一个顺序表删除一个元素时,被删除之后的所有元素均需(向前移动))向(前)依次移动每一个位置,移动过程是从(删除元素后的第一个元素开始)向(前)依次移动每一个元素。4、在线性表的顺序存储中,元素之间的逻辑关系是通过( 相对位置)决定的。顺序表中逻辑上相邻的元素,物理位置(也)相邻。5、线性表、栈和队列是(线性)结构,可以在线性表的(任意)位置插入和删除元素,而栈只能在(栈顶)插入和删除元素;对于队列只能在(队尾)插入元素,在(队首)删除元素。6、栈的插入和删除只能在栈的(栈顶)进行,队列的插入和删除分别在(两)端进行,进行插入的一端叫做(队尾),进行删除的一端叫做(队首)。7、对于一个具有n个结点的二叉树,当它为一棵(完全)二叉树时具有最小高度,当它为一棵单支树时具有(最大)高度8、设无向图G的顶点数为n,图G最少有(n-1)条边,最多有(n(n-1)/2)三、简答题:1、假定有四个元素依次进栈,进栈过程中允许出栈,试写出所有可能的出栈序列。答:假设ABCD四元素依次进栈:1)A进栈->B进栈->C进栈->D进栈->出栈->出栈->出栈->出栈结果:D->C->B->A2)A进栈->B进栈->C进栈->出栈->D进栈->出栈->出栈->出栈结果:C->D->B->A3)A进栈->B进栈->C进栈->出栈->出栈->D进栈->出栈->出栈结果:C->B->D->A4)A进栈->B进栈->C进栈->出栈->出栈->出栈->D进栈->出栈结果:C->B->A->D5)A进栈->B进栈->出栈->C进栈->D进栈->出栈->出栈->出栈结果:B->D->C->A6)A进栈->B进栈->出栈->出栈->C进栈->D进栈->出栈->出栈结果:B->A->D->C7)A进栈->B进栈->出栈->C进栈->出栈->D进栈->出栈->出栈结果:B->C->D->AA进栈->B进栈->出栈->出栈->C进栈->出栈->D进栈->出栈结果:B->A->C->DA进栈->出栈->B进栈->C进栈->D进栈->出栈->出栈->出栈结果:A->D->C->BA进栈->出栈->B进栈->C进栈->出栈->D进栈->出栈->出栈结果:A->C->D->BA进栈->出栈->B进栈->C进栈->出栈->出栈->D进栈->出栈结果:A->C->B->DA进栈->出栈->B进栈->出栈->C进栈->D进栈->出栈->出栈结果:A->B->D->CA进栈->出栈->B进栈->出栈->C进栈->出栈->D进栈->出栈结果:A->B->C->D2、二叉树与树之间有什么区别?一棵度为 2的树与二叉树有什么区别?答:二叉树的度最大为2,而树的度无此限制。在二叉树中,一个结点的子树有左、右之分,不能互换位置。而度为2的树则无此限制3、写出对如图所示二叉树进行先序遍历、中序遍历、后序遍历时得到的顶点序列。答:先序遍历序列:ABDEC中序遍历序列:DEBAC后序遍历序列:EDBCA程序设计基础作业4一、选择题与填空题1、D结构化程序流程图中一般包括三种基本结构,下述结构中哪一种不属于其基本结构(嵌套结构)2、A程序设计语言的选择是顺利实施编程的重要基础,评价语言的因素很多,而其重要的选择依据是(语言的应用领域)3、B在软件工程中,软件测试的目的是(发现软件错误)4、 E软件危机是软件产业化过程中出现的一种现象,下述现象中,(软件需求难以满足、软件开发成本提高、软件开发进度难以控制、软件质量不易保证)5、C软件工程的出现主要是由于(软件危机的出现)6、算法的四种基本操作是(逻辑运算、算术运算、数据比较、数据传送)7、算法的控制结构给出了算法的执行框架,她决定了算法中各种操作的执行(次序)8、算法的控制结构有三种基本形式:(顺序结构、选择结构、循环结构)9、评价算法的综合性能最主要的是算法的( 正确性)和(运行效果)、算法的隐匿性效率包括两方面,算法的(时间)复杂度和算法的(空间)复杂度。、结构化程序设计方法的主要技术是(自顶而下)和(逐步求精)、软件生命周期包括软件的(定义)、软件的(开发)和(使用与维护)软件3个部分。、软件定义时期主要包括(可行性分析)和(要求分析)两个阶段。软件设计、软件开发时期是具体设计和实现在前一时期定义的软件,它由(阶段、实现阶段、测试阶段)3个阶段组成。软件设计、软件工程的目标是可概括为生产具有(正确)性、(可用)性,以及(开销合宜)的产品。、常见的软件开发模型由(瀑布模型、快速原型法模型、螺旋模型)二、简答题:1、什么是算法?它有哪几个重要特性?简述三种算法的描述形式和特点。答:算法是用于求解某个特定问题的一些指令的集合。算法的特性:1.有穷性2.确定性3.可行性4.输入性5.输出性用自然语言描述的算法通俗易懂,而且容易掌握,但算法的表达与计算机的具体高级语言形式差距较大,通常是用于介绍求解问题的一般算法。伪代码是一种介于自然语言与计算机语言之间的算法描述方法。它结构性较强,比较容易书写和理解,修改起来也相对方便。其特点

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论