程序设计基础复习题
一、单选
1、一个完整的计算机系统应该包括(  )
A、系统软件和应用软件 B、计算机及其外部设备
C、硬件系统和软件系统 D、系统硬件和系统软件
2、“裸机”的概念是指(    )
A、正在进行设计还没有组装好的计算机  B、已经组装好但还没有安装任何软件的计算机
C、仅安装了操作系统的计算机系统      D、安装了文字处理软件但没有安装专用数据处理系统的计算机
3、世界上第一台电子数字计算机研制成功的时间是(  )
A、1936年    B、1946年    C、1956年    D、1970年
4、CASE的含义是(    )
A、计算机辅助设计 B、计算机辅助制造 C、计算机辅助教学  D、计算机辅助软件工程
5、当前广泛使用的微型计算机是(  )
A、第一代  B、第二代  C、第三代  D、第四代
6、当代计算机的体系结构称为是(    )
A、冯·诺依曼机  B、非冯·诺依曼机  C、图灵机  D、比尔盖茨机
7、硬盘是(  )
A、输入设备  B、输出设备  C、存储设备  D、计算设备
8、下面4句话中,最准确的表述是(    )
A、程序=算法+数据结构  B、程序是使用编程语言实现算法
C、程序的开发方法决定算法设计  D、算法是程序设计中最关键的因素
9、计算机能直接执行的语言是(  )
A、机器语言  B、汇编语言  C、高级语言  D、目标语言
10、解释程序的功能是(    )
A、将高级语言程序转换为目标程序  B、将汇编语言程序转换为目标程序
C、解释执行高级语言程序          D、解释执行汇编语言程序
11、下面4种程序设计语言中,不是面向对象式语言的是(    )
A、JAVA    B、Object Pascal  C、Delphi    D、C
12、不是C语言的基本数据类型是(    )
A、int    B、double    C、char    D、bool
13、在C语言中,为了求两个整数相除之后得到的余数,可以使用运算符(    )
A、/    B、%    C、*    D、++
14、数据的逻辑结构分为(    )
A、纯属结构和非线性结构    B、顺序结构和非顺序结构
C、树型结构和图型结构      D、链式结构和顺序结构
15、用链表表示纯属表的优点是(    )
A、便于随机存取  B、便于插入和删除操作  C、花费的存储空间较顺序存储少
D、元素的物理顺序与逻辑顺序相同
16、栈的最主要特点是(    )
A、先进先出  B、先进后出  C、两端进出  D、一端进一端出
17、下面4句结论只有一句是错误的,它是(    )
A、二叉树是树  B、二叉树的左右子树的位置可以颠倒
C、可以使用二叉树的思想对数值进行排序  D、可以采用链表方式存储二叉树
18、螺旋模型中包括需求定义、风险分析、工程实惠和评审四个阶段,在开发过程中(  )
A、每个周期都要包括这四个阶段  B、每个周期可以包括不同的阶段
C、在最后交付使用之前才进行评审 D、在项目开始时才需要进行风险分析
19、软件工程的出现主要是由于(  )
A、程序设计方法学的影响  B、其他工程科学的影响
C、软件危机的出现        D、计算机的发展
20、在软件工程中,软件测试的目的是(    )
A、试验性运行软件 B、发现软件错误 C、证明软件是正确的  D、出软件中全部错误
二、填空题
1、世界上最早的高级程序设计语言是(    )
2、计算机按照工作原理进行分类可以分为(      )和(    )
3、当前计算机的最基本原理采用的是(      )
4、计算机存储器一般分为两级,它们是(    )和(    )
5、高级语言程序的翻译有两种方式,一种是(    ),另一种是(    )
6、数据的存储结构可以用(    )和(    )
7、树型结构的主要特征是结点之间存在着一种层次的关系,数据元素之间的关系是(    )的关系。在图型结构中,任何两个结点之间都可能存在着联系,数据元素之间存在着(      )的关系。
8、若循环队列的头指针为front,尾指针为rear,rear指向队尾元素,front指向当前队头元素的前一个位置。则队空的条件是(    ),队满的条件是(    )入队操作时附属指针应进行的操作是(  ),出队时队头指针应进行的操作是(  )。
9、评价算法效率的主要指标是(    )和(    )
10、软件开发模型大体上可分为两种类型,第一种是(    )为前提的瀑布模型。第二种是
在软件开发初始阶段(  )时采用的渐进式开发模型,如原型模型、螺旋模型等。
三、简答
1、简述计算机程序设计语言的分类和各类的特点。
2、什么是程序设计方法学?程序设计方法学是在什么基础上发展起来的?程序设计方法学包含的主要内容是什么?
3、软件工程中瀑布模型的主要思想和特点是什么?
4、编写程序,从键盘输入h值,输出h行用*号组成的等腰三角形。例:输入h=4,输出的图形如下:
          *
          ***
        *****
        *******
