若过程p第k次被调用,则p的DISPLAY表中就有k+1个元素。
第1题:
主程序调用findmax函数求出数组中最大元素在数组中的下标,( )中需填写的内容是。 #include<stdio.h> findmax(int*s,int t,int*k) { int p; for(p=0,*k=p;p<t;p++)if(s[p]>s[*k])( );} main() { int a[10],i,k; for(i=0;i<10;i++)scanf("%d",&a[i]); findmax(a,10,&k); printf("%d%d\n" ,k,a[k]);}
A.k=p
B.*k=p
C.k=p-s
D.*k=p-s
第2题:
以下程序调用findmax函数求数组中值最大的元素在数组中的下标,请选择填空: #include<stdio.h> findmax(int*s,int t,int*k) { int p; for(p=0,*k=p;p<t;p++) if(s[p]>s[*k])________; } main() { int a[10],i,k; for(i=0;i<10;i++)scanf("%d",&a[i]); findmax(a,10,&k); printf("%d,%d\n",k,a[k]); }
A.k=p
B.*k=p-s
C.k=p-s
D.*k=p
第3题:
假定有k个关键字互为同义词,若用线性探查法把这些同义词存人散列表中,至少要进行(48)次探查。
A.L(k+1)/2
B.k(k+1)
C.2k(k+1)
D.不确定
第4题:
阅读以下说明和 C 代码,填补代码中的空缺,将解答填入答题纸的对应栏内。 【说明】 函数 GetListElemPtr(LinkList L,int i)的功能是查找含头结点单链表的第i个元素。若找到,则返回指向该结点的指针,否则返回空指针。 函数DelListElem(LinkList L,int i,ElemType *e) 的功能是删除含头结点单链表的第 i个元素结点,若成功则返回 SUCCESS ,并由参数e 带回被删除元素的值,否则返回ERROR 。 例如,某含头结点单链表 L 如图 4-1 (a) 所示,删除第 3 个元素结点后的单链表如 图 4-1 (b) 所示。图4-1
define SUCCESS 0 define ERROR -1 typedef int Status; typedef int ElemType; 链表的结点类型定义如下: typedef struct Node{ ElemType data; struct Node *next; }Node ,*LinkList; 【C 代码】 LinkList GetListElemPtr(LinkList L ,int i) { /* L是含头结点的单链表的头指针,在该单链表中查找第i个元素结点: 若找到,则返回该元素结点的指针,否则返回NULL */ LinkList p; int k; /*用于元素结点计数*/ if (i<1 ∣∣ !L ∣∣ !L->next) return NULL; k = 1; P = L->next; / *令p指向第1个元素所在结点*/ while (p && (1) ) { /*查找第i个元素所在结点*/ (2) ; ++k; } return p; } Status DelListElem(LinkList L ,int i ,ElemType *e) { /*在含头结点的单链表L中,删除第i个元素,并由e带回其值*/ LinkList p,q; /*令p指向第i个元素的前驱结点*/ if (i==1) (3) ; else p = GetListElemPtr(L ,i-1); if (!p ∣∣ !p->next) return ERROR; /*不存在第i个元素*/ q = (4) ; /*令q指向待删除的结点*/ p->next = q->next; /*从链表中删除结点*/ (5) ; /*通过参数e带回被删除结点的数据*/ free(q); return SUCCESS; }
第5题:
第6题:
若人群中某疾病发生的阳性人数X服从二项分布,从该人群中随机抽取n个人,则阳性人数X不小于k人的概率为()
第7题:
若一个图中包含有k个连通分量,若要按照深度优先搜索的方法访问所有顶点,则必须调用()次深度优先搜索遍历的算法。
第8题:
在线性表的单链表存储中,若一个元素所在结点地址为p,则其后继结点的地址为()
第9题:
假定有k个关键字互为同义词,若用线性探测法把这k个关键字存入散列表中,至少要进行多少次探测?()
第10题:
第11题:
第12题:
k
1
k-1
k+1
第13题:
下面的算法是计算不带节点的单链表长度,其中能正确执行的是______。
A.Function Length(L:Link) integer begin p:=L; j:=0; while p↑.next≠NIL DO [p:=p↑.next; j:=j+1 ] return(j) end;
B.Function Length(L:Link) integer begin p:=L; k:=0; while p≠NIL DO [p:=p↑.next; k:=k+1) return(k) end;
C.Function Length(L:Link)integer begin p:=L;k:=0; repeat k:=k+1; p=p↑.next until p=NIL return(k-1) end;
D.Function Length(L:Link)integer begin p:=L↑.next; k:=1; while p≠NIL DO [k:=k+1; p:=p↑.next] return(k) end;
第14题:
主程序调用findmax函数求出数组中最大元素在数组中的下标,括号中需填写的内容是
#include<stdio.h>
findmax(int*s,int t,int *k)
{ int p;
for(p=0, *k=p; p<t; p++)if(s[p]>s[*k])( ); }
main()
{ int a[10],i,k;
for(i=0; i<10;i++)scanf(" %d",&a[i]);
findmax(a,10,&k);
printf(" %d%d\n",k,a[k];) }
A.k=p
B.*k=p
C.k=p-s
D.*k=p-s
第15题:
过程P1调用P2时,连接数据不包含(11)。
A.嵌套层次显示表
B.老SP
C.返回地址
D.全局DISPLAY地址
第16题:
若一个子程序起始地址为3K,调用指令CALL的内存地址为K+1,则执行CALL指令所要执行指令的地址为( )。
A.3K
B.3K+1
C.3K-1
D.K+2
第17题:
第18题:
当调用了程序:M98P L时,若其中的L被省略时,默认为调用()。
第19题:
设二维数组A[0…m-1][0…n-1]按行优先顺序存储在内存中,第一个元素的地址为p,每个元素占k个字节,则元素aij的地址为()。
第20题:
在线性表的单链接存储中,若一个元素所在结点的地址为p,则其后继结点的地址为(),若假定p为一个数组a中的下标,则其后继结点的下标为()。
第21题:
第22题:
P(k+1)+P(k+2)+…+P(n)
P(0)+P(1)+…+P(k)
P(0)+P(1)+…+P(k+1)
P(k)+P(k+1)+…+P(n)
P(1)+P(2)+…+P(k)
第23题:
对
错