PowerPoint Presentation

Size: px
Start display at page:

Download "PowerPoint Presentation"

Transcription

1 第 章 栈与队列 本章主题 : 栈和队列的应用 教学目的 : 掌握栈和队列的应用方法, 理解栈的重要作用 教学重点 : 利用栈实现行编辑, 利用栈实现表达式求值 教学难点 : 利用栈实现表达式求值

2 .1 ADT 栈 ( 定义和运算 ) 1.. 栈的定义 栈 stack 是一种特殊的 ( 有序表 ) 线性表, 插入 或删除栈元素的运算只能在表的一端进行, 称运算 的一端为栈顶, 另一端称为栈底 - 特点 : 后进先出 栈又称为 后进先出 的线性表, 简称 LIFO 表 例 -1[ 系统栈 ] 处理程序运行时的函数调用 D C B A -1 top top top top top 原栈地址 返回地址 局部变量 原栈地址 返回地址 fp 函数 a1 fp 主函数

3 结构 -11 ADT 栈 Structure Stack object: 零个或多个有穷有序表 Funtion: Stack CreateS(max_size); Boolean IsFull(Stack); Boolean IsEmpty(Stack); Stack Add(stack,item); element Delete(stack); End stack #define MaxSize 100 typedef struct { int key; element; element stack[maxsize MaxSize]; int top=-1; Boolean IsEmpty(Stack)::=top<0 Boolean IsFull(Stack)::=top>= )::=top>=maxsize

4 顺序栈的几种状态 ( 最大长度 MaxSize 为 4) top D 2 2 C 2 top C B 1 B top A 0 A 0 A 0 0 top -1 top -1 (a) (b) (c) (d) (e) (a) 当栈中没有数据元素时, 表示为栈空 栈顶元素所对应的下标值 top=-1 (b) 表示在 (a) 基础上执行 Push(S, A ) 后得到这种状态 (c) 又有三个元素 B C D 先后入栈, 此时栈顶元素的下标值 top= 栈已满 (d) 表示在 (c) 状态下, 执行一次 Pop(S,x) 运算得到 (e) 表示在 (d) 状态下, 执行三次 Pop(S,x) 运算得到 此时栈顶下标值 top=-l 又变成栈空状态

5 程序 -1 栈的基本操作 : 判空 满 插入 删除 element stack_empty(int *top) { if(*top== -1)return 1; element stack_full(int *top) { if(*top= =maxsize-1) return 1; void add(int *top, element item) { if(*top>=maxsize-1) 1){ stack_full(); return; stack[++*top ++*top]=item; element delete(int *top) { if(*top=-1) return stack_empty(); return stack[(*top) (*top)--];

6 * 顺序栈的 C 语言描述如下 : #define MaxSize 数组元素的最大个数 typedef struct { ElemType data[maxsize]; int top; STACK; ElemType 为栈中元素的数据类型 data 域 : 为一个一维数组, 用于存储栈中元素 top 域 : 栈顶指针 取值范围为 0~MaxSize-1 top=-1 表示栈空,top=MaxSize, top=maxsize-1 表示栈满

7 * 栈的基本运算 [ 必须掌握 ] 初始化栈 InitStack(S) 设置一个空栈 S 压栈 Push(S,x) 将元素 x 插入栈 S 中, 使 x 成为栈 S 的栈顶元素 出栈 Pop(S,x) 当栈 S 不空时, 由 x 返回栈顶元素, 并从栈中删除栈顶元素 取栈顶元素 GetTop(S,x) 若栈 S 不空, 则由 x 返回栈顶元素 判栈空 Empty(S) 若栈 S 为空栈, 结果为 1,, 否则结果为

8 .1.2 栈的顺序存储结构及其基本运算的实现 栈有两种存储表示方法 : 顺序存储和链式存储 1. 栈的顺序存储结构 栈的顺序存储结构简称为顺序栈顺序栈 通常由一个一维数组和 一个记录栈顶元素位置的变量组成 2. 基本运算在顺序存储结构的实现 初始化栈 InitStack(S) void InitStack(STACK *S) {s=(stack *)malloc(sizeof(stack)); S->top=-1;

9 压栈 Push(S,x) 教材 :add(s,item) int Push(STACK *S,ElemType x) {if(s->top==maxsize-1){ printf("\n Stack is full!"); return 0; S->data[++S->top]=x; return 1; 出栈 Pop(S,x) 教材 :delete (s) int Pop(STACK *S) { int x; if(empty(s)){printf("stack error"); return 0; x=s->data[s->top--]; return x; stack *s; s=(stack *)malloc(sizeof(stack malloc(sizeof(stack)); s->top= >top=-1;

10 取栈顶元素 GetTop(S,x) int GetTop(STACK *S, ElemType *x) { if(empty(s)){ printf("\n Stack is free!"); retrn 0; *x=s->data[s->top]; return *x; 判栈空 Empty(S) int Empty(STACK *S) { return (S->top==-1?1:0); 判栈满 full(s) int Empty(STACK *S) { return (S->top= =maxsize-1?1:0);

11 例题 : 栈的应用 - 递归 采用递归算法求解正整数 n 的阶乘 n! Fibon 斐波那契数 求 n 的阶乘的递归函数算法如下 : long fact(int n) { long f; 1 n=1 fib(n)= 1 n=2 fib(n-1)+fib(n-2) n>2 if(n==0) f=1; else f=n*fact(n-1); return f;

12 进行 fact(4) 调用的系统栈的变化情况 n r n r n r n r n r n r n r n r n r n r 0 r2 1 r2 1 r2 1 r2 2 r2 2 r2 2 r2 2 r2 2 r2 r2 r2 r2 r2 r2 r2 r2 4 r1 4 r1 4 r1 4 r1 4 r1 4 r1 4 r1 4 r1 4 r1 调用 fact(4) 调用 fact() 调用 fact(2) 调用 fact(1) 调用 fact(0) 返回 fact(0) 返回 fact(1) 返回 fact(2) 返回 fact() 返回 fact(4)

13 函数 fact(4) 的递归调用过程的执行流程 n:4 n: n:2 n:1 n:0 (1) (2) () (4) (5) (6) (7) (8) (9) (10) fact(4) f=4*fact(); f=*fact(2); f=2*fact(1); f=1*fact(0); f=1; (20) (19) (18) (17) (16) (15) (14) (1) (12) (11) return f; return f; return f; return f; return f;

14 .2 2 ADT 队列 1.. 队列的定义 队列也是一种运算受限的线性表 在这种线性表上, 插入限定在表的某一端进行, 删除限定在表的另一端进行 允许插入的一端称为队尾, 允许删除的一端称为队头 特点 : 队列中数据元素的入队和出队过程是按照 先进 先出 的原则进行的 因此, 队列又称为 先进先出 的线 性表, 简称 FIFO 表

15 顺序队列 ( MaxSize=5 ) 的几种状态 rear front rear rear D 4 rear rear front C front front 2 2 B rear 1 0 front A 1 0 front A (a) (b) (c) (d) (e) (f) (a) 表示空队列, rear=front=0 (b) 元素 A 入队后, rear=1,front=0 (c)b,c 依次入队后, rear=,front=0 (d)a,b,c 依此出队后, rear=front= (e)d 入队后,rear=4, front= (f)d 出队后,rear=front=

16 2. ADT 队列 structure Queue object: 零个或多个有穷有序表 Funtions: Queue CreateQ(max_size)::= 创建空队列 Boolean IsFullQ(queue,maxsize)::=if Num(queue)== )==max_size) return Ture else return False Queue AddQ(queue,item ::= if(isfullq(queue)) Queue_full Boolean IsEmptyQ(queue)::= if(queue== ==CreateQ(max_size) ) ) return Ture else return False Element DeleteQ(queue)::= if(isemptyq(queue)) return End Queue else delete e and return item of front

17 队列的顺序存储表示 Queue CreateQ(max_size)::= #define MAX_SIZE 100 typedef struct { int key; element; element queue[max_size] int rear=-1; int front=-1; Boolean IsEmptyQ(queue)::=front==rear 顺序队列的数据类型定义 2 #define MaxSize < 队列的最大容量 > typedef struct{ ElemType data[maxsize]; int front,rear; SQUEUE; Boolean IsFullQ(queue,maxsize)::=rear== MAX_SIZE

18 队列基本操作 程序 - 入队 void addq(int *rear, element item) { /*add an item to queue*/ if(*rear== MAX_SIZE-1){ queue_full(); return; 程序 -4 出队 element deleteq(int *front, int rear) {/*remove/*remove an element at the fornt of~*/ if(*front== rear) return queue_empty(); return queue[++*front]; queue[++*rear]=item;

19 循环队列 - 具有五个存储单元 : A rear 2 B A 1 2 B 1 front C 0 C 0 rear D D 4 front 4 front rear 4 front rear 4 front rear 4 (a) (b) (c) (d) (e) (a) 表示空队列, rear= front=0 (b) 元素 A 入队后, rear=1, front=0 (c)b,c,d 依次入队后, rear=4, front=0 (d)a 出队后, front=1,rear=4 (e)b,c,d 出队后, rear= front=4 Addq 实现 :*rear=(*rear+1)%max_size;

20 程序 -5 循环队列的插入 void addq(int front, int *rear,element item) { /*add an item to the queue */ *rear=(*rear+1)%max_size; if(front==*rear){ queue_full(rear); return; queue[*rear]=item; 程序 -6 循环队列的删除 Element deletq(int *front, int rear) { if(*front==rear){ return queue_empty(); *front=(*front+1)% )%MAX_SIZE; return queue[*front];

21 . 迷宫问题 1. 允许移动方向表的声明 : typedef struct{ short int vert; short int horiz; offsets; Offsets move[8]; 2. 栈的存储问题 : #define MAX_STACK_SIZE 100 typedef struct{ short int row; [row-1] [col-1] X [row] [col[ col] 方向 :p7: short int col; short int dir; element; element stack[max_stack_size];

22 程序 -7 最初的迷宫算法 Initialize a stack to the maze s s entrance coordinates to north; While(stack is not empty) { <row,col,dir>=delete from top of stack; While(there are more moves from current position){ <next_row,next_col>=coordinates of next move; dir=direction of move; if((next_row== ==Exit_row)&&(next_col== ==Exit_col)) success; if(maze[next_row][next_col]==0{ ]==0{ mark[next_row][next_col]=1; ]=1; add<row,col,dir row,col,dir> > to the top of the stack; row=next_row next_row; col=next_col next_col; dir=north;

23 程序 -8 迷宫搜索函数 void path(void) { int i,row,col,next_row,next_col,dir, found=false; element position; mark[1][1]=1;top=0; stack[0].row=1;stack[0].col=1;stack[0].dir=1; while(top>-1&&!found){ position=delete(&top delete(&top); row=position.row position.row; col=position.col position.col; dir=position.dir position.dir; while(dir<8&&!found){ next_row=row+move[dir].vert row+move[dir].vert; next_col=col+move[dir].horiz col+move[dir].horiz; if(next_row== found=true; ==EXIT_ROW&& && next_col== else if(!maze[next_row][next_col]&& ]&& ==EXIT_COL)!mark[next_row][next_col]){]){ mark[].. mark[next_row][next_col]=1 ]=1 position.row=row;position.col row;position.col=col Add(&top,position); row=next_row;col next_row;col=next_col;dir=0; else ++dir; If(found){ printf( The path is:\n ); printf( row row col\n ) for(i=0;i<= =0;i<=top;i++) printf( %2d%5d %2d%5d,stack[i].row,stack[i].col); printf( %2d%5d %2d%5d, row,col); printf( %2d%5d %2d%5d,Exit_row,Exit_col); else printf( The maze does t have a path );

24 .4 表达式求值 例 :x=: x=a/b-c+d*e-a*c; 当 a=4,b=c=2,d=e= 运算的优先级 : 符号运算符优先级结合性 ()[ ] ->. 函数调用 数组元素 结构 17 自左向右 自增 自减 16 自左向右 -- ++! ~ - + & * sizeof 自减 自增 逻辑非 补 一元减或加 求地址 求容量 15 自右向左 (type) 强制类型转换 14 自右向左 * / % 乘 1 自左向右 + - 二元加或减 12 自左向右 << >> 移位 11 自左向右 > >= < <= 关系运算 10 自左向右 ==!= 等于 9 自左向右 & 按位与 8 自左向右 ^ 按位异或 7 自左向右 按位或 6 自左向右 && 逻辑非 5 自左向右 逻辑与 4 自左向右?: 条件 自左向右 = += -= /= *= %= <<= >>= &= ^= = 赋值 2 自右向左, 逗号 1 自左向右

25 中缀算术表达式 ( (7-2) ) 求值的动态过程 *(7-2)# *(7-2)# (7-2)# 7-2)# -2)# 2)# )# )# # # 运算数栈 运算符栈 - - ( ( ( ( ( * * * * * * * # # # # # # # # # # (a) (b) (c) (d) (e) (f) (g) (h) (i) (j)

26 程序 -9 后缀表达式的求值函数 int eval(void) { precedence token; char symbol; int op1,op2; int n=0; int top=-1; token=get_token(&symbol,&n); while(token==operand) add(&top,symbol- 0 ); else { op2=delete(&top); op1=delete(&top); switch(token) { case plus: add(&top,op1+op2); break; case minus:add(&top,op1-op2);break; case times : add(&top,op1*op2); break; case minus:devide(&top,op1/op2);break; token=get_token(&symbol,&n); return delete(&top); /*return result */ 程序 -10 从输入字符串中取出一个 标记符号的函数 Procedence get_token(char*symbol,int *n) *symbol=expr[(*n)++]; switch(*symbol){ case ( :return lparen; case ) : return rparen; case + :return plus; case - :return minus; case / : return devide; case * :return times; case : return eos; default :return operand;

27 程序 -11 中缀表达式转换后缀表达式函数 void postfix(void) { char symbol; precedence token; int n=0; int top=0; stack[0]=eos; for(token=get_token(&symbol,&n); token!=eos; token=get_token(&symbol,&n)){ if(token==operand) printf( %c,symbol); else if(token==rparen){ while(stack[top]!=lparen) print_token(delete(%top)); delete(&top); else { while(isp[stack[top]>=icp[token] print_token(delete(%top)); add(&top); while((token=delete(&top))!=eos) printf_token(token); printf( \n );

28 中缀表达式转换为等价的后缀表达式 中缀表达式 等价后缀表达式 0./(5 (5 2+1) / (4+) (x+y)/(1-x) x) 2 x y x-/ x (25+x) (a (a+b)+b) (a+b)+b) 25 x+a a b+ b+ b

29 .5 多栈和多队列 假定 n 个栈共用一个数组, 可将可用空间, 分成 n 段. 相关声明 : #define MEMORY_SIZE 100 #define MAX_STACKS 10 Element memory[memory_size]; Int top[maz_stacks] Int boundary[max_stacks]; Int n; 数组分割代码 : Top[0]=boundary[0]=-1; For(i=1;i<n;i++) top[i]=boundary[i]=(memory_size/n)*i; Bondary[n]=MEMORY_SIZE-1;

30 .5 多栈和多队列 程序 -12 向栈 stack_no 中插入 item void add(int i, element item) { if (top[i]==boundary[i+1]) stack_full(i); memory[++top[i]]=item; 程序 -1 从栈 stack_no 中删除元素 void delete(int i) { if (top[i]==boundary[i]) return stack_empty(i); return memory[top[i]--];

31 P67 P75 5 迷宫项目程序 ( 选做 ) P81 1,7 习题

Microsoft PowerPoint - ch3.pptx

Microsoft PowerPoint - ch3.pptx 第 3 章栈和队列 第 3 章栈和队列 3.1 栈 3.2 栈的应用举例 3.3 队列 哈尔滨工业大学 ( 威海 ) 计算机科学与技术学院 (2014/2015 学年秋季版 ) 1 本章重点难点 第 3 章栈和队列 重点 : (1) 栈 队列的定义 特点 性质和应用 ;(2)AT 栈 AT 队列的设计和实现以及基本操作及相关算法 难点 : (1) 循环队列中对边界条件的处理 ;(2) 分析栈和队列在表达式求值

More information

PowerPoint Presentation

PowerPoint Presentation 数据结构与算法 ( 三 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) http://www.jpk.pku.edu.cn/pkujpk/course/sjjg 第 3 章栈与队列 栈 栈的应用 递归到非递归的转换 队列 2 栈 (Stack) 操作受限的线性表 运算只在表的一端进行 队列 (Queue) 运算只在表的两端进行

More information

正文.doc

正文.doc 第 3 章 栈 实验三 3.1 实验目的及要求 1. 理解特殊的线性结构 顺序栈的抽象数据类型的定义, 及其在 C 语言环境中的表示方法 2. 理解顺序栈的基本操作的算法, 及其在 C 语言环境中一些主要基本操作的实现 3. 在 C 语言环境下实现顺序栈的应用操作 : 1 利用栈实现十进制数转换成八进制数 2 利用栈实现一位数的加减乘除的表达式求解 3.2 实验内容 经过对实验目的及要求的分析, 本实验仍然采用首先描述栈的基本操作集函数,

More information

Microsoft PowerPoint - Slides04_第三章(1) 栈.ppt [兼容模式]

Microsoft PowerPoint - Slides04_第三章(1) 栈.ppt [兼容模式] 第三章栈 队列 数组 栈 (Stack) 基本概念 顺序存储结构 链式存储结构 应用 队列 (Queue) 基本概念 顺序存储结构 链式存储结构 应用 特殊矩阵 (Matrix) 的压缩存储 栈 ( Stack ) 只允许在一端插入和删除的线性表 允许插入和删除的一端称为栈顶 (top), 另一端称为栈底 (bottom) 退栈 (pop) 进栈 (push) 特点后进先出 (LIFO) bottom

More information

Microsoft PowerPoint - ds-1.ppt [兼容模式]

Microsoft PowerPoint - ds-1.ppt [兼容模式] http://jwc..edu.cn/jxgl/ HomePage/Default.asp 2 说 明 总 学 时 : 72( 学 时 )= 56( 课 时 )+ 16( 实 验 ) 行 课 时 间 : 第 1 ~14 周 周 学 时 : 平 均 每 周 4 学 时 上 机 安 排 待 定 考 试 时 间 : 课 程 束 第 8 11 12 章 的 内 容 为 自 学 内 容 ; 目 录 中 标 有

More information

ebook39-5

ebook39-5 5 3 last-in-first-out, LIFO 3-1 L i n e a r L i s t 3-8 C h a i n 3 3. 8. 3 C + + 5.1 [ ] s t a c k t o p b o t t o m 5-1a 5-1a E D 5-1b 5-1b E E 5-1a 5-1b 5-1c E t o p D t o p D C C B B B t o p A b o

More information

Microsoft PowerPoint - 4.pptx

Microsoft PowerPoint - 4.pptx 第 4 章栈和队列 运算受限的线性表 栈 表达式求值 搜索与回溯 队列 队列的应用 4.1 栈 只在称为栈顶 (top) 的一端插入和删除的线性表 另一端称为栈底 (bottom) 数据通过栈的顺序 后进先出 (LIFO) top bottom a n-1 a n-2 a 0 栈的抽象数据类型 class Stack { public: Stack ( ) { ; ~Stack ( ) { ; int

More information

C 1

C 1 C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=

More information

Microsoft PowerPoint - Ch3 [兼容模式]

Microsoft PowerPoint - Ch3 [兼容模式] Ch.3 栈和队列 1 3.1 栈 定义和运算 栈 仅在表的一端插 删的线性表插入 进 ( 入 ) 栈 删除 出 ( 退 ) 栈 栈顶 插删的一端 栈底 另一端 结构特征 -- 后进先出 修改原则 : 退栈者总是最近入栈者 服务原则 : 后来者先服务 (LIFO 表 ) 例 : 入栈出栈 a n a 2 a 1 2 3.1 栈 Note: 后入栈者先出栈, 但不排除后者未进栈, 先入栈者先出栈 an,,

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

数据结构 Data Structure

数据结构 Data Structure 数据结构 : 线性表 Data Structure 2016 年 3 月 15 日星期二 1 线性表 栈和队列 线性表 字典 ADT 栈 队列 2016 年 3 月 15 日星期二 2 线性表 定义 : 线性表 L 是 n 个数据元素 a 0,a 1, a n-1 的有限序列, 记作 L=(a 0,a 1, a n-1 ) 其中元素个数 n(n 0) 定义为表 L 的长度 当 n=0 时,L 为空表,

More information

ebook39-6

ebook39-6 6 first-in-first-out, FIFO L i n e a r L i s t 3-1 C h a i n 3-8 5. 5. 3 F I F O L I F O 5. 5. 6 5. 5. 6.1 [ ] q u e n e ( r e a r ) ( f r o n t 6-1a A 6-1b 6-1b D C D 6-1c a) b) c) 6-1 F I F O L I F ADT

More information

40 第二部分试题部分 9. 假设栈初始为空, 将中缀表达式 a/b+(c*d-e*f)/g 转换为等价的后缀表达式的过程中, 当扫描 到 f 时, 栈中的元素依次是 ( ) 2014 年全国试题 2(2) 分 A. +(*- B. +(-* C. /+(*-* D. /+-* 10. 循环队列存放

40 第二部分试题部分 9. 假设栈初始为空, 将中缀表达式 a/b+(c*d-e*f)/g 转换为等价的后缀表达式的过程中, 当扫描 到 f 时, 栈中的元素依次是 ( ) 2014 年全国试题 2(2) 分 A. +(*- B. +(-* C. /+(*-* D. /+-* 10. 循环队列存放 第 3 章栈和队列 39 第 3 章 栈和队列 一 选择题 1. 为解决计算机主机与打印机之间速度不匹配问题, 通常设置一个打印数据缓冲区, 主机将要 输出的数据依次写入该缓冲区, 而打印机则依次从该缓冲区中取出数据 该缓冲区的逻辑结 构应该是 ( ) 2009 年全国试题 1(2) 分 A. 栈 B. 队列 C. 树 D. 图 2. 设栈 S 和队列 Q 的初始状态均为空, 元素 a, b, c,

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN:978-7-302-13599-9, 红色封面 答案制作时间 :2011 年 2 月 -5 月 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p=&a 2. 设已定义 int x,*p=&x;, 则下列表达式中错误的是 :B)&*x 3. 若已定义 int a=1,*b=&a;,

More information

FY.DOC

FY.DOC 高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主

More information

Microsoft PowerPoint - 3栈和队列.ppt [兼容模式]

Microsoft PowerPoint - 3栈和队列.ppt [兼容模式] 队列的类型定义 定义 队列是必须在一端删除 ( 队头 front), 在另一端插入 ( 队尾 rear) 的线性表 特性 先进先出 (FIFO, First In First Out) rear front 117 队列的类型定义 ADT Queue{ 数据对象 : 具有线形关系的一组数据操作 : bool EnQueue(Queue &Q, ElemType e); // 入队 bool DeQueue(Queue

More information

递归函数的高效实现方法

递归函数的高效实现方法 递归函数的高效实现方法 赵建华 递归函数的适用范围和优缺点 分治法 把一个比较大的问题分解为若干个比较小的问题, 分别求解这些比较小的问题, 再综合得到原问题的解 如果比较小的问题和原问题具有同样的性质, 那么适用递归接法 要求最终能够把问题分解为能够直接解决的简单问题 优点 简洁 能够帮助思考 和问题的结构有对应关系 缺点 效率低下 递归 递归的定义 若一个对象部分地包含它自己, 或用它自己给自己定义,

More information

1

1 基本練習題 1 答 :(A) 2 答 :(B) 3 答 :(C) 4 答 :(B) 5 答 :(D) 6 答 :2 7 答 :(B) 8 答 : (A) A B C / D E * + F G / - (B) A B + C D - * E / (C) A B C * + E F + - 9 答 : (A) - + A * - / BCDE / F G (B) / * + A B C D E (C)

More information

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢   学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 Email: 51141201063@ecnu.cn 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Java 类型 引用 不可变类型 对象存储位置 作用域 OOP

More information

4

4 孙猛 http://www.math.pku.edu.cn/teachers/sunm 2017 年 9 月 28 日 2 栈及其抽象数据类型 栈的实现 栈的应 用 3 基本概念 栈是 一种特殊的线性表, 它所有的插 入和删除都限制在表的同 一端进 行行 表中允许进 行行插 入 删除操作的 一端叫做栈的顶 表的另 一端则叫做栈的底 当栈中没有元素时, 称之为空栈 栈的插 入运算通常称为进栈或 入栈,

More information

chap07.key

chap07.key #include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,

More information

4-2 1. 使 用 一 般 佇 列 存 放 資 料 時, 當 前 端 (Front) 尚 有 空 位 時, 再 加 入 元 素, 卻 發 現 此 佇 列 已 滿, 請 問 此 時 使 用 下 列 那 一 個 方 法 較 佳? (A) 優 先 佇 列 (B) 環 形 佇 列 (C) 雙 向 佇 列

4-2 1. 使 用 一 般 佇 列 存 放 資 料 時, 當 前 端 (Front) 尚 有 空 位 時, 再 加 入 元 素, 卻 發 現 此 佇 列 已 滿, 請 問 此 時 使 用 下 列 那 一 個 方 法 較 佳? (A) 優 先 佇 列 (B) 環 形 佇 列 (C) 雙 向 佇 列 CHAPTER 4 隨 書 光 碟 4-1 4-3 環 形 佇 列 由 於 佇 列 有 一 個 問 題, 就 是 前 端 (Front) 尚 有 空 位 時, 再 加 入 元 素, 卻 發 現 此 佇 列 已 滿 此 時 的 解 決 方 法 就 是 使 用 環 形 佇 列 (Circular Queue) 定 義 是 指 一 種 環 形 結 構 的 佇 列 作 法 將 一 維 陣 列 的 第 0 個

More information

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc C 语言开发入门 课程教学大纲 ( 课程英文名称 ) 课程编号 :201409210011 学分 :5 学分学时 :60 学时 ( 其中 : 讲课学时 :37 学时上机学时 :23 学时 ) 先修课程 : 计算机导论后续课程 :C++ 程序设计适用专业 : 信息及其计算机相关专业开课部门 : 计算机系 一 课程的性质与目标 C 语言开发入门 是计算机各专业必修的基础课程, 是数据结构 C++ Java

More information

概述

概述 OPC Version 1.6 build 0910 KOSRDK Knight OPC Server Rapid Development Toolkits Knight Workgroup, eehoo Technology 2002-9 OPC 1...4 2 API...5 2.1...5 2.2...5 2.2.1 KOS_Init...5 2.2.2 KOS_InitB...5 2.2.3

More information

int *p int a 0x00C7 0x00C7 0x00C int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++;

int *p int a 0x00C7 0x00C7 0x00C int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++; Memory & Pointer trio@seu.edu.cn 2.1 2.1.1 1 int *p int a 0x00C7 0x00C7 0x00C7 2.1.2 2 int I[2], *pi = &I[0]; pi++; char C[2], *pc = &C[0]; pc++; float F[2], *pf = &F[0]; pf++; 2.1.3 1. 2. 3. 3 int A,

More information

全国计算机技术与软件专业技术资格(水平)考试

全国计算机技术与软件专业技术资格(水平)考试 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 2008 年 上 半 年 程 序 员 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 ) 试 题 一 ( 共 15 分 ) 阅 读 以 下 说 明 和 流 程 图, 填 补 流 程 图 中 的 空 缺 (1)~(9), 将 解 答 填 入 答 题 纸 的 对 应 栏 内 [ 说 明

More information

PowerPoint Presentation

PowerPoint Presentation 数据结构与算法 ( 三 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) http://www.jpk.pku.edu.cn/pkujpk/course/sjjg 第 3 章栈与队列 栈 栈与表达式求值 队列 栈和队列的应用 队列的应用 递归到非递归的转换 ( 补充 ) 2 栈 (Stack) 操作受限的线性表 运算只在表的一端进行

More information

Microsoft PowerPoint - Lecture3.ppt

Microsoft PowerPoint - Lecture3.ppt Chap 4. Links, Stacks and Queue 1 Lists A list is a finite, ordered sequence of data items. Important concept: List elements have a position. Notation: What operations should we implement?

More information

新・明解C言語入門編『索引』

新・明解C言語入門編『索引』 !... 75!=... 48 "... 234 " "... 9, 84, 240 #define... 118, 213 #include... 148 %... 23 %... 23, 24 %%... 23 %d... 4 %f... 29 %ld... 177 %lf... 31 %lu... 177 %o... 196 %p... 262 %s... 242, 244 %u... 177

More information

(Microsoft PowerPoint - \270\352\256\306\265\262\272c\302\262\263\370.ppt)

(Microsoft PowerPoint - \270\352\256\306\265\262\272c\302\262\263\370.ppt) 資 料 結 構 鄭 彬 資 料 資 料 : 可 以 拿 來 利 用 的 一 些 資 訊 例 如 : 旅 遊 資 訊 氣 象 資 料 考 試 成 績 考 古 題 網 頁 報 紙 談 天 廣 告 時 刻 表 電 腦 展 的 價 目 表 導 遊 地 圖 金 融 房 地 產 軍 事 交 通 商 業 市 場 科 技 新 知 商 品 價 格 各 類 書 籍 收 支 帳 單 醫 學 電 視 收 音 機 廣 告 看

More information

untitled

untitled 1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override

More information

Microsoft Word - 数据结构实训与习题725xdy.doc

Microsoft Word - 数据结构实训与习题725xdy.doc 第一部分学习指导与实训 3 第 2 章线性表 2.1 学习指南 (1) 理解线性表的类型定义, 掌握顺序表和链表的结构差别 (2) 熟练掌握顺序表的结构特性, 熟悉顺序表的存储结构 (3) 熟练掌握顺序表的各种运算, 并能灵活运用各种相关操作 (4) 熟练掌握链式存储结构特性, 掌握链表的各种运算 2.2 内容提要 线性表的特点 : 线性表由一组数据元素构成, 表中元素属于同一数据对象 在线性表中,

More information

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3 浙江大学 C 程序设计及实验 试题卷 2002-2003 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:30-10:30 注意 : 答题内容必须写在答题卷上, 写在本试题卷上无效 一. 单项选择题 ( 每题 1 分, 共 10 分 ) 1. 下列运算符中, 优先级最低的是 A.

More information

Summary

Summary Summary 暑假开始准备转移博客, 试了几个都不怎么满意 ( 我还去试了下 LineBlog 不知道那时候在想 什么 ) 现在暂时转移至 WordPress, 不过还在完善中, 预计 算了不瞎预计的好 课上说最好做个代码集, 嗯嗯我也觉得挺有必要的 毕竟现在我连 Floyd 怎么写都忘了无脑 SPFA_(:з )_ 反正有用没用都稍微写一下, 暂定是目录这些, 有些还在找例题 整理代码什么的,

More information

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf ("%d", & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf (%d, & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9 201 201 21 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp Compilation Error long long cin scanf Time Limit Exceeded 1: A 1 B 1 C 5 D RPG 10 E 10 F 1 G II 1 1 201 201 C 1 # include 2 int main ( void

More information

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx 运算符重载 Operator Overloading class Point { public: ; double x_, y_; Why Operator Overloading? Point (double x =0, double y = 0):x_(x),y_(y) { int main(){ Point a(1., 2), b(3,4); Point c = a + b; return 0;

More information

Microsoft Word - F7801B_ch04習題解答.doc

Microsoft Word - F7801B_ch04習題解答.doc 基本練習題 1. 要將中序式轉成後序式, 需要用到何種資料結構? (A) 堆疊 (B) 佇列 (C) 堆積 (D) B 樹答 :(A) 2. 下列何者不是堆疊的應用場合?(A) 運算式轉換 (B) 工作排程 (C) 副程式的呼叫與返回 (D) 後序式的求值答 :(B) 3. 一個原來為空的堆疊, 經過 Push(1),Push(2),Pop(),Push(3),Pop(),Push(4) 則 堆疊中的資料由上而下順序是

More information

30695.nps

30695.nps 第 3 章 栈和队列 栈和队列是两种特殊的线性结构 从数据结构的角度看它们是线性表, 从操作的角度看它们是操作受限的线性表 在日常生活中经常会遇到栈或队列的实例 例如, 铁路调度中用到栈, 民航机票订购中用到队列 栈和队列还广泛应用于各种软件系统之中 例如, 在编译和运行计算机语言程序的过程中, 就需要利用栈进行语法检查 计算表达式的值 函数的调用和实现递归等 ; 在计算机操作系统的作业管理中就要使用队列

More information

untitled

untitled 不 料 料 例 : ( 料 ) 串 度 8 年 數 串 度 4 串 度 數 數 9- ( ) 利 數 struct { ; ; 數 struct 數 ; 9-2 數 利 數 C struct 數 ; C++ 數 ; struct 省略 9-3 例 ( 料 例 ) struct people{ char name[]; int age; char address[4]; char phone[]; int

More information

PowerPoint Presentation

PowerPoint Presentation 数据结构与算法 ( 六 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) http://www.jpk.pku.edu.cn/pkujpk/course/sjjg 第 6 章树 C 树的定义和基本术语 树的链式存储结构 子结点表 表示方法 静态 左孩子 / 右兄弟 表示法 动态表示法 动态 左孩子 / 右兄弟 表示法 父指针表示法及其在并查集中的应用

More information

生成word文档

生成word文档 希赛网, 专注于软考 PMP 通信考试的专业 IT 知识库和在线教育平台 希赛网在线题库, 提供历年考试真题 模拟试题 章节练习 知识点练习 错题本练习等在线做题服务, 更有能力评估报告, 让你告别盲目做题, 针对性地攻破自己的薄弱点, 更高效的备考 希赛网官网 :http://www.educity.cn/ 希赛网软件水平考试网 :http://www.educity.cn/rk/ 希赛网在线题库

More information

ebook14-4

ebook14-4 4 TINY LL(1) First F o l l o w t o p - d o w n 3 3. 3 backtracking parser predictive parser recursive-descent parsing L L ( 1 ) LL(1) parsing L L ( 1 ) L L ( 1 ) 1 L 2 L 1 L L ( k ) k L L ( 1 ) F i r s

More information

Microsoft PowerPoint - DS_Ch3_EN [兼容模式]

Microsoft PowerPoint - DS_Ch3_EN [兼容模式] Data Structure Ch.3 Stacks & Queues Dr. He Emil Huang School of Computer Science and Technology Soochow University 苏州大学计算机科学与技术学院网络工程系 本章 ppt 与教材对应情况 本章涉及所有内容涵盖了 Kruse 教材以下章节 Chapter 2 ( 栈,Introduction

More information

Microsoft Word doc

Microsoft Word doc 2008 年上半年软考程序员考试下午试题 ( 盛威网站地址 :http://www.snwei.com/exam/programmer/2008041.htm) 试题一 ( 共 15 分 ) 阅读以下说明和流程图, 填补流程图中的空缺 (1)~(9), 将解答填入答题纸的对应栏内 [ 说明 ] 假设数组 A 中的各元素 A(1),A(2),,A(M) 已经按从小到大排序 (M 1); 数组 B 中的各元素

More information

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式] Arrays and Strings 存储同类型的多个元素 Store multi elements of the same type 数组 (array) 存储固定数目的同类型元素 如整型数组存储的是一组整数, 字符数组存储的是一组字符 数组的大小称为数组的尺度 (dimension). 定义格式 : type arrayname[dimension]; 如声明 4 个元素的整型数组 :intarr[4];

More information

大侠素材铺

大侠素材铺 编译原理与技术 语法制导翻译 Ⅱ 计算机科学与技术学院 李诚 22/10/2018 Announcement Tutorial on Thursday (25/10/2018) 3B201, Class time Assignment review Q & A Cheng @ Compiler Fall 2018, USTC 2 主要内容 源程序 词法分析器 token 语法分析器 分析树 语义分析

More information

第1章

第1章 21 世纪高职高专规划教材 计算机系列 数据结构概论 尹绍宏董卿霞苑春苗 编著 清华大学出版社 北京交通大学出版社 北京 内容简介 本书详细地介绍了各种类型的数据结构, 以及查找和排序的方法 对每一种数据结构, 主要讲述其基本概念, 各种存储结构, 以及不同存储结构下的各种操作的实现, 并用 C 语言对其算法进行实现 对查找和排序的各种不同方法除讲述其方法外, 还给出了用 C 语言实现的算法程序,

More information

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit 6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C51 6.1 C51 6.1.1 C51 C51 ANSI C MCS-51 C51 ANSI C C51 6.1 6.1 C51 bit Byte bit sbit 1 0 1 unsigned char 8 1 0 255 Signed char 8 11 128

More information

3. 給 定 一 整 數 陣 列 a[0] a[1] a[99] 且 a[k]=3k+1, 以 value=100 呼 叫 以 下 兩 函 式, 假 設 函 式 f1 及 f2 之 while 迴 圈 主 體 分 別 執 行 n1 與 n2 次 (i.e, 計 算 if 敘 述 執 行 次 數, 不

3. 給 定 一 整 數 陣 列 a[0] a[1] a[99] 且 a[k]=3k+1, 以 value=100 呼 叫 以 下 兩 函 式, 假 設 函 式 f1 及 f2 之 while 迴 圈 主 體 分 別 執 行 n1 與 n2 次 (i.e, 計 算 if 敘 述 執 行 次 數, 不 1. 右 側 程 式 正 確 的 輸 出 應 該 如 下 : * *** ***** ******* ********* 在 不 修 改 右 側 程 式 之 第 4 行 及 第 7 行 程 式 碼 的 前 提 下, 最 少 需 修 改 幾 行 程 式 碼 以 得 到 正 確 輸 出? (A) 1 (B) 2 (C) 3 (D) 4 1 int k = 4; 2 int m = 1; 3 for (int

More information

<4D6963726F736F667420576F7264202D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF>

<4D6963726F736F667420576F7264202D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF> 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 考 试 2009 年 上 半 年 软 件 设 计 师 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 请 按 下 述 要 求 正 确 填 写 答 题 纸 1. 在 答 题 纸 的 指 定 位 置 填 写 你 所 在 的 省 自 治 区 直 辖 市 计 划 单 列 市 的 名 称 2. 在 答

More information

Microsoft PowerPoint - ds-9.ppt [兼容模式]

Microsoft PowerPoint - ds-9.ppt [兼容模式] 第 九 章 静 态 表 动 态 表 哈 希 表 9.1 基 本 概 念 (Page 214) 2 表 : 是 由 同 一 类 型 元 素 成 的 集 合 静 态 表 : 只 做 询 或 检 索 操 作 动 态 表 : 询 检 索 插 入 删 除 关 键 字 : 是 元 素 中 某 个 相 的 值, 用 它 可 以 标 识 一 个 元 素 主 关 键 字 次 关 键 字 : 根 给 定 值, 在 表

More information

Open topic Bellman-Ford算法与负环

Open topic   Bellman-Ford算法与负环 Open topic Bellman-Ford 2018 11 5 171860508@smail.nju.edu.cn 1/15 Contents 1. G s BF 2. BF 3. BF 2/15 BF G Bellman-Ford false 3/15 BF G Bellman-Ford false G c = v 0, v 1,..., v k (v 0 = v k ) k w(v i 1,

More information

(CIP) /. :, ISBN T P CIP (2005) : : 127 : : : : : 787 mm mm 1

(CIP) /. :, ISBN T P CIP (2005) : : 127 : : :  : : 787 mm mm 1 (CIP) /. :,2005. 7 ISBN 7 5612 1935 0.... T P311. 12 4 CIP (2005) 040538 : : 127 :710072 : 029-88493844 88491757 : www.nwpup.com : : 787 mm 1 092 mm 1/ 16 : 6.75 : 165 : 2005 9 1 : 9. 00 : : : ,,,,,,,,

More information

2014年度厦门市工程系列高级专业技术职务任职资格

2014年度厦门市工程系列高级专业技术职务任职资格 2015 年 度 厦 门 市 工 程 系 列 高 级 专 业 技 术 职 务 任 职 资 格 评 审 通 过 人 员 名 单 公 示 2015 年 度 厦 门 市 工 程 系 列 高 级 职 称 评 审 会 于 2016 年 7 月 25 日 -7 月 30 日 召 开, 现 将 通 过 人 员 名 单 予 以 公 示 一 公 示 有 关 事 项 1. 本 公 示 期 为 2016 年 8 月 3

More information

附件2:

附件2: 黄 埔 区 建 设 局 ( 部 门 )2014 年 度 部 门 决 算 目 录 表 第 一 部 分 黄 埔 区 建 设 局 ( 部 门 ) 概 况 一 部 门 主 要 职 能 二 部 门 决 算 单 位 构 成 三 部 门 决 算 人 员 构 成 第 二 部 分 2014 年 度 部 门 决 算 表 一 收 入 支 出 决 算 总 表 二 收 入 决 算 表 三 支 出 决 算 表 四 公 共 预

More information

Microsoft Word - 消息机制.doc

Microsoft Word - 消息机制.doc 消息机制 一 消息管理器设计 采用的队列是顺序表示 ( 即数组表示 ) 的循环队列, 循环队列的好处是可以充分的利用 队列的空间 消息包含了一定的信息, 为了实现消息结构的尽可能的通用性, 设计了如下的 消息结构 : typedef struct union const void* p; // 消息中附带的数据 int v; data; mygui_handle hobjdst; // 接收消息的目标对象

More information

untitled

untitled 1 DBF (READDBF.C)... 1 2 (filetest.c)...2 3 (mousetes.c)...3 4 (painttes.c)...5 5 (dirtest.c)...9 6 (list.c)...9 1 dbf (readdbf.c) /* dbf */ #include int rf,k,reclen,addr,*p1; long brec,erec,i,j,recnum,*p2;

More information

Microsoft Word - 澎湖田調報告_璉謙組.doc

Microsoft Word - 澎湖田調報告_璉謙組.doc 越 籍 新 住 民 妊 娠 醫 療 照 護 : 訪 談 李 亞 梅 女 士 組 長 : 郭 璉 謙 成 大 中 文 所 博 二 組 員 : 阮 壽 德 成 大 中 文 所 博 一 黃 榆 惠 成 大 中 文 所 碩 一 許 愷 容 成 大 中 文 所 碩 一 何 珍 儀 成 大 中 文 所 碩 一 指 導 老 師 : 陳 益 源 教 授 前 言 2009 年 03 月 21 日, 下 午 2 時 30

More information

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023)

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023) ( CIP) /. :, 2005. 2 ( ) ISBN 7-5624-3339-9.......... TP311. 1 CIP ( 2005) 011794 : : : : * : : 174 ( A ) :400030 : ( 023) 65102378 65105781 : ( 023) 65103686 65105565 : http: / /www. cqup. com. cn : fxk@cqup.

More information

c_cpp

c_cpp C C++ C C++ C++ (object oriented) C C++.cpp C C++ C C++ : for (int i=0;i

More information

PowerPoint Presentation

PowerPoint Presentation 数据结构与算法 ( 一 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) http://www.jpk.pku.edu.cn/pkujpk/course/sjjg 第 1 章概论 问题求解 数据结构及抽象数据类型 算法的特性及分类 算法的效率度量 数据结构的选择和评价 2 1.1 问题求解 问题求解 设计方法 编写计算机程序的目的?

More information

OOP with Java 通知 : Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢

OOP with Java 通知 : Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 : Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 Email: 51141201063@ecnu.cn 复习 : Java 类型 基本类型 boolean, char, 封装 (wrappers) 类 (class) 定义 class MyType { int i;

More information

OOP with Java 通知 : Project 2 提交时间 : 3 月 15 日晚 9 点

OOP with Java 通知 : Project 2 提交时间 : 3 月 15 日晚 9 点 OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 : Project 2 提交时间 : 3 月 15 日晚 9 点 复习 : Java 类型 基本类型 boolean, char, 封装 (wrappers) 类 (class) 定义 class MyType { int i; double d; 数据 (Fields) char c; void set(double

More information

2015年全国射箭重点学校锦标赛.xls

2015年全国射箭重点学校锦标赛.xls 60(1) 60(2) 50 30 10's X's 60(1) 60(2) 50 30 10's X's 1 2 3 4 5 6 10's X's 40A 41A 40C 42A 43C 38C 46B 40B 46C 45B 41C 37C 43A 37B 39C 41B 1 2 3 4 5 6 10's X's 44B 44A 42B 45A 38B 43B 38A 39B 37A 42C 46A

More information

2015年全国射箭冠军赛.xls

2015年全国射箭冠军赛.xls 70(1-1) 70(1-2) 70(2-1) 70(2-2) 10's X's 70(1-1) 70(1-2) 70(2-1) 70(2-2) 10's X's 70(1-1) 70(1-2) 70(2-1) 70(2-2) 10's X's 70(1-1) 70(1-2) 70(2-1) 70(2-2) 10's X's 70(1-1) 70(1-2) 10's X's 70(1-1) 70(1-2)

More information

2017年全国射箭重点体校锦标赛.xls

2017年全国射箭重点体校锦标赛.xls 70 170 2 50 30 10's X's 70 170 2 50 30 10's X's 70 170 2 50 30 10's X's 70 170 2 50 30 10's X's 70 170 2 50 30 10's X's 70 170 2 50 30 10's X's 70 170 2 50 30 10's X's 70 170 2 50 30 10's X's 70 170 2

More information

2015年全国室外射箭锦标赛.xls

2015年全国室外射箭锦标赛.xls 70(1-1) 70(1-2) 70(2-1) 70(2-2) 10's X's 70(1-1) 70(1-2) 70(2-1) 70(2-2) 10's X's 70(1-1) 70(1-2) 70(2-1) 70(2-2) 10's X's 70(1-1) 70(1-2) 70(2-1) 70(2-2) 10's X's 70(1-1) 70(1-2) 10's X's 70(1-1) 70(1-2)

More information

OOP with Java 通知 Project 2 提交时间 : 3 月 21 日晚 9 点 作业提交格式 学习使用 文本编辑器 cmd, PowerShell (Windows), terminal(linux, Mac)

OOP with Java 通知 Project 2 提交时间 : 3 月 21 日晚 9 点 作业提交格式 学习使用 文本编辑器 cmd, PowerShell (Windows), terminal(linux, Mac) OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 2 提交时间 : 3 月 21 日晚 9 点 作业提交格式 学习使用 文本编辑器 cmd, PowerShell (Windows), terminal(linux, Mac) 复习 面向对象编程 将实际问题分解成不同的对象 不的对象提供不同的服务 对象之间可以传递消息 例子小李深夜

More information

bnb.PDF

bnb.PDF 2003 1 39 2003 2 39 2003 3 39 2003 M 4 39 2003 5 39 2003 6 39 2003 7 39 2 4 2003 8 39 2003 2002 11 22 D05D06 4,708,777.00 9 39 2003 18 10 39 2003 11 39 2003 [2003]A271 2003 6 30 2003 1-6 2003 1-6 2003

More information

目录 一 题目的内容及要求... 1 二 需求分析... 1 三 概要设计... 1 四 详细设计... 2 五 源代码... 7 六 运行结果及分析 七 收获及体会

目录 一 题目的内容及要求... 1 二 需求分析... 1 三 概要设计... 1 四 详细设计... 2 五 源代码... 7 六 运行结果及分析 七 收获及体会 程序设计实训报告 表达式求值问题 完成者 : 何炜班级 : 计科 1501 学号 :2015014278 完成日期 :2016 年 7 月 14 日星期四 1 目录 一 题目的内容及要求... 1 二 需求分析... 1 三 概要设计... 1 四 详细设计... 2 五 源代码... 7 六 运行结果及分析... 16 七 收获及体会... 17 2 一 题目的内容及要求 求解形如 (a+b)*((c+d)*e+f*h*g)

More information

1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7

1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7 1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7-80097 - 564-9 /TP 8 : 10. 00 ,,,, 1994 NCRE,,, ( ),,,,,

More information

e bug 0 x=0 y=5/x 0 Return 4 2

e bug 0 x=0 y=5/x 0 Return 4 2 e 1 4 1 4 4.1 4.2 4.3 4.4 4.5 e 2 4.1 bug 0 x=0 y=5/x 0 Return 4 2 e 3 4 3 e 4 (true) (false) 4 4 e 5 4 5 4.2 1 G= V E V={n1,n2,,n m } E={e1,e2,,e p } e k ={n i,n j }, n i,n j V e 6 4.2 4 6 1 e 3 n 1 e

More information

B. 军队发布命令 第 4 层 司令 第 3 层军长 1 军长 2 第 2 层师长 1 师长 2 师长 3 师长 4 第 1 层团长 1 团长 2 团长 3 团长 4 团长 5 团长 6 团长 7 团长 8 C. 国际会议中, 每个人都与他国地位对等的人直接进行会谈 第 4 层 英国女王 瑞典国王

B. 军队发布命令 第 4 层 司令 第 3 层军长 1 军长 2 第 2 层师长 1 师长 2 师长 3 师长 4 第 1 层团长 1 团长 2 团长 3 团长 4 团长 5 团长 6 团长 7 团长 8 C. 国际会议中, 每个人都与他国地位对等的人直接进行会谈 第 4 层 英国女王 瑞典国王 第十八届全国青少年信息学奥林匹克联赛初赛 提高组 Pascal 语言试题 竞赛时间 :2012 年 10 月 13 日 14:30~16:30 选手注意 : 试题纸共有 15 页, 答题纸共有 2 页, 满分 100 分 请在答题纸上作答, 写在试题纸上的一律无效 不得使用任何电子设备 ( 如计算器 手机 电子词典等 ) 或查阅任何书籍资料 一 单项选择题 ( 共 10 题, 每题 1.5 分, 共计

More information

untitled

untitled A, 3+A printf( ABCDEF ) 3+ printf( ABCDEF ) 2.1 C++ main main main) * ( ) ( ) [ ].* ->* ()[] [][] ** *& char (f)(int); ( ) (f) (f) f (int) f int char f char f(int) (f) char (*f)(int); (*f) (int) (

More information

计算概论A B03 C++语言的基本成分 - 运算成分(2)

计算概论A B03 C++语言的基本成分 - 运算成分(2) 计算概论 A 程序设计部分 C 语言的构成成分 运算成分 李戈 北京大学信息科学技术学院软件研究所 lige@sei.pku.edu.cn C 语言中的运算符 C 语言的运算符范围很宽 求字节数运算符 : sizeof 下标运算符 [ ] 赋值运算符 = 算术运算符 + - * / % 关系运算符 < > == >= > ~

More information

立 志 于 打 造 最 贴 近 考 生 实 际 的 辅 导 书 计 算 机 考 研 之 数 据 结 构 高 分 笔 记 率 辉 编 著 周 伟 张 浩 审 核 讨 论 群 :15945769

立 志 于 打 造 最 贴 近 考 生 实 际 的 辅 导 书 计 算 机 考 研 之 数 据 结 构 高 分 笔 记 率 辉 编 著 周 伟 张 浩 审 核 讨 论 群 :15945769 立 志 于 打 造 最 贴 近 考 生 实 际 的 辅 导 书 计 算 机 考 研 之 数 据 结 构 高 分 笔 记 率 辉 编 著 周 伟 张 浩 审 核 讨 论 群 :15945769 前 言 在 计 算 机 统 考 的 四 门 专 业 课 中, 最 难 拿 高 分 的 就 是 数 据 结 构 但 是 这 门 课 本 身 的 难 度 并 不 是 考 生 最 大 的 障 碍, 真 正 的 障 碍

More information

汇集全球21位医生的经验和智慧,总结出最实用的专业建议,这些都是最值得你牢记的健康提醒

汇集全球21位医生的经验和智慧,总结出最实用的专业建议,这些都是最值得你牢记的健康提醒 彙 集 全 球 21 位 醫 生 的 經 驗 和 智 慧, 總 結 出 最 實 用 的 專 業 建 議, 這 些 都 是 最 值 得 你 牢 記 的 健 康 提 醒 top1. 不 是 每 個 人 都 適 合 做 近 視 矯 行 手 術, 除 非 你 在 手 術 前 已 經 持 續 穩 定 地 佩 戴 了 一 年 以 上 的 近 視 眼 鏡 或 者 隱 形 眼 鏡 如 果 你 時 摘 時 戴 眼 鏡,

More information

1 行 业 发 展 不 平 衡 我 国 房 地 产 中 介 服 务 业 起 步 较 晚, 专 业 分 工 程 度 和 国 外 发 达 国 家 相 比 还 有 很 大 差 距 房 地 产 中 介 服 务 行 业 的 发 展 水 平 与 房 地 产 开 发 行 业 的 市 场 化 水 平 密 切 相 关

1 行 业 发 展 不 平 衡 我 国 房 地 产 中 介 服 务 业 起 步 较 晚, 专 业 分 工 程 度 和 国 外 发 达 国 家 相 比 还 有 很 大 差 距 房 地 产 中 介 服 务 行 业 的 发 展 水 平 与 房 地 产 开 发 行 业 的 市 场 化 水 平 密 切 相 关 房 地 产 中 介 服 务 : 仍 处 于 成 长 期, 市 场 空 间 巨 大 作 者 : 庞 增 华 房 地 产 中 介 服 务 业 内 的 企 业 包 括 依 法 设 立 并 具 备 房 地 产 中 介 资 格 的 房 地 产 顾 问 策 划 房 地 产 代 理 销 售 房 地 产 评 估 房 地 产 经 纪 等 中 介 服 务 机 构, 是 房 地 产 开 发 价 值 链 中 不 可 或 缺

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

_汪_文前新ok[3.1].doc

_汪_文前新ok[3.1].doc 普 通 高 校 本 科 计 算 机 专 业 特 色 教 材 精 选 四 川 大 学 计 算 机 学 院 国 家 示 范 性 软 件 学 院 精 品 课 程 基 金 青 年 基 金 资 助 项 目 C 语 言 程 序 设 计 (C99 版 ) 陈 良 银 游 洪 跃 李 旭 伟 主 编 李 志 蜀 唐 宁 九 李 涛 主 审 清 华 大 学 出 版 社 北 京 i 内 容 简 介 本 教 材 面 向

More information

nooog

nooog C : : : , C C,,, C, C,, C ( ), ( ) C,,, ;,, ; C,,, ;, ;, ;, ;,,,, ;,,, ; : 1 9, 2 3, 4, 5, 6 10 11, 7 8, 12 13,,,,, 2008 1 1 (1 ) 1.1 (1 ) 1.1.1 ( ) 1.1.2 ( ) 1.1.3 ( ) 1.1.4 ( ) 1.1.5 ( ) 1.2 ( ) 1.2.1

More information

untitled

untitled 2014 6 50 2015 3 19 11 2015 3 2014/15 69 70 2014/15 2014 9 2014-15 2 900 2014 2014 5 2015 3 5 24 5 10 5 31 6 7 9 50 16 7 6 80 7 19 2014 18 9 6 11 2 12 2015 1 11 2 8 2014/15 71 2014 2014-15 $80,000 2015

More information

四川省普通高等学校

四川省普通高等学校 四 川 省 普 通 高 等 学 校 计 算 机 应 用 知 识 和 能 力 等 级 考 试 考 试 大 纲 (2013 年 试 行 版 ) 四 川 省 教 育 厅 计 算 机 等 级 考 试 中 心 2013 年 1 月 目 录 一 级 考 试 大 纲 1 二 级 考 试 大 纲 6 程 序 设 计 公 共 基 础 知 识 6 BASIC 语 言 程 序 设 计 (Visual Basic) 9

More information

Ps22Pdf

Ps22Pdf C ( CIP) C /. :, 2001. 7 21 ISBN 7-5624 -2355-5. C........ C. TP312 CIP ( 2001 ) 034496 C * * : 7871092 1 /16 : 14. 25 : 356 20017 1 20017 1 : 1 6 000 ISBN 7-5624-2355-5 / TP311 : 21. 00 C, C,,,, C,, (

More information

Microsoft PowerPoint - string_kruse [兼容模式]

Microsoft PowerPoint - string_kruse [兼容模式] Strings Strings in C not encapsulated Every C-string has type char *. Hence, a C-string references an address in memory, the first of a contiguous set of bytes that store the characters making up the string.

More information

untitled

untitled 1 Outline 料 類 說 Tang, Shih-Hsuan 2006/07/26 ~ 2006/09/02 六 PM 7:00 ~ 9:30 聯 ives.net@gmail.com www.csie.ntu.edu.tw/~r93057/aspnet134 度 C# 力 度 C# Web SQL 料 DataGrid DataList 參 ASP.NET 1.0 C# 例 ASP.NET 立

More information

2013 C 1 #include <stdio.h> 2 int main(void) 3 { 4 int cases, i; 5 long long a, b; 6 scanf("%d", &cases); 7 for (i = 0; i < cases; i++) 8 { 9 scanf("%

2013 C 1 #include <stdio.h> 2 int main(void) 3 { 4 int cases, i; 5 long long a, b; 6 scanf(%d, &cases); 7 for (i = 0; i < cases; i++) 8 { 9 scanf(% 2013 ( 28 ) ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp Compilation Error long long cin scanf Time Limit Exceeded 1: A 10 B 1 C 1 D 5 E 5 F 1 G II 5 H 30 1 2013 C 1 #include 2 int main(void) 3

More information

B. 军队发布命令 第 4 层 司令 第 3 层军长 1 军长 2 第 2 层师长 1 师长 2 师长 3 师长 4 第 1 层团长 1 团长 2 团长 3 团长 4 团长 5 团长 6 团长 7 团长 8 C. 国际会议中, 每个人都与他国地位对等的人直接进行会谈 第 4 层 英国女王 瑞典国王

B. 军队发布命令 第 4 层 司令 第 3 层军长 1 军长 2 第 2 层师长 1 师长 2 师长 3 师长 4 第 1 层团长 1 团长 2 团长 3 团长 4 团长 5 团长 6 团长 7 团长 8 C. 国际会议中, 每个人都与他国地位对等的人直接进行会谈 第 4 层 英国女王 瑞典国王 第十八届全国青少年信息学奥林匹克联赛初赛 提高组 C++ 语言试题 竞赛时间 :2012 年 10 月 13 日 14:30~16:30 选手注意 : 试题纸共有 15 页, 答题纸共有 2 页, 满分 100 分 请在答题纸上作答, 写在试题纸上的一律无效 不得使用任何电子设备 ( 如计算器 手机 电子词典等 ) 或查阅任何书籍资料 一 单项选择题 ( 共 10 题, 每题 1.5 分, 共计 15

More information

山东建筑大学学分制管理规定(试行)

山东建筑大学学分制管理规定(试行) 山 建 大 校 字 2015 67 号 山 东 建 筑 大 学 关 于 印 发 学 分 制 管 理 规 定 ( 试 行 ) 的 通 知 各 院 部 校 直 各 部 门 : 山 东 建 筑 大 学 学 分 制 管 理 规 定 ( 试 行 ) 已 经 学 校 研 究 同 意, 现 印 发 给 你 们, 请 认 真 遵 照 执 行 山 东 建 筑 大 学 2015 年 8 月 7 日 1 山 东 建 筑

More information

untitled

untitled 1 1.1 1.2 1.3 1.4 1.5 ++ 1.6 ++ 2 BNF 3 4 5 6 7 8 1.2 9 1.2 IF ELSE 10 1.2 11 1.2 12 1.3 Ada, Modula-2 Simula Smalltalk-80 C++, Objected Pascal(Delphi), Java, C#, VB.NET C++: C OOPL Java: C++ OOPL C# C++

More information

untitled

untitled 1 5 IBM Intel 1. IBM 第 1/175 页 第 2/175 页 第 3/175 页 80 第 4/175 页 2. IBM 第 5/175 页 3. (1) 第 6/175 页 第 7/175 页 第 8/175 页 = = 第 9/175 页 = = = = = 第 10/175 页 = = = = = = = = 3. (2) 第 11/175 页 第 12/175 页 第 13/175

More information

Microsoft PowerPoint - C语言课件-9-结构体.pptx

Microsoft PowerPoint - C语言课件-9-结构体.pptx 第九章结构体 郎大鹏 第九章结构体 9.1 结构体类型的声明方法 9.2 结构体类型变量的定义与使用 9.3 结构体数组 9.4 编程举例 9.5 习题 9.1 结构体类型的声明方法 结构体声明的语法形式如下 : struct 结构体标识符 成员变量列表 ; }; 例如, 为了描述班级 ( 假设仅仅包括班级编号 专业 人数等信息 ), 可以声明如下的结构体类型 struct Class char Code[10];

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 数据结构与算法 ( 五 ) 张铭主讲 采用教材 : 张铭, 王腾蛟, 赵海燕编写高等教育出版社,2008. 6 ( 十一五 国家级规划教材 ) http://www.jpk.pku.edu.cn/pkujpk/course/sjjg 第五章 的概念 的抽象数据类型 深度优先搜索 宽度优先搜索 的存储结构 D B A E G C H F I 二叉搜索树 堆与优先队列 Huffman 树及其应用 2 5.2

More information

串 零个或多个字符组成的有限序列 将元素类型限制为字符线性表 具有相同类型的数据元素的有限序列 将元素类型扩充为线性表 ( 多维 ) 数组 线性表中的数据元素可以是线性表 2

串 零个或多个字符组成的有限序列 将元素类型限制为字符线性表 具有相同类型的数据元素的有限序列 将元素类型扩充为线性表 ( 多维 ) 数组 线性表中的数据元素可以是线性表 2 Array Zibin Zheng( 郑子彬 ) School of Data and Computer Science, SYSU http://www.inpluslab.com 课程主页 :http://inpluslab.sysu.edu.cn/dsa2016/ 串 零个或多个字符组成的有限序列 将元素类型限制为字符线性表 具有相同类型的数据元素的有限序列 将元素类型扩充为线性表 ( 多维

More information

什么是函数式编程?

什么是函数式编程? 函数式编程 FUNCTIONAL PROGRAMMING byvoid@byvoid.com 什么是函数式编程? 真相是 从停机问题开始 Bug 假设有停机判定算法 function halting(func, input) { } return if_func_will_halt_on_input; 充分利用停机判定 function ni_ma(func) { if (halting(func,

More information

<4D F736F F D B8BDBCFE4220D7A8D2B5BBF9B4A1D3EBBACBD0C4BFCEB3CCC3E8CAF62E646F6378>

<4D F736F F D B8BDBCFE4220D7A8D2B5BBF9B4A1D3EBBACBD0C4BFCEB3CCC3E8CAF62E646F6378> B212CC: 数据结构与算法 课程描述 0 课程基本信息 课程编号 : B212CC 课程名称 : 数据结构与算法英文名称 : Data Structures and Algorithms 英文简称 : DSA 预备课程 : 计算系统基础 离散数学授课时间 : 二年级第一学期时间分配 : 课堂教学 (48 课时 )+ 实验安排 (48 课时 )+ 课后作业与阅读 (48 课时 ) 学分数 : 3

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN: 978-7-302-13599-9, 红色封面答案制作时间 :2011 年 2 月 -5 月一 选择题 1. 以下数组定义中, 错误的是 :C)int a[3]=1,2,3,4; 2. 以下数组定义中, 正确的是 :B) int a[][2]=1,2,3,4; 3. 设有定义 int a[8][10];,

More information

3.1 num = 3 ch = 'C' 2

3.1 num = 3 ch = 'C' 2 Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:

More information

<4D F736F F D C4EA33D4C2C8ABB9FABCC6CBE3BBFAB5C8BCB6BFBCCAD4B6FEBCB6B1CACAD4CAD4BEEDBCB0B2CEBFBCB4F0B0B82E646F63>

<4D F736F F D C4EA33D4C2C8ABB9FABCC6CBE3BBFAB5C8BCB6BFBCCAD4B6FEBCB6B1CACAD4CAD4BEEDBCB0B2CEBFBCB4F0B0B82E646F63> 2012 年 3 月全国计算机等级考试二级笔试试卷及参考答案 C 语言程序设计 ( 考试时间 90 分钟, 满分 100 分 ) 一 选择题 ((1)-(10) (21)-(40) 每题 2 分,(11)-(20) 每题 1 分, 共 70 分 ) 下列各题 A) B) C) D) 四个选项中, 只有一个选项是正确的 请将正确选项填涂在答题卡相应位置上答在试卷上不得分 1. 下列叙述中正确的是 A)

More information