当前位置:首页 >> 其它考试 >>

专升本 练习题 C练习12--算法(数组、链表)


C 专升本辅导

练习 12

算法(1)

1

(12-1) fun 函数的功能是:首先对 a 所指的 N 行 N 列的矩阵,找出各行中的最大的数,再求这 N 个最大值 中的最小的那个数作为函数值返回。请填空。 #include <stdio.h> #define N 100 int fun(int a[][]) {int row,col,max,min; for(row=0;row<N;row++) {for(max=a[row][0],col=1;col<N;col++) if(_____________) max=a[row][col]; if(row==0) min=max; else if(_______________) min=max; } return min; } (12-2) 以下程序段用于构成一个简单的单向链表,请填空。 struct STRU { int x, y ; float rate; _____________ ; } a, b; a.x=0; a.y=0; a.rate=0; a.p=&b; b.x=0; b.y=0; b.rate=0; b.p=NULL; (12-3) 若以下定义: struct link { int data; struck link *next; }a,b,c,*p,*q; 且变量 a 和 b 之间已有如下图所示的链表结构: a ┌──┬──┐ │ 5 ↑p c ┌──┬──┐ │ 7 ↑q 指针 p 指向变量 a,q 指向变量 c。则能够把 c 插入到 a 和 b 之间并形成新的链表的语句组是: A) a.next=c; c.next=b; q->next=p->next; B) p.next=q; q.next=p.next; D) (*p).next=q; (*q).next=&b; │ │ └──┴──┘ │ └──┴──┘ b ┌──┬──┐ │ └──┴──┘ ┼──→ │ 9 │ \0

C) p->next=&c;

C 专升本辅导

练习 12

算法(1)

2

(12-4) 以下程序中, select 函数的功能是: N 行 M 列的二维数组中,选出一个最大值作为函数值返回,并通 在 过形参传回此最大值所在的行下标。请填空。 #define N 3 #define M 3 select(int a[N][M],int *n) { int i,j,row=1,colum=1; for(i=0;i<N;i++) for(j=0;j<M;j++) if(a[i][j]>a[row][colum]){row=i;colum=j;} *n= ______________; return __________________________; } main() {int a[N][M]={9,11,23,6,1,15,9,17,20},max,n; max=select(a,&n); printf("max=%d,line=%d\n",max,n); }

(12-5)有以下程序 #include <stdlib.h> struct NODE {int num; struct NODE *next; } main() {struct NODE *p,*q,*r; p=(struct NODE *)malloc(sizeof(struct NODE)); q=(struct NODE *)malloc(sizeof(struct NODE)); r=(struct NODE *)malloc(sizeof(struct NODE)); p->num=10;q->num=20;r->num=30; p->next=q;q->next=r; printf("%d\n",p->num+q->next->num); } 程序运行后的输出结果是______。 A) 10 B) 20 C) 30 D) 40

(12-6)以下程序中函数 sort 的功能是对 a 所指数组中的数据进行由大到小的排序 void sort(int a[],int n) {int i,j,t; for(i=0;i<n-1;i++) for(j=i+1;j<n;j++)

C 专升本辅导 if(a[i]<a[j]) {t=a[i];a[i]=a[j];a[j]=t;} } main() {int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(&aa[3],5); for(i=0;i<10;i++) printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是______。 A) 1,2,3,4,5,6,7,8,9,10, C) 1,2,3,8,7,6,5,4,9,10,

练习 12

算法(1)

3

B) 10,9,8,7,6,5,4,3,2,1, D) 1,2,10,9,8,7,6,5,4,3,

(12-7)有以下结构体说明和变量定义,如图所示,指针 p、q、r 分别指向一个链表中的三个连续结点。 struct node { int data; struct node *next; } *p, *q, *r; 现要将 q 和 r 所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是 A)r->next=q; C)p->next=r; q->next=r->next; q->next=r->next; p->next=r; r->next=q; B)q->next=r->next; D)q->next=r->next; p->next=r; r->next=q; r->next=q; p->next=r;

(12-8)已有定义如下: struct node { int data; struct node *next; } *p; 以下语句调用 malloc 函数,使指针 p 指向一个具有 struct node 类型的动态存储空间。请填空。 p = (struct node *)malloc( _____________________ );

C 专升本辅导

练习 12

算法(1)

4

答案: (12-1)a[row][col]>max max<min (12-2)struct STRU *p (12-3)D (12-4)row (12-5)D (12-6)C (12-7)A (12-8)sizeof(struct node) a[row][colum]


赞助商链接
相关文章:
数据结构C语言版第2章练习题
数据结构C语言版第2章练习题_专升本_成人教育_教育专区。数据结构习题2 ...()2. 链表的物理存储结构具有同链表一样的顺序。 ()3. 链表的删除算法很...
2014《C语言程序设计》专升本练习题
2014《C语言程序设计》专升本练习题_研究生入学考试_...[ ]="hello\nworld\n";” ,则数组 s 中有__...数组 a 的第“1”行第“0”列的地址 13.用链表...
专升本试题(数据结构)_图文
专升本试题(数据结构)_计算机软件及应用_IT/计算机_...(A)有序顺序表 (B)有序单链表 (C)有序顺序表...3.已知一维数组中的数据为(18,12,25,53,18), ...
山东2013专升本计算机专业数据结构练习题
照行序为主序方式存放在一维数组 B[1:n(n-1)/...C.d,c,a,b D.c,d,b,a 专升本辅导教材 数据...下面的算法删除链表的第 i 个结 点(设 i>0) ...
专升本考试 山东3 2
太考验耐性了 山东专升本考试科目: 《C 语言程序...3、掌握字符数组的定义和使用,并会使用基本的字符串...2、了解用指针和结构体构成链表,掌握单向链表的基本...
“数据结构”专接本复习纲要(1)
甘肃省专升本数据结构复习... 101页 5财富值喜欢...例,求两个 N 阶方阵的乘积 C=A*B,算法如下: ...(请与链表对比) (2)数组中所有元素的数据类型是...
专升本C语言训练 编程题
这些文档是计算机类专升本C语言训练的类型题这些文档是计算机类专升本C语言训练的类型...7. 输入两个数组(数组元素个数自定)输出在两个数组中都出现的元素(如, a[...
专升本C语言程序设计考试大纲
专升本C语言历年考试题及答... 48页 免费如...掌握链表的基本操作; 了解位运算、不带参数的宏定义...3、掌握字符数组的定义和使用,并会使用基本的字符串...
专升本C语言复习A卷
专升本C语言复习A卷_IT/计算机_专业资料。专升本C语言...o C. a A. 数组 a 的首地址 B. 数组 a 的...用链表表示线性表的优点是………( A. 便于随机存取...
“数据结构”专接本复习纲要(2)
数据结构专升本补习 63页 免费 数据结构(c语言版)第...请与链表对比) 数组中元素间的地址是连续的。 请...矩阵乘积算法 B[K][N], 设有矩阵 A[M][K] ...
更多相关标签: