(完整版)中科院遥感所考博真题2007年程序设计与算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2007年遥感所考博《程序设计与算法语言》

一. 选择题(每小题2分,共40分)

1. int a = 2,则执行完表达式a*=a+=a-=a*a;后,a的值是()。

A) -4;B) 0;C) -8;D) 16;

2. 以下程序段中while 循环执行的次数是()。

int k=0;

while(k=1)k++;

A)无限次;B)有语法错,不能执行

C)一次也不执行D)执行1次

3. 用来表示一个变量的地址或者表示另一变量的地址的变量是()。

A.函数; B.指针; C.数组; D.结构体;

4. 若有说明:int a[][2]={1,2,3,4,5,6,7 }; 则a数组第一维的大小是()

A. 2

B. 3

C. 4

D. 无确定值

5. 一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()。

A. 不确定

B. n-i+1

C. i

D. n-i

6. 假设以行序为主序存储二维数组A=array[1..100,1..100],设每个数据元素占2个存储单元,基地址为10,则LOC[5,5]=()。

A. 808

B. 818

C. 1010

D. 1020

7. 在任意-棵二叉树中,若终端结点的个数为M,度为2的结点数为8,则M=()。A.8 B. 9 C.10 D.11

8. 链表不具备的特点是()。

A)可随机访问任何一个元素;

B)无需事先估计存储空间大小;

C)插入、删除操作不需要移动元素;

D)所需存储空间与线性表长度成正比;

9. 连续存储设计时,存储单元的地址()。

A.一定连续 B.一定不连续 C.不一定连续 D.部分连续,部分不连续

10. 在右图的流程图中,如果标记为b的运算执行了m次(m>1),那么标记为a的运算的执行次数为()。

A.1;B.m-1;C.m;D.m+l;

11. 如下定义:int m =2;int n = m<<3, 则n = ()

A.2 B. 8 C. 0 D. 16

12. 设栈的输入序列是1,2,3,4,则____不可能是其出栈序列。()。

A)1,2,4,3;B)2,1,3,4;C)1,4,3,2;D)4,3,1,2;

13. 在C语言中,若函数调用时实参是数组名,则传递给对应形参的是()。

A)数组空间的首地址;B)数组的第一个元素值;

C)数组中元素的个数;D)数组中所有的元素;

14. 如下代码输出结果为()

#define ADD(x) (x)+(x)

main()

{ int a=4,b=6,c=7,d=ADD(a+b)*c;

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

}

A d=70

B d=140

C d=280

D d=80

15. 如下定义:int x = 15,int n = 2,则x%=(n+=3)后,x的值为():

A. 0

B. 1

C. 2

D. 10

16. 排序方法中,将整个无序序列分割成若干小的子序列并分别进行插入排序的方法,称为_______。A)希尔排序B)冒泡排序c)插入排序D)选择排序

17. 能将高级语言程序转换成目标语言程序的是______。

A)调试程序B)解释程序C)编译程序D)编辑程序

18. 下面语句的输出结果是_______。

Printf("%d\n",strlen("\t\"\065\xff\n"));

A)14 B)8 C)5 D)输出项不合法,无正常输出

19. 以下语句或语句组中,能正确进行字符串赋值的是________。

A)char *sp;*sp="right!"; B)char s[lO];s="right! ";

C)char s[10];*s="right! "; D)char *sp="right! ";

20. 对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为________。

A)log2n B)n/2 C)n D)n+l

二. 问答题(共三题,20分)

1. 请指出以下程序中的错误:(6分)

void main ()

{

static int a[10]={0,1,2,3,4,5,6,7,8,9,10};

int x=3;y=6;

for(i=1;i<10;i++);

printf(〞%d %d〞,a+x,a[i+1]+y)

}

2. 试述软件测试的主要方法及每种方法特点。(7分)

3. 试述面向对象程序开发语言的主要特点及其对于软件开发的作用。(7分)

三. 算法与程序设计题(共40分)

1.写出一个程序,它能读入一个正整数n,再逐行读入一个n*n的矩阵的元素(矩阵元素为整数,输入时相邻的整数用空格隔开),找出这个矩阵的最小的元素,再输出该元素的行号和列号(行号和列号均从1开始)(7分)

2.编写一程序,输入一个不大于5位的正整数,并实现下列操作:求出它是几位数?分别打印出每位数字?按逆序打印出各位数字,例如原数为516,应输出615。(8分)

3. 银行的存款利率如下。某人有钱n元,如果要存20年时间,编程求得怎样存20年后的本利合计最多。(假定银行对定期存款过期不付利息)。(10分)

月利息率(%)存储期限

0.63 一年

0.66 二年

0.69 三年

0.75 五年

0.84 八年

4.有一个水库蓄水量T为1000万立方米,含有某种特定污染物W总量50千克,一段时间内含有污染物质W的水流入水库,浓度2千克/万立方米的,流量为3万立米/小时。同时水库以2万立米/小时的流量向下游泻水,设计程序计算30个小时后水库中该污染物质W 的总量。(假设流入库区的污染物质立即在水库内部均匀分布)(15分)

相关文档
最新文档