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

专升本 练习题 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. 链表的删除算法很...
算法练习题
算法练习题_电脑基础知识_IT/计算机_专业资料。一、...“循环队列”是指用单向循环链表或者循环数组表示的...(4 分) A、8 B、10 C12 D、13 2-8 已知...
数据结构练习题(1-4章)
给定有 n 个元素的数组,建立一个有序单链表的时间复杂度是__C __。 A. ...2.3 算法设计题: 1.设顺序表 va 中的数据元数递增有序。 试写一算法, ...
专升本试题(数据结构)_图文
(A)有序顺序表 (B)有序单链表 (C)有序顺序表...3.已知一维数组中的数据为(18,12,25,53,18), ...return OK; } ; (1) ; 五、算法设计题(本大...
数据结构算法设计题复习题
算法设计题 1. 设二叉树bt采用二叉链表结构存储。...实现下列功能的算法:对一整型数组b[n]中的元素进行...“ %c is not lchild\n”, bt[k])); if(2...
专升本C语言程序设计考试大纲[1]
C 语言考试大纲 山东理工专升本 C 语言程序设计考试...掌握链表的基本操作; 了解位运算、不带参数的宏定义...3、掌握字符数组的定义和使用,并会使用基本的字符串...
算法设计练习题
算法设计练习题 1、设一棵二叉树以二叉链表为存储结构,结点结构为 lchild |data...数组,使得 A[ ]中大于零的元素存放在 B[ ]中,小于零的元素存放在 C[ ]...
数据结构各章习题
数据结构练习题 数据结构各章习题第 1 章 绪论 一...C.线性表的链表存储结构适用于频繁插入/删除数据元素...在 n 个结点的线性表的数组实现中,算法的时间复杂...
数据结构—章节练习题
静态链表中指针表示的是___. A. 内存地址 B.数组下标 C.下一元素地址 D....4.请写一个算法将顺序存储结构的线性表(a1...an)逆置为(an...a1),要求...
吉林省计算机专升本考试历年真题
链表中要删除已知结点*p,其时间复杂度为 数组元素...年吉林省普通高校专升本教育试点考试 计算机科学与技术...[4]=c; A.6 B.11 C .0 D.4 三、算法设计...
更多相关标签: