程序设计基础

程序设计基础
程序设计基础

《程序设计基础》形成性考核册及参考答案

作业一

(第一章——第三章)

一、填空题

1.世界上第一台电子数字计算机研制成功的时间是 ( B ) 年。

A)1936 B)1946 C)1956 D)1970

2. 计算机的发展阶段通常是按计算机所采用的 ( B ) 来划分的。

A)内存容量 B)逻辑元件 C)程序设计语言 D)操作系统

3.从第一代电子计算机到第四代计算机的体系结构都是相同的,都是由运算器、控制器、存储器以及输入/输出设备组成的,称为( C )体系结构。

A) 图灵 B)比尔·盖茨 C)冯·诺依曼 D)诺依斯

4.一个完整的计算机系统应该包括( C ) 。

A)系统软件和应用软件 B) 计算机及其外部设备

C)硬件系统和软件系统 D)系统硬件和系统软件

5.主要决定微机性能的是( A ) 。

A) CPU B) 耗电量 C)质量 D)价格

6.计算机应用广泛,而其应用最广泛的领域是 ( B ) 。

A)科学与工程计算 B) 数据处理与办公自动化

C) 辅助设计与辅助制造 D)信息采集与过程控制

7.计算机硬件系统中最核心的部件是 ( B ) 。

A) 主存储器 B) CPU C) 磁盘 D)输入/输出设备8.计算机的主存储器一般由①组成。主存储器比辅存储器②

( A ) ( D )

① A) ROM和 RAM B) RAM 和磁盘 C) RAM 和 CPU D)ROM

② A) 存储容量大 B) 价格便宜 C) 存储可靠性高 D)读写速度快

9.解释程序的功能是 ( C ) 。

A) 将高级语言程序转换为目标程序 B) 将汇编语言程序转换为目标程序

C) 解释执行高级语言程序 D) 解释执行汇编语言程序

10.下述所列程序中哪种程序不属于语言处理程序?( D )

A) 汇编程序 B) 编译程序 C) 解释程序 D) 操作系统11.在下列计算机语言中,哪个(哪些)依赖于具体的机器?( C )

(1)高级语言(2)机器语言(3)汇编语言

A 只有(1) B只有(2) C 只有(2)和(3) D (1)、(2)、(3)12.解释程序和编译程序同属于语言处理程序,下列关于它们的叙述中哪一个是正确的?(

B )

A)解释程序产生目标程序 B)编译程序产生目标程序

C)两者均产生目标程序 D)两者均不产生目标程序

13.计算机硬件能直接执行的语言只有( B )。

A)符号语言 B) 机器语言 C) 算法语言 D)汇编语言

14.下述语言(1) JAVA (2)FORTRAN (3) C 哪些一般是编译型语言?( D ) A)全部 B) (2) C) (3) D) (2)和(3)15.在软件方面,第一代计算机主要使用 ( A ) 。

A)机器语言 B)高级程序设计语言

C)数据库管理系统 D)BASIC和FORTRAN

16.计算机软件是指 ( D ) 。

A)计算机程序 B)源程序和目标程序

C)源程序 D)计算机程序及其有关文挡17.用高级语言编写的程序( C ) 。

A)只能在某种计算机上运行 B)无需编译或解释,即可被计算机直接执行

C)具有通用性和可移植性 D)几乎不占用内存空间

二、填空题

1.计算机的五大主要应用领域是科学计算、数据处理、过程控制、计算机辅助系

2.微型计算机是由存储器、中央处理器、输入设备和输出设备组成的。

3.计算机是一类智能机器,这是因为它除了完成算术运算外,还能完成某些逻辑运算。4.世界上第一台计算机取名为ENIAC 。

5.个人计算机简称PC,这种计算机属于微型计算机。

6.目前制造计算机所采用的电子器件是超大规模集成电路。

7.CPU是中央处理器的英文缩写,它主要由运算器和控制器组成。

8.计算机的系统组成部分是硬件系统和软件系统。

9.计算机的硬件系统一般可分为运算器、控制器、存储器、输入/输出设备等几个部分。

10.计算机的存储器分为主存和辅存(或内存和外存)两类。

11.随机存储器和只读存储器的英文缩写分别为RAM和ROM。

12.按工作原理分类,电子计算机分为电子数字计算机和电子模拟计算机。

13.操作系统是管理计算机软、硬件资源,为用户提供方便、高效使用界面的最重要的一种系统软件。

14.数据库管理系统是在具体计算机上实现数据库技术的系统软件。

15.系统软件具有两个特点:通用性和基础性性。

16.图灵机是现代计算机的抽象数学模型,奠定了现代计算机的基础,冯·诺依曼机则是现代计算机的一种物理实现。

17.高级语言源程序的翻译方式包括编译方式和解释方式。

三、问答题

1、计算机的主要特点是什么?

答:1.运算速度快 2.计算精度高 3.存储容量大 4.具有逻辑判断功能

5.自动化程度高,通用性强

2、什么是系统软件和应用软件?它们的作用有何不同?

答:系统软件是为有效利用计算机系统的资源、充分发挥计算机系统的工作潜力、正常运行、尽可能方便用户使用计算机而编制的软件。应用软件是用户利用计算机及其提供的系统

没有系统软件,计算机将难以发挥其功能,甚至无法工作。而应用软件的存在与否并不影响整个计算机系统的运转,但它必须在系统软件的支持下才能工作。

3、软件和硬件的关系如何?

答:硬件是软件的基础,软件是硬件功能的完善和扩充,它们相互依存,无严格界面,相互促进。具体表现在:P13

4、简述存储程序控制的基本原理?

答:“存储程序控制”原理的基本内容是:

(1)用二进制形式表示数据和指令;

(2)将程序(数据和指令序列)预先存放在主存储器中,使计算机在工作时能够自动高速地从存储器中取出指令,并加以执行,这是“存储程序控制”的基本特点;

(3)确立了计算机系统的5大基本部件:存储器、控制器、运算器、输入设备和输出设备,同时也规定了5大部件的基本功能。

5、什么是图灵机?它由哪几部分组成?图灵机和现代计算机有何关系?

答:图灵机不是一种具体的机器,而是一种思想模型。它由一个控制器和一根假设两端无界的工作带组成,是计算机的抽象数学模型。图灵机被公认为现代计算机的原型。

6、编译过程分为几个阶段,各阶段的主要工作是什么?

答:编译过程包括以下六个阶段:

(1)词法分析:对源程序进行扫描,产生单词符号,并归类以等待处理;

(2)语法分析:检查源程序在语法上是否正确;

(3)语义分析:判断源程序含义;

(4)中间代码生成:生成中间代码;

(5)代码优化:对中间代码进行优化,简化计算;

(6)目标代码生成:将中间代码转换成目标代码。

四、讨论题

1、结合你了解的计算机应用情况,谈一下计算机对现代生活和带来的影响?结合你对信息

作业二

(第四章)

一.选择题

1.正确的C语言自定义标志符是( A )。

A)file_bak B)abc(10)

C)continue D)class+3

2.已知 int j,i=1;执行语句j=-i++后。j的值是(C)

A)1 B)2 C)-1 D)-2

3.C语言中,错误的int类型的常数是 ( A )。

A)32768 B)0 C)037 D)0xAF

4、阅读程序,选择运行结果。( A )

#include

main()

{ char=’A ’;

if(‘0’<=c<=’9’)

printf(“YES”);

else

printf(“NO”);

}

A)YES B)NO C)YESNO D)语句错误

5. C语言对嵌套if语句的规定是:else总是与( D )配对。

A)其之前最近的if B)第一个if

C)缩进位置相同的if D)其前面最近的且尚未配对的if

6、一个C语言程序总是从( B )开始执行。

A)主过程 B)主函数 C)子程序 D)主程序

7、C语言中函数返回值的类型是由( D )决定的

A)return语句中表达式类型 B)调用该函数的主调函数类型

C)调用函数时临时 D)定义函数时所指定的函数类型

8.设int a = 9,b = 8,c = 7, x = 1;则执行语句

if (a>7) if (b>8) if (c>9) x=2 ;else x = 3;

后 x 的值是( C )。

A)0 B)2 C)1 D)3

9.有如下程序

main ()

{ int x=23;

d o {printf(“%d”,x--);}

while (! x);

}

该程序的执行结果是( B )。

A)321 B)23 C)不输出任何内容 D)陷入死循环10.若调用一个函数,且此函数没有return语句,则正确的说法是( A ) 。

(A)没有返回值

(B)返回若干个系统默认值

(C)能返回一个用户所希望的函数值

(D)返回一个不确定的值

二.填空题

阅读分析下列程序,在线处填上合适的内容使程序(或函数)完整。

1.下程序的功能是求三个数的最小公倍数。

Max (int x, int y ,int z)

{ if (x>y &&x>z ) return(x);

else if (y>=x &&y>z) return(y);

else return(z);

}

main()

{ int a,b,c,I=1,j,s;

s= Max(a,b,c) ;

while(1)

{ j=s*i;

if(j%a= =0 && j%b= =0 && j%c= =0)

break;

I++;

}

prinf(“%d”,j);

}

3.由键盘输入三个数a,b,c,计算以这三个数为边长的三角形面积。 #include

void main ( )

{ float a, b, c, s, s1;

scanf(“%f%f%f”, &a, &b, &c );

if ((a+b)>c && (a+c) > b && (b+c) >a)

{ s=(a+b+c)/2;

s1=s*(s-a)*(s-b)*(s-c);

s= sqrt (s1) ;

printf(“\n 三角形面积为:%f \n”,s);

}

else

printf(“ \n 不是三角!\n”);

}

4.下面程序用于计算n!的值。

main ()

{ int i,s,n;

s = 1;

printf (“enter n:”);scanf(“%d”,&n);

(s * =i (或:s =s * i));

printf (“s=%d”,s);

}

三. 阅读下列程序,写出运行结果

1. #include

void main( )

{ int a=1,b=4,c=2;

a=(a+b)/c;

printf(“%d \n”,--a);

}

运行结果 1

2. void main ( )

{ char c1=67; /*‘A’的ASCII码值为65 */ if (‘A’ <=c1 && c1<=’Z’)

printf(“%d,%c”,c1,c1+1);

else printf(“%c”,c1); }

运行结果: 67,D

3. viod main ( )

{ int a=0, n=5;

for ( ; ; )

{ a++; n--;

printf(“%d,”,a);

a=n;

if (n==0) break;

}

printf(“%d”,a);

四.编程序(结合实验上机调试编写的程序)

1. 从键盘输入3个整数,输出其中最大数。

main()

{

int a,b,c,max;

printf(“Pleaseinput3integers:\n”);

scanf(“ddd”,&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块砖,恰好一次全部搬完,编程求出成年男子成年女子和儿童各有多少人。

main()

{

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&&z2==0)

printf(“x=d,y=d,z=d”,x,y,z);

}

}

3.按下列公式

s(n)=12+22……+n2

编写计算并输出s值,其中的n值由键盘输入。

main()

{

int x,i,s=0;

for(i=1;i<=x;i )

s=s+i*i;

printf(“s=d”,s);

}

4.编写一程序,从键盘输入10个实数,计算并输出算术平均数。

main()

{

floatx,s=0;

for(i=0;i<10;i )

{

scanf(“f”,&x);

s=s/x;

}

printf(“The averageisf”,s/10);

}

五、讨论题

1.通过你对C语言的简单程序设计的学习,谈一下你对程序设计和程序设计语言的初步认识,你觉得应该如何学好程序设计呢?

作业三

(第五章)

一、选择题

1、( D ) 是所有能输入到计算机中被计算机加工处理的信息集合,( A )是( D ) 的基本单位,它可以由若干个( C ) 组成。 ( F )是性质相同的 ( A ) 的集合。

A)数据元素 B)数据对象 C)数据项

D)数据 E)数据类型 F)数据结构

2.用链表表示线性表的优点是( B ) 。

A)便于随机存取 B)便于插入和删除操作

C)花费的存储空间较顺序存储少 D)元素的物理顺序与逻辑顺序相同

3.下述哪一条是顺序存储方式的优点?( A )

A)存储密度大 B)插入运算方便

C)删除运算方便 D)可方便地用于各种逻辑结构的存储表示

4.线性表的顺序存储结构是一种 ( B )的存储结构,线性表的链式存储结构是一种( A )的存储结构

A)随机存储 B)顺序存取

C)有选择地存取 D)按大小顺序存取

5、在一个长度为n的顺序表中删除第i (0

A) n-i B) n-i+1 C) n-i-1 D) i

6、线性表L=(a

1,a

2

…a

n

),下列说法正确的是( D ) 。

A)每个元素都有一个直接前驱和直接后继。

B)线性表中至少要有一个元素。

C)表中各元素的排列顺序必须是由小到大或由大到小。

D)除第一个元素和最后一个元素外,其余每个元素都有一个且仅有一个直接前驱和直接后继。

7、一个队列的入队序列是1,2,3,4,则队列的输出序列是 ( B )。

A)4,3,2,1 B)1,2,3,4

C)1,4,3,2 D)3,2,4,1

8.若进栈序列为1,2,3,4,进栈过程中可以出栈,则 ( C )不可能是一个出栈序

列。

A)1,4,3,2 B)2,3,4,1

C)3,1,4,2 D)3,4,2,1

9.队列是限制插入只能在表的一端,而删除在表的另一端进行的线性表,其特点是

( A ) 。

A)先进先出 B)后进先出

C)先进后出 C)进出不受限制

10.以下哪一个不是队列的基本运算?( B )

A)从队尾插入一个新元素 B)从队列中删除第I个元素

C)判断一个队列是否为空 C)读取队头元素的值

11.栈和队列是一种限制了插入和删除操作位置的线性表。栈插入操作只能在栈( C ) 进行,删除操作只能在栈 ( C )进行;队列的插入操作只能在队( D )进行,

删除操作只能在队 ( A ) 进行。

A)首 B)底 C)顶 D)尾 E)中

12.某二叉树的前序编历结点的访问顺序是ABCDEFG,中序编历结点的访问顺序是CBDAFGE,则其后序编历结点的访问顺序是 ( A ) 。

A)CDBGFEA B)CDGFEAB C)CDBAGFE D)CDBFAGE

13.有关二叉树的下列说法正确的是 ( B ) 。

A)二叉树的度为2

B)一棵二叉树的度可以小于2

C)二叉树中任何一个结点的度都为2

D)任何一棵二叉树中至少有一个结点的度为2

14.在二叉树结点的先序序列、中序序列和后序序列中,所有叶子结点的先后顺序

( B ) 。

A)都不相同 B)完全相同

15、在一棵二叉树上第5层的结点数最多为( B )。

A)8 B)16 C)15 D)32

16、在一个图中,所有顶点的度数之和等于所有边数的( B )倍,在一个有向图中,所有的顶点入度之和等于所有顶点的出度之和的( C )倍。

A)1/2 B)2 C)1 D)4

17、一个具有n个顶点的无向图中,要连通全部顶点至少需要( D )条边。

A)n B)n+1 C)n/2 D)n-1

18、对一个具有n个顶点的图,采用邻接矩阵表示则该矩阵的大小为( D )。

A)n B)(n-1)2 C) (n+1)2 D) n2 19、已知一个图如下所示,则从顶点a出发按深度优先搜索遍历可以得到的一种顶点序列为

( D )。

A)a,c,e,b,d,f B)a,b,f,e,c,d

C)a,e,c,b,f,d D)a,e,d,f,b,c

二、填空题

1.数据结构包括的三个方面的内容是:数据的逻辑结构,数据的存储结构,数据的运算。

2.当向一个顺序表插入一个元素时,从插入位置开始后的所有元素均需向后移动一个位置,移动过程是从最后一个元素开始向后依次移动每一个元素。

3、要从一个顺序表删除一个元素时,被删除之后的所有元素均需向前移动一个位置,移动过程是从删除元素后的第一个元素开始向前依次移动每一个元素。

4、在线性表的顺序存储中,元素之间的逻辑关系是通过相对位置决定的。顺序表中逻辑上相邻的元素,物理位置也紧邻。

5、线性表、栈和队列都是线性结构,可以在线性表的任意位置插入和删除元素,而栈只能在栈顶插入和删除元素;对于队列只能在队尾插入元素,在队首删除元素。

6、栈的插入和删除只能在栈的栈顶进行,队列的插入和删除分别在两端进行,进行插入的一端叫做队尾,进行删除的一端叫做队首。

7、对于一个具有n个结点的二叉树,当它为一棵完全二叉树时具有最小高度,当它为一棵单支树时具有最大高度。

8、设无向图G的顶点数为n,图G最少有 n-1 条边,最多有n(n-1)条边。

三、简答题

1. 假定有四个元素依次进栈,进栈过程中允许出栈,试写出所有可能的出栈序列。

答:

1)A进栈->B进栈->C进栈->D进栈->出栈->出栈->出栈->出栈

结果:D->C->B->A

2)A进栈->B进栈->C进栈->出栈->D进栈->出栈->出栈->出栈

结果:C->D->B->A

3)A进栈->B进栈->C进栈->出栈->出栈->D进栈->出栈->出栈

结果:C->B->D->A

4)A进栈->B进栈->C进栈->出栈->出栈->出栈->D进栈->出栈

结果:C->B->A->D

5)A进栈->B进栈->出栈->C进栈->D进栈->出栈->出栈->出栈

结果:B->D->C->A

6)A进栈->B进栈->出栈->出栈->C进栈->D进栈->出栈->出栈

结果:B->A->D->C

7)A进栈->B进栈->出栈->C进栈->出栈->D进栈->出栈->出栈

结果:B->C->D->A

8)A进栈->B进栈->出栈->出栈->C进栈->出栈->D进栈->出栈

结果:B->A->C->D

结果:A->D->C->B

10)A进栈->出栈->B进栈->C进栈->出栈->D进栈->出栈->出栈

结果:A->C->D->B

11)A进栈->出栈->B进栈->C进栈->出栈->出栈->D进栈->出栈

结果:A->C->B->D

12)A进栈->出栈->B进栈->出栈->C进栈->D进栈->出栈->出栈

结果:A->B->D->C

13)A进栈->出栈->B进栈->出栈->C进栈->出栈->D进栈->出栈

结果:A->B->C->D

2.二叉树与树之间有什么区别?一棵度为的树与二叉树有什么区别?

答:在二叉树中,一个结点的子树有左、右之分,不能互换位置。而度为2的树则无此限制。

3.写出对如图所示二叉树进行先序遍历、中序遍历、后序遍历时得到的顶点序列。

答:

先序遍历序列:ABDEC

中序遍历序列:DEBAC

后序遍历序列:EDBCA

作业四

(第六章——第七章)

一、选择题与填空题

1.结构化程序流程图中一般包括三种基本结构,下述结构中哪一种不属于其基本结构。( D )

A)顺序结构 B)分支结构

C)循环结构 D)嵌套结构

2.程序设计语言的选择是顺利实施编程的重要基础,评价语言的因素很多,而其重要的选择依据是 ( A ) 。

A)语言的应用领域 B)对语言的熟悉程度

C)数据结构的复杂度 D)算法的复杂度

3.在软件工程中,软件测试的目的是( B ) 。

A)试验性运行软件 B)发现软件错误

C)证明软件是正确的 D)找出软件中全部错误

4.软件危机是软件产业化过程中出现的一种现象,下述现象中( E )是其主要表现。 A)软件需求难以满足 B)软件开发成本提高

C)软件开发进度难以控制 D)软件质量不易保证 E)全部

5.软件工程的出现主要是由于 ( C ) 。

A)程序设计方法学的影响 B)其他工程科学的影响

C)软件危机的出现 D)计算机的发展

6.算法的四种基本操作是逻辑运算、算术运算、数据比较、数据传送。

7.算法的控制结构给出了算法的执行框架,她决定了算法中各种操作的执行次序。8.算法的控制结构有三种基本形式顺序结构、选择结构、循环结构。

9.评价算法的综合性能最主要的是算法的正确性和运行效率。

10.算法的运行效率包括两方面,算法的时间复杂度和算法的空间复杂度。

11.结构化程序设计方法的主要技术是自顶而下和逐步求精。