5、编写程序,中国古代数学家张丘健在他的《算经》中提出了著名的“百钱百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何?
         
答案:
一、
1C 2B 3B 4D 5D 6A 7C 8A 9A 10C 11D 12D 13B 14A 15B 16B 17B 18A 19C 20B
二、填空
1、FORTRAN  2、数字计算机 模拟计算机  3、冯·诺依曼的“存储程序原理”
4、主存储器(主存,内存)    外存储器(外存,辅存)
编程语言翻译
5、解释方式  编译方式    6、顺序存储方式 链式存储方式  7、一对多 多对多
8、队空:front=rear  队满:(rear+1)%maxsize=front
入队时::rear=(rear+1)%maxsize      出队时:front=(front+1)%maxsize
9、时间复杂度  空间复杂度        10、软件需求完全确定      只能提供基本需求
三、简答
1、简述计算机程序设计语言的分类和各类的特点
答:一般分为三类:机器语言,汇编语言和高级语言
机器语言是台计算机出厂时,厂家都为它配备一套机器语言,不同的计算机,其机器语言通常是不同的。由于机器语言是面向具体机器的,所以其程序缺乏通用性,编写程序的过程繁琐复杂,易出错,错了又不易查和修改,编出的程序可读性极差。
汇编语言是机器语言的符号化形式。用汇编语言编写的程序经汇编器加工处理后,就转换成可由计算机直接执行的目标程序。汇编语言提高了程序设计效率和计算机利用率。汇编评议仍属面向机器的一种低级语言,其程序的通用性和可读性较差。
高级程序设计语言是指通用性好,不必对计算机的指令系统有深入的了解就可以编写程序。采用高级语言编写的程序在不同型号的计算机上只需做某些微小的屐便可运行,只要采用这些计算机上的编译程序重新编译即可。高级语言具有通用性,与具体的机器无关。
2、什么是程序设计方法学?程序设计方法学是在什么基础上发展起来的?程序设计方法学包含的主要内容是什么?
程序设计方法学是讨论程序的性质、程序设计的理论和方法的一门学科。
在程序设计方法学中,结构程序设计占有十分重要的地位,可以说,程序设计方法学是在结构程序设计的基础上逐步发展和完善起来的。
它包含的内容比较丰富,例如,结构程序设计,程序正确性证明,程序变换,程序的形式说明与推导、程序综合、自动程序设计等。
3、软件工程中瀑布模型的主要思想和特点是什么?
瀑布模型也称软件生存周期模型。根据软件生存周期各个阶段的任务,瀑布模型从可行性
研究(或称系统需求分析)开始,逐步进行阶段性变换,直到通过确认测试并得到用户确认的软件产品为止。瀑布模型上一阶段的变换结果是下一阶段变换的输入,相邻的两阶段具有因果关系,紧密相联。一个阶段工作的失误将蔓延到以后的各个阶段。
瀑布模型在软件工程中占有重要的地位,它提供了软件开发的基本框架,这经依靠“个人技艺”开发软件好得多。它有于大型软件开发过程中人员的组织和管理,有利于软件开发方法和工具的研究与使用,从而提高了大型软件项目开发的质量和效率。
瀑布模型的主要特点是:阶段间的顺序性和依赖性,开发过程是一个严格的下导式过程,即前一阶段的输出是后一阶段的输入,每一阶段工作的完成需要确认,而确认过程是严格的追溯式过程,后一阶段出现了问题要通过前一阶段的重新确认来解决。因此,问题发现得越晚解决问题的代价就越高。
4、
#include<stdio.h>
main()
{  int h, k, j;
scanf(“%d”,&h);
for(k=1; k<=h; k++ )
{ for ( j=1; j<=h-k; j++ )
    printf(“ ”);
  for (j=1; j<=2*k-1; j++ )
    printf(“*”);
  printf(“\n”);
}
5、
#include<stdio.h>
main()
{  int x, y, z, j=0;
for(x=0; x<=20; x++ )
for (y=0; y<=33 ; y++ )
  for (z=0; z<=100 ; z++ )
    if ( z%3==0 && x+y+z==100 && 5*x+3*y+z/3==100)
  printf(“%2d:cock=%2d hen=%2d chicken=%2d\n”, ++j, x, y, z);
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。