12.程序模块化的一般目标主要体现在正确性和可靠性。

13.模块的划分有两种方法,一种是以过程为中心,另一种是以数据为中心。

14、软件定义时期主要包括可行性分析和需求分析两个阶段。

15.软件开发时期是具体设计和实现在前一时期定义的软件,它概要设计详细设计软件实现软件集成和验收测试由五个阶段组成。

16.软件工程的目标是提高软件开发速度,提高软件质量,降低开发成本。

17.常见的软件开发模型有瀑布模型、快速原型法模型、螺旋模型。

二、简答题

1.什么是算法?它有哪几个重要特性?简述三种算法的描述形式和特点?

答:算法是用于求解某个特定问题的一些指令的集合。

算法的特性:1.有穷性2.确定性3.可行性4.输入性5.输出性

用自然语言描述的算法通俗易懂,而且容易掌握,但算法的表达与计算机的具体高级语言形式差距较大,通常是用于介绍求解问题的一般算法。

伪代码是一种介于自然语言与计算机语言之间的算法描述方法。它结构性较强,比较容易书写和理解,修改起来也相对方便。其特点是不拘泥于语言的语法结构,而着重以灵活的形式表现被描述对象。它利用自然语言的功能和若干基本控制结构来描述算法。

流程图也叫框图,它是是用各种几何图形、流程线及文字说明来描述计算过程的框图。用流程图描述算法的优点是:直观,设计者的思路表达得清楚易懂,便于检查修改。

2. 结构化程序设计的主要有哪些特征?

答:(1)一个程序按结构化程序设计方式构造时,一般地总是一个结构化程序,即由三种基本控制结构:顺序结构、选择结构和循环结构构成。

(2)有限制地使用goto语句。

(3)藉助于体现结构化程序设计思想的所谓结构化程序设计语言来书写结构化程序,并采用一定的书写格式以提高程序结构的清晰性,增进程序的易读性。

(4)强调程序设计过程中人的思维方式与规律,是一种自顶向下的程序设计策略,它通过一组规则、规律与特有的风格对程序设计细分和组织。

3、模块化程序设计有哪些优点和缺点?简述模块的设计准则是什么?

答:优点(1)模块化方法使程序的结构简明清晰

(2)模块化方法可以提高系统的可靠性。

(3)模块化方法加强了系统的可维护性。

(4)模块化方法能够提高系统的可重用性。

(5)模块化方法有利于软件工程管理。

缺点(1)编码前需要大量的额外工作

(2)模块化程序运行时需要较多的CPU时间

(3)模块化程序需要较多的存储空间。

4、什么是软件工程?软件工程的目标是什么?

答:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。

软件工程的目标可概括为“生产具有正确性、可用性以及开销合宜的产品”。

5、软件开发模型有哪两类?瀑布模型和速成原型法各有什么特点?

答:软件开发模型大体上可分为两种类型:

第一种是以软件需求完全确定为前提的瀑布模型。

第二种是在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如原型模型、螺旋模型等。

瀑布模型的主要特点是:阶段间的顺序性和依赖性。开发过程是一个严格的下导式过程,即前一阶段的输出是后一阶段的输入,每一阶段工作的完成需要确认,而确认过程是严格的追溯式过程,后一阶段出现了问题要通过前一阶段的重新确认来解决。因此,问题发现得越晚解决问题的代价就越高。

快速原型法的最大特点是快捷,且避免了许多由于不同理解而造成的错误。

五、讨论题

1.结合程序设计语言的发展和你的学习,谈谈你对程序设计和程序设计语言的认识,你觉得设计程序时应遵循哪些原则?

答:正确性.正确性是判断程序质量的首要标准.所谓正确性是指程序本身具备且只具备程序设计规格说明书中所列举的全部功能.

可靠性.可靠性是指程序在多次反复使用过程中不失败的概率.

简明性.简明性的目标是要求程序简明易读.

有效性.程序在计算机上运行需要使用一定数量的计算机资源,如CPU的时间,存储器的存储空间.有效性就是要在一定的软硬件条件下,反映出程序的综合效率.

可维护性.程序的维护可分为校正性维护,适应性维护和完善性维护.一个软件的可维护性直接关系到程序的可用性,因此应特别予以关注.

可移植性.程序主要与其所完成的任务有关,但也与它的运行环境有着一定的联系.软件的开发应尽可能远离机器的特征,以提高它的可移植程度.例如,用高级语言编写程序就比用汇编语言编写程序的可移植性好.

2、人才的成长道路是多种多样的,通过对程序设计基础课程的学习和你对计算机大师成就

的了解,你有什么收获?为成为一个合格的人才,今后你将如何规划好自己的成才之路?

程序设计基础官方版

三、程序设计基础 下面我们这一节我们概要向用户管理人员介绍面问过程的程序设计语言的原理。绝大多数生产程序是用诸如COBOL、BASIC这样的POL编制的。虽然用户管理人员通常没有机会去实际地从事这类编程序的工作,但是他(或者她)将经常与从事这些工作的人们相互联系。掌握程序设计的基础知识将使得这种相互联系更加有效,同时也使得管理人员能够理解查询语言的概念。 在POL中,一个指令(又称作语句)序列是一条接着一条执行的,除非用一条“条件测试”指令来控制执行顺序而转移到程序的另一部分。例如,一个工资程序处理按月发工资的职工与按工时发工资的职工的两部分程序是不同的。计时职工的毛工资是计算出来的,而按月发工资的职工其每月的毛工资是从数据库中检索出来的。对每种工作(按工时计算或按月计算)都要求一组唯一的指令。一旦确定了毛工资,那么对二者的处理步骤(即程序指令)是相同的(例如,工资扣除、社会保险金额的计算、打印工资支票等等)。 在图20.7.4中,我们从一个BASIC工资程序中挑选出一些关键的语句用以说明程序设计中的“序列”和“条件测试”的概念。这些指令是自我说明了。编制一个计算和打印工资的联单的实际程序将要求几百行代码(LOC)或指令。 每种POL都有自己的一组指令集,其中,对下面一般的指令分类的每一类至少有一条指令。 (1)计算指令。计算指令允许程序员作加、减、乘、除和一个数的乘方(见图20.7.) 中的语句120)等运算。 图20.7.4 一个BASIC工资程序的关键语句 (2)数据传送指令。它可以将数据从主存的一个单元传送到另一个单元。赋值语句也属这一类,这些语句允许程序员通过一个命名的存储单元(称作为一个变量)使用一个常字“NETPAYIS”,或一个数值。在图20.7.4的例子中,“S$”引用了用来存贮工资码的主存单元的内容,工时比率存放在一个用“R”来引用的主存单之中。语句160是一个赋值语句,

《程序设计基础》试卷B及答案

黄淮学院计算机科学系2007-2008学年度第一学期 期末考试《程序设计基础》B 卷 注意事项:本试卷适用于计科系06级本科计算机科学与技术专业学生。 1.__ ____函数是程序启动时惟一的入口。 2.算法的复杂性包含两方面: 和 。 3.已知 char c= 'a' ; int x=2,k; 执行语句k=c&&x++ ; 则x 为 ,k 为 。 4.数值0x34对应的十进制为 。 5.已知int a ; 则表达式”(a=2*3 , 3*8), a*10”的结果为_ _ ____,变量a 的值为___ ___。 6.面向对象程序开发步骤为: 、 和面向对象实现。 1.下列程序设计语言中( )是面向对象语言。 A. FORTRAN B. C 语言 C. C++ D. 汇编语言 2.下列关于注释的说法哪个是错误的( )。 A. 注释不是程序中的可执行语句 B. 注释对于程序的执行有很重要的意义 C. 注释将在程序的编译阶段被编译器剔除 D. 编程时在程序中添加适当的注释是一个良好的编程风格 3.算法设计应该遵守( )的设计原则。 A. 自底向上,逐步求精 B. 自顶向下,逐步求精 C. 自底向上,同步扩展 D. 自顶向下,同步扩展 4.下列语句执行后a 的值为( )。 int a=4, &z=a, k=3; a=k; z+=2; k++; A. 0 B. 4 C. 1 D. 5 5.以下程序执行后,屏幕输出为( )。 #include “iostream.h ” void fun(int d) {d++;} void main() { int d=3; fun(d); d++; cout<=’a ’)&&(d<=’z ’) B. ‘a ’<=d<=’z ’ C. (d>=’a ’)||(d<=’z ’) D. ‘A ’<=d<=’Z ’ 8.已知:int k=7, x=12; 则执行语句( )后x 的值为0。 A. x+=k-x%5; B. x+=(x-k%5); C. x%=(k-=5); D. (x-=k)-(k+=5); 9.运行下列程序,其输出结果为( )。 #include “iostream.h ” void main() { int x(5),y(5),z(5); y--&&++x&&z--||y++; cout<

C++程序设计基础课后答案 第八章

8.1 阅读下列程序,写出执行结果 1.#include class Bclass { public: Bclass( int i, int j ) { x = i; y = j; } virtual int fun() { return 0 ; } protected: int x, y ; }; class Iclass:public Bclass { public : Iclass(int i, int j, int k):Bclass(i, j) { z = k; } int fun() { return ( x + y + z ) / 3; } private : int z ; }; void main() { Iclass obj( 2, 4, 10 ); Bclass p1 = obj; cout << p1.fun() << endl; Bclass & p2 = obj ; cout << p2.fun() << endl; cout << p2.Bclass :: fun() << endl; Bclass *p3 = &obj;

cout << p3 -> fun() << endl; } 2.#include class Base { public: virtual void getxy( int i,int j = 0 ) { x = i; y = j; } virtual void fun() = 0 ; protected: int x , y; }; class A: public Base { public: void fun() { cout<<"x = "<

B 题号:23161 C语言中,下列叙述正确的是(). A、do-while 语句构成的循环不可用 B、do-while 语句构成的循环,没有break语句就是死循环 C、do-while 语句构成的循环,当while 语句中的表达式值为零时结束循环 D、do-while 语句构成的循环,当while 语句中的表达式值为非零时跳出循环答案: C 题号:23405 以下不能正确进行字符串赋初值的语句是(). A、char *str="good!"; B、char str[5]={'g','o','o','d',0}; C、char str[5]="good!";---超界 D、char str[]="good!"; 答案: C 题号:23400 下述错误的C语言常量是(). A、5. B、.25 C、0xf D、090 答案: D 题号:23577 以下对C语言中联合类型数据的正确叙述是(). A、定义了联合变量后,即可引用该变量或该变量中的任意成员 B、一个联合变量中可以同时存放其所有成员 C、在向联合中的一个成员进行赋值时,联合中其他成员的值不会改变 D、联合中的各个成员使用共同的存储区域

程序设计基础辅导材料6

第6章算法和问题求解 本章我们来学习算法的基本概念。首先我们要了解算法,掌握算法的描述方法,进一步我们要学习算法的三种基本结构,然后要了解常见的、典型的算法,并要学习如何设计自己的简单算法。 6.1 算法的描述方法 1、用自然语言表达 所谓的“自然语言”指的是日常生活中使用的语言,如汉语、英语或数学语言。 例如:我们想计算1到N的累加和,为简单起见,设N的值不大于1000。 这就是用自然语言配合数学语言描述算法。 用自然语言描述的算法通俗易懂,而且容易掌握,但算法的表达与计算机的具体高级语言形式差距较大,通常是用于介绍求解问题的一般算法。 2、用伪代码表示 伪代码是一种介于自然语言与计算机语言之间的算法描述方法。它结构性较强,比较容易书写和理解,修改起来也相对方便。其特点是不拘泥于语言的语法结构,而着重以灵活的形式表现被描述对象。它利用自然语言的功能和若干基本控制结构来描述算法。 伪代码没有统一的标准,可以自己定义,也可以采用与程序设计语言类似的形式。3、用传统流程图描述算法 流程图也叫框图,它是是用各种几何图形、流程线及文字说明来描述计算过程的框图。

用流程图描述算法的优点是:直观,设计者的思路表达得清楚易懂,便于检查修改。 表6.1是用传统流程图描述算法时常用的符号。 表6.1流程图常用符号 用流程图描述算法时,一般要注意以下几点: (1)应根据解决问题的步骤从上至下顺序地画出流程图,各图框中的文字要尽量简洁。 (2)为避免流程图的图形显得过长,图中的流程线要尽量短。 (3)用流程图描述算法时,流程图的描述可粗可细,总的原则是:根据实际问题的复杂性,流程图达到的最终效果应该是,依据此图就能用某种程序设计语言实现相应的算法(即完成编程)。 4、N-S结构化流程图 N-S结构化流程图主要特点是取消了流程线,全部算法由一些基本的矩形框图顺序排列组成一个大矩形表示,即不允许程序任意转移,而只能顺序执行,从而使程序结构化。 N-S图也是流程图的一种很好的表示方法,对应于三种基本结构的N-S图如图6.2所

程序设计基础(知识点)

第三部分程序设计基础 3.1 程序、程序设计、程序设计语言的定义 ⑴程序:计算机程序,是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。 ⑵程序设计:程序设计是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。 ⑶程序设计语言:程序设计语言用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。程序设计语言有3个方面的因素,即语法、语义和语用。 3.2 高级语言和低级语言的概念及区别 ⑴高级语言:高级语言(High-level programming language)是高度封装了的编程语言,与低级语言相对。

它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不规则英文或其他外语),从而使程序编写员编写更容易,亦有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。 ⑵低级语言:低级语言分机器语言(二进制语言)和汇编语言(符号语言),这两种语言都是面向机器的语言,和具体机器的指令系统密切相关。机器语言用指令代码编写程序,而符号语言用指令助记符来编写程序。 ⑶区别: 高级语言:实现效率高,执行效率低,对硬件的可控性弱,目标代码大,可维护性好,可移植性好低级语言:实现效率低,执行效率高,对硬件的可控性强,目标代码小,可维护性差,可移植性差 了解知识:CPU运行的是二进制指令,所有的语言编写的程序最终都要翻译成二进制代码。越低级的语言,形式上越接近机器指令,汇编语言就是与机器指令一一对应的。而越高级的语言,一条语句对应的指令数越多,其中原因就是高级语言对底层操作进行了抽象和封装,

计算机程序设计基础习题册(含答案)

《计算机程序设计基础》 习 题 册

班级学号姓名成绩一、单选题 1.C++源程序文件的默认扩展名为A。 A) cpp B) exe C) obj D) lik 2.由C++源程序文件编译而成的目标文件的默认扩展名为C。 A) cpp B) exe C) obj D) lik 3.由C++目标文件连接而成的可执行文件的默认扩展名为B。 A) cpp B) exe C) obj D) lik 4.编写C++程序一般需经过的几个步骤依次是B。 A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接 5.程序中主函数的名字为 A 。 A) main B) MAIN C) Main D) 任意标识符 6.下面四个选项中,均是不合法的用户标识符的选项的是C。 A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 7.下列变量名中合法的是C。 A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 8.存储以下数据,占用存储字节最多的是 D 。 A) 0 B) ‘0’ C) “0” D) 0.0 9.在C++语言中,字符型数据在内存中的存储形式是D。 A) 补码 B) 反码 C) 原码 D) ASCII码 10.若有说明语句:char c =’\072’;则变量c A。 A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令

计算机程序设计基础习题册含答案

《计算机程序设计基础》 计算机程序设 计基础_基础知识(一) 班级 学号 姓名 成 绩 一、 单选题 习题册

1.C++源程序文件的默认扩展名为A。 2.A) cpp B) exe C) obj D) lik 3.由C++源程序文件编译而成的目标文件的默认扩展名为C。 4.A) cpp B) exe C) obj D) lik 5.由C++目标文件连接而成的可执行文件的默认扩展名为B。 6.A) cpp B) exe C) obj D) lik 7.编写C++程序一般需经过的几个步骤依次是B。 8.A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接9.程序中主函数的名字为 A 。 10.A) main B) MAIN C) Main D) 任意标识 符 11.下面四个选项中,均是不合法的 用户标识符的选项的是 C。 12.A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 13.下列变量名中合法的是 C。 14.A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 15.存储以下数据,占用存储字节最 多的是 D 。 16.A) 0 B) ‘0’

C) “0” D) 17.在C++语言中,字符型数据在内存中的存储形式是D。 18.A) 补码 B) 反码 C) 原码 D) ASCII码 19.若有说明语句:char c =’\072’;则变量c A。 20.A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令 计算机程序设计基础_基础知识(二) 班级学号姓名成绩 一、单选题 1.下列哪一个是C++语言中合法的变量 C A) 8ZSe B) ±A0 C) X0_2 D) ’x0’2.已知ch是字符型变量,下面不正确的赋值语句是A 3.A) ch='a+b' B) ch='\0'

程序设计基础模拟测试一

一、单选题(每题2分,共30分) 题目1 正确 获得2分中的2分 标记题目 题干 计算机早期传统的应用领域是______。 选择一项: A. 科学计算 B. 信息处理 C. 反馈 正确答案:A 题目2 正确 获得2分中的2分 标记题目 题干 冯·诺依曼型计算机的两大特征是______。选择一项: A. 程序存储和采用二进制 B. 硬件由五部分组成和软件与硬件分离

C. 数据和程序均采用二进制表示 D. 建立二进制编码体系和软硬件分离反馈 正确答案:A 题目3 正确 获得2分中的2分 标记题目 题干 世界上第一个高级语言是______。 选择一项: A. BASIC语言 B. C语言 C. FORTRAN语言 D. PASCAL语言 反馈 正确答案:C 题目4 正确 获得2分中的2分 标记题目

CPU主要包括______。 选择一项: A. 运算器、控制器和寄存器 B. 运算器、控制器和存储器 C. 控制器 D. 运算器和存储器 反馈 正确答案:A 题目5 正确 获得2分中的2分 标记题目 题干 JAVA语言的类别是______ 选择一项: A. 面向过程的程序设计语言 B. 面向问题的程序设计语言 C. 面向对象的程序设计语言 D. 面向硬件的程序设计语言

正确答案:C 题目6 正确 获得2分中的2分 标记题目 题干 操作系统属于______ 选择一项: A. 系统软件 B. 应用软件 C. D. 编译系统 反馈 正确答案:A 题目7 正确 获得2分中的2分 标记题目 题干 计算机能直接执行的语言是______ 选择一项:

A. 机器语言 B. 汇编语言 C. 高级语言 D. 目标语言 反馈 正确答案:A 题目8 正确 获得2分中的2分 标记题目 题干 C语言中,使用变量的要求是______ 选择一项: A. 要先定义后使用 B. 要先使用后定义 C. 不需要定义,可以直接使用 D. 没有明确的要求 反馈 正确答案:A 题目9

程序设计基础练习题(全答案版)

《程序设计基础——C#.NET》练习 参考答案: 一、选择题 https://www.360docs.net/doc/7d10555241.html,的目的就是将____A____作为新一代操作系统的基础,对互联网的设计思想进行扩展。A.互联网 B. Windows C. C# D. 网络操作系统 2.假设变量x的值为10,要输出x值,下列正确的语句是__C__。 A.System.Console.writeline(“x”) B. System.Cosole.WriteLine(“x”) C. System.Console.WriteLine(“x={0}”,x) D. System.Console.WriteLine(“x={x}”) 3.要退出应用程序的执行,应执行下列的_A___语句。 A. Application.Exit(); B. Application.Exit; C. Application.Close(); D. Application.Close; 4.关于C#程序的书写,下列不正确的说法是__D________。 A.区分大小写 B.一行可以写多条语句 C.一条语句可以写成多行 D.一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法 5. 在C#语言中,下列能够作为变量名的是__C__。 A.if B. 3ab C. b_3a D. a-bc 7. 能正确表示逻辑关系“a≥5或a≤0”的C#语言表达方式是__D__。 A.a>=5 or a<=0 B. a>=5|a<=0 C. a>=5&&a<=0 D. a>=5||a<=0 8. 以下程序的输出结果是___C_____。 A. 5 B. 4 C. 6 D. 不确定 9. If语句后面的表达式应该是__A___。 A.逻辑表达式 B. 条件表达式 C. 算术表达式 D. 任意表达式10.有如下程序:

c++程序设计基础课后答案第八章

阅读下列程序,写出执行结果 1. #include <> class Bclass { public: Bclass( int i, int j ) { x = i; y = j; } virtual int fun() { return 0 ; } protected: int x, y ; }; class Iclass:public Bclass { public : Iclass(int i, int j, int k):Bclass(i, j) { z = k; } int fun() { return ( x + y + z ) / 3; } private : int z ; }; void main()

{ Iclass obj( 2, 4, 10 ); Bclass p1 = obj; cout << () << endl; Bclass & p2 = obj ; cout << () << endl; cout << :: fun() << endl; Bclass *p3 = &obj; cout << p3 -> fun() << endl; } 2. #include <> class Base { public: virtual void getxy( int i,int j = 0 ) { x = i; y = j; } virtual void fun() = 0 ; protected: int x , y;

}; class A: public Base { public: void fun() { cout<<"x = "<

C语言 程序设计基础试题六及答案

《程序设计基础》考试试卷六 班级姓名学号____________ 一.选择题(20分): 1.判断下面标识符中哪个是C语言中合法的用户定义标识符: A. 2a1b B. a%bd C. typedef D. _123 2.下列表达式的值哪些不等于0? A. 2>>1 B. –a&a C. 1>5 D. a^a 3.设有一分段函数:a=b 则下列程序段哪个是正确的? A. if(ab) D. if (a>=b) If(c==d) {if (c==d) if (c==d) x=2; x=1; x=1; x=1; else else x=2; else x=2;} else x=2; {if(c==d) x=1;} 4.下列描述中不正确的是 A 字符型数组中可以存放字符串 B 可以对字符型数组进行整体输入、输出 C 可以对整型数组进行整体输入、输出 D 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值 5. 若有两条语句:static char x[]=”abcde”; static char y[]={…a?,?b?,?c?,?d?,?e?}; 则下列说法中正确的是:。 A. x数组和y数组长度相同 B.x数组长度大于y数组长度 C.x数组长度小于y数组长度 D.以上三种说法均错误。 6. 返回值为void的函数,其含义是: A.调用函数之后,被调用的函数没有返回值; B.调用函数之后,被调用的函数不返回 C.调用函数之后,被调用的函数返回值为任意类型 D.以上三种说法均不正确。 7. 以下说法中正确的是: A #define和printf都是C语句 B #define是C语句,而printf不是 C printf是C语句,但#define不是 D #define和printf都不是C语句 8. 假设指针px和py是指向占8个字节的double数据类型,今设px=2048, py=1024,则px-py= 。 A. 1024 B. 256 C. 128 D. 64

程序设计基础试题(附答案)

程序设计基础复习题 一、单选 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句结论只有一句是错误的,它是()

程序设计基础习题

7.8 习题 1. 编制一个C程序,从键盘输入一个正整数,如果该数为素数,则输出该素数,否则输出该数的所有因子(除去1与自身)。 2. 编制一个C程序,从键盘输入一个正整数N,然后计算并输出 最后计算并输出 3. 编制一个C程序,计算并输出多项式的值 的值,直到|S n-S n-1|<0.000001 为止。其中x从键盘输入。 4. 编制一个C程序,计算下列级数和: s n=1+(2/1)+(3/2)+(5/3)+(8/5)+(13/8)+…+(a n/a n-1) 其中n≥1,由键盘输入;s1=1。 5. 编制一个C程序,计算并输出下列级数之和: 其中n与x 6. 编制一个C程序,输出能写成两个数平方之和的所有三位数。 7. 如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,则称之为“完数”。例如,6的因子为1、2、3,且1+2+3=6,即6是一个“完数”。编制一个C程序,计算并输出1000以内的所有“完数”之和。 8. 编制一个C程序,从键盘输入30个实数,分别计算并输出以下5个量:所有正数之和,所有负数之和,所有数的绝对值之和,正数的个数,负数的个数。 9. 100元钱买100只鸡,母鸡3元/只,公鸡2元/只,小鸡0.5元/只。编制一个C程序,制定买鸡方案。 10. 设A,B,C,D,E五人,每人额头上贴了一张或黑或白的纸。五人对坐,每人都可以看到其他人额头上的纸的颜色,但都不知道自己额头上的纸的颜色。五人相互观察后开始说话: A说:我看见有三人额头上贴的是白纸,一人额头上贴的是黑纸。 B说:我看见其他四人额头上贴的都是黑纸。 C说:我看见有一人额头上贴的是白纸,其他三人额头上贴的是黑纸。 D说:我看见四人额头上贴的都是白纸。 E什么也没说。 现在已知额头上贴黑纸的人说的都是真话,额头上贴白纸的人说的都是假话。编制一个

C语言程序设计基础知识 习题一及参考答案

第一章:程序设计基础知识 一、单项选择题 1、以下( )是面向过程的程序设计语言。 A)机器语言B)汇编语言C)高级语言D)第四代语言 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、N-S图与传统流程图比较,主要优点是( )。 A)杜绝了程序的无条件转移。 B)具有顺序、选择和循环三种基本结构。 C)简单、只管。 D)有利于编写程序。 A)B)C)D) 二、填空题 1、在流程图符号中,判断框中应该填写的的是________。(判断条件) 2、结构化程序设计是__________应遵循的方法和原则。(面向过程编程) 3、结构化程序必须用__________程序设计语言来编写。(具有结构化控制语句) 4、可以被连续执行的一条条指令的集合称为计算机的________。(程序) 5、只描述程序应该“做什么”,而不必描述“怎样做”的语言被称为________。(面向对象) 6、任何简单或复杂的算法都是由_____和_____这两个要素组成。(数据结构算法) 7、算法的_______特征是指:一个算法必须在执行有限个操作步骤后终止。(有穷性) 8、在三种基本结构中,先执行后判断的结构被称为_________。(直到型循环结构) 9、在程序设计中,把解决问题确定的方法和有限的步骤称为______。(算法) 10、程序设计风格主要影响程序的________。(可读性) 11、用模块组装起来的程序被成为________结构化程序。(模块化) 12、采用自上而下,逐步求精的设计方法便于____________。(结构化和模块化) 三、应用题

程序设计基础习题

7.8习题 1.编制一个 C 程序,从键盘输入一个正整数,如果该数为素数,则输出该素数,否则输出该数的所有因子(除去1 与自身)。 2.编制一个 C 程序,从键盘输入一个正整数N,然后计算并输出 1 2 |N | S=1 2 2 2 最后计算并输出 T= 1 1 2 1 3 K ( 1) 1 1 K 其中K S 的整数部分。 3.编制一个 C 程序,计算并输出多项式的值 5. ( 0.5 1)05.( 0.5 1)( 05.2) 2 3 S 1 05.x x x n 2!3! 5. ( 0.5 1) ( 0.5 n 1) n! x n 的值,直到|S n-S n-1|<0.000001 为止。其中x 从键盘输入。 4. 编制一个 C 程序,计算下列级数和: s n=1+(2/1)+(3/2)+(5/3)+(8/5)+(13/8)+ , +(a n/a n-1) 其中n≥1,由键盘输入; s1=1。 5.编制一个 C 程序,计算并输出下列级数之和: x e 1 x 2 3 n x x x 2! 3! n! 其中n 与x 从键盘输入。 6.编制一个 C 程序,输出能写成两个数平方之和的所有三位数。 7.如果一个数恰好等于它的所有因子(包括1 但不包括自身)之和,则称之为“完数”。例如,6 的因子为1、2、3,且1+2+3=6 ,即 6 是一个“完数”。编制一个 C 程序,计算并输 出1000 以内的所有“完数”之和。 8.编制一个 C 程序,从键盘输入30 个实数,分别计算并输出以下 5 个量:所有正数之和,所有负数之和,所有数的绝对值之和,正数的个数,负数的个数。 9. 100 元钱买100 只鸡,母鸡 3 元/只,公鸡 2 元/只,小鸡0.5 元/只。编制一个 C 程序,制 定买鸡方案 。 10.设A,B,C,D,E 五人,每人额头上贴了一张或黑或白的纸。五人对坐,每人都可以 看到其他人额头上的纸的颜 色 ,但都不知道自己额头上的纸的颜色 。五人相互观察后开始说 话: A 说:我看见有三人额头上贴的是白纸,一人额头上贴的是黑纸。 B 说:我看见其他四人额头上贴的都是黑纸。 C 说:我看见有一人额头上贴的是白纸,其他三人额头上贴的是黑纸。 D 说:我看见四人额头上贴的都是白纸。 E 什么也没说。 现在已知额头上贴黑纸的人说的都是真话,额头上贴白纸的人说的都是假 话。编制一个 C 程序,确定这五人中谁的额头上贴白纸,谁的额头上贴黑纸?

《程序设计基础(专科必修)》2015期末试题及答案

《程序设计基础(专科必修)》2015期末试题及答案 一、单项选择题(每空2分.共30分) 1.当代计算机的最主要的体系结构称为是( )。 A.冯·诺依曼机 B.非冯·诺依曼机 C.图灵机 D.PASCAL机 2.现代电子计算机诞生的理论基础是( )。 A.图灵机 B.图灵测试 c.冯·诺依曼机 D.邱奇论题 3.计算机软件是指( )。 A.计算机程序 B.源程序和目标程序 C.源程序 D.计算机程序及其有关文挡 4.计算机能直接执行的语言是( )。 A.机器语言 B.汇编语言 C.高级语言 D.目标语言 5.JAVA语言的类别是( )。 A.面向过程的程序设计语言 B.面向问题的程序设计语言 C.面向对象的程序设计语言 D.面向硬件的程序设计语言 6.在C语言中,字符串常量的定界符是( )。 A。空格 B.单引号 C.双引号 D.方括号 7.C语言中int变量能够表示的数值范围是( )。 A.-32767—32768 B.-32768~32767 C. 0~65535 D. O -65536 8.C语言中的循环控制语句中属于“直到型”循环的语句是( )。 A. goto B. while C.for D.do-while 9.数据的存储结构分为两种,它们是( )。 A.线性存储和数组存储 B.顺序存储和链式存储 C.线性存储和树型存储 D.数组存储和指针存储 10.如果在内存中采用链式保存线性表,则元素之间的逻辑关系通过( )。 A.元素在内存中的相对位置表示逻辑次序 B.保存在元素中的指针表示先后次序 C.设立单独的区域存储元素之间的逻辑次序 D.元素本身的关键字来表示逻辑次序 11.栈的最主要特点是( )。 A.先进先出 B.先进后出 C.两端进出 D.一端进一端出

《程序设计基础》试题及答案

上海电视大学2011至2012学年度第1学期期中考试 计算机应用技术和计算机信息管理专业《程序设计基础》试题计算机科学与技术专业《Visual Basic程序设计#》试题 2011年11月姓名:学号:班级: 题号一二总分 分数 要求:1.选择题直接将答案写此word里。 2.操作题,现在c:盘用自己学号姓名建个文件夹,让后将操作题 保存到该文件夹。 得分评卷人 一、单选题(20分) 1、下面属于合法的变量名的是( c )。 A.X_yz B.123abc C.Integer D.X-Y 2、菜单中“生成解决方案”的目的是:( c ) A.将程序翻译成可以看懂的文件 B.将程序重新正确编排 C.将程序生成计算机能够执行的机器代码,使之能够脱离VB开发环境运行 D.检查程序中有无错误的机器代码,以便能够脱离VB开发环境运行 3、要使窗体Form1的标题栏中显示“正在复制文件…”,以下哪条语句是正确的?( b )A. Form1.Caption = “正在复制文件…” B. Form1.title = “正在复制文件…” C. Form1.Text = “正在复制文件…” D. Form1.名称 = “正在复制文件…” 4、在运行时要使某个控件可见但不可用,则应设置以下哪个属性?( b ) A. Locked B. Enabled C. Visible D. Disenabled 5、VB.NET提供了结构化程序设计的三种基本结构,三种基本结构是( d )。 A.递归结构、选择结构、循环结构B.选择结构、过程结构、顺序结构 C.过程结构、输入输出结构、转向结构D.选择结构、循环结构、顺序结构

〖程序设计基础〗练习题1及答案

〖程序设计基础〗练习题1 一、选择题(每题1分,共30分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.以下的选项中能正确表示Java语言中的一个整型常量的是( )。 A) 12. B) -20 C) 1,000 D) 4 5 6 2.以下选项中,合法的赋值语句是( )。 A) a = = 1; B) ++ i; C) a=a + 1= 5; D) y = int ( i ); 3.若所用变量都已正确定义,以下选项中,非法的表达式是( )。 A) a != 4||b==1 B) 'a' % 3 C) 'a' = 1/2 D) 'A' + 32 4.若有定义int a = 2;则执行完语句a += a -= a * a; 后,a的值是( )。 A) 0 B) 4 C) 8 D) -4 5.设有定义语句int a[]={66,88,99}; 则以下对此语句的叙述错误的是( )。 A) 定义了一个名为a的一维数组B) a数组有3个元素 C) a数组的下标为1~3 D)数组中的每个元素是整型 6.若a和b均是整型变量并已正确赋值,正确的switch语句是( )。 A) switch(a+b);B) switch( a+b*3.0 ) { ...... } { ...... } C) switch a D) switch ( a%b ) { ...... } { ...... } 7.下列语句序列执行后,x 的值是( )。 int a=3, b=4, x=5; if( ++a0; i-- ) j+=i; A) 3 B) 4 C) 5 D) 6

相关文档
最新文档