文档库 最新最全的文档下载
当前位置:文档库 › 二级单选-函数和代码复用

二级单选-函数和代码复用

二级单选-函数和代码复用
二级单选-函数和代码复用

1关于递归函数的描述,以下选项中正确的是

A 函数内部包含对本函数的再次调用

B 函数比较复杂

C 包含一个循环结构

D 函数名称作为返回值

正确答案: A

2关于递归函数基例的说明,以下选项中错误的是

A 递归函数必须有基例

B 每个递归函数都只能有一个基例

C 递归函数的基例决定递归的深度

D 递归函数的基例不再进行递归

正确答案: B

3以下选项中,不属于函数的作用的是

A 复用代码

B 提高代码执行速度

C 降低编程复杂度

D 增强代码可读性

正确答案: B

4假设函数中不包括global保留字,对于改变参数值的方法,以下选项中错误的是

A 参数是整数类型时,不改变原参数的值

B 参数是组合类型(可变对象)时,改变原参数的值

C 参数是列表类型时,改变原参数的值

D 参数的值是否改变与函数中对变量的操作有关,与参数类型无关

正确答案: D

5在Python中,关于函数的描述,以下选项中正确的是.

A Python函数定义中没有对参数指定类型,这说明,参数在函数中可以当作任意类型使用

B 函数eval()可以用于数值表达式求值,例如eval("2*3+1")

C 一个函数中只允许有一条return语句

D Python中,def和return是函数必须使用的保留字

正确答案: B

6

给出如下代码:

def func(a,b):

c=a**2+b

b=a

return c

a=10

b=100

c=func(a,b)+a

以下选项中描述错误的是

A执行该函数后,变量c的值为200

B 执行该函数后,变量a的值为10

C 执行该函数后,变量b的值为100

D 该函数名称为func

正确答案: A

7在Python中,关于全局变量和局部变量,以下选项中描述不正确的是

A 一个程序中的变量包含两类:全局变量和局部变量

B 全局变量一般没有缩进

C 全局变量在程序执行的全过程有效

D 全局变量不能和局部变量重名

正确答案: D

8关于面向对象和面向过程编程描述,以下选项中正确的是

A 面向对象编程比面向过程编程更为高级

B 模块化设计就是面向对象的设计

C 面向对象和面向过程是编程语言的分类依据

D 所有面向对象编程能实现的功能采用面向过程同样能完成

正确答案: D

9以下选项中,对于递归程序的描述错误的是

A 书写简单

B 执行效率高

C 递归程序都可以有非递归编写方法

D 一定要有基例

正确答案: B

10

下面代码的输出结果是

>>>f=lambda x,y:y+x

>>>f(10,10)

A 10,10

B 10

C 20

D 100

正确答案: C

11关于形参和实参的描述,以下选项中正确的是

A 程序在调用时,将形参复制给函数的实参

B 参数列表中给出要传入函数内部的参数,这类参数称为形式参数,简称形参

C 函数定义中参数列表里面的参数是实际参数,简称实参

D 程序在调用时,将实参复制给函数的形参

正确答案: D

12关于lambda函数,以下选项中描述错误的是

A 定义了一种特殊的函数

B lambda不是Python的保留字

C lambda函数将函数名作为函数结果返回

D lambda函数也称为匿名函数

正确答案: B

13以下选项中,对于函数的定义错误的是

A def vfunc(*a,b):

B def vfunc(a,b):

C def vfunc(a,b=2):

D def vfunc(a,*b):

正确答案: A

14关于函数的参数,以下选项中描述错误的是

A 可选参数可以定义在非可选参数的前面

B 一个元组可以传递给带有星号的可变参数

C 在定义函数时,可以设计可变数量参数,通过在参数前增加星号(*)实现

D 在定义函数时,如果有些参数存在默认值,可以在定义函数时直接为这些参数指定默认值正确答案: A

15关于return语句,以下选项中描述正确的是

A 函数可以没有return语句

B 函数必须有一个return语句

C 函数中最多只有一个return语句

D return只能返回一个值

正确答案: A

16关于函数,以下选项中描述错误的是

A Python使用del保留字定义一个函数

B 使用函数的主要目的是降低编程难度和代码重用

C 函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可。

D 函数是一段具有特定功能的、可重用的语句组

正确答案: A

17关于Python的全局变量和局部变量,以下选项中描述错误的是

A 简单数据类型变量无论是否与全局变量重名,仅在函数内部创建和使用,函数退出后变量被释放

B 全局变量指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效

C 局部变量指在函数内部使用的变量,当函数退出时,变量依然存在,下次函数调用可以继续使用

D 使用global保留字声明简单数据类型变量后,该变量作为全局变量使用

正确答案: C

18关于Python的lambda函数,以下选项中描述错误的是

A lambda函数将函数名作为函数结果返回

B 可以使用lambda函数定义列表的排序原则

C lambda用于定义简单的、能够在一行内表示的函数

D f = lambda x,y:x+y 执行后,f的类型为数字类型

正确答案: D

19

下面代码实现的功能描述为

def fact(n):

if n==0:

return 1

else:

return n*fact(n-1)

num =eval(input("请输入一个整数:"))

print(fact(abs(int(num))))

A 接受用户输入的整数N,判断N是否是水仙花数

B 接受用户输入的整数N,判断N是否是完数并输出结论

C 接受用户输入的整数N,判断N是否是素数并输出结论

D 接受用户输入的整数N,输出N的阶乘值

正确答案: D

20

给出如下代码:

def fact(n):

s = 1

for i in range(1,n+1):

s *= i

return s

以下选项中描述错误的是

A fact(n)函数功能为求n的阶乘

B 代码中n是可选参数

C range()函数是Python内置函数

D s是局部变量

正确答案: B

21

给出如下代码:

ls = ["car","truck"]

def funC(a):

ls.append(a)

return

funC("bus")

print(ls)

以下选项中描述错误的是

A ls.append(a) 代码中的ls是列表类型

B 执行代码输出结果为['car', 'truck']

C ls.append(a) 代码中的ls是全局变量

D funC(a)中的a为非可选参数

正确答案: B

22

给出如下代码:

ls = ["car","truck"]

def funC(a):

ls =[]

ls.append(a)

return

funC("bus")

print(ls)

以下选项中描述错误的是

A 执行代码输出结果为['car', 'truck']

B 执行代码输出结果为['car', 'truck', 'bus']

C ls.append(a) 代码中的ls是列表类型

D 代码函数定义中,ls.append(a)中的ls是局部变量

正确答案: B

23

给出如下代码:

import turtle

def drawLine(draw):

turtle.pendown() if draw else turtle.penup()

turtle.fd(50)

turtle.right(90)

drawLine(True)

drawLine(True)

drawLine(True)

drawLine(True)

以下选项中描述错误的是

A 代码drawLine(True)中True替换为–1,运行代码结果不变

B 代码def drawLine(draw)中的draw可取值True或者False

C 运行代码,在Python Turtle Graphics 中,绘制一个正方形

D 代码drawLine(True)中True替换为0,运行代码结果不变

正确答案: D

24给出如下代码:

import turtle

def drawLine(draw):

turtle.pendown() if draw else turtle.penup()

turtle.fd(50)

turtle.right(90)

drawLine(True)

drawLine(0)

drawLine(True)

drawLine(True)

turtle.left(90)

drawLine(0)

drawLine(True)

drawLine(True)

以下选项中描述错误的是:

A 代码drawLine(True)中True替换为0,运行代码结果不变

B 代码def drawLine(draw)中的draw可取数值0、1、–1等

C 代码drawLine(True)中True替换为–1,运行代码结果不变

D 运行代码,在Python Turtle Graphics 中,绘制一个数码管数字2 正确答案: A

25下面代码的运行结果是

def func(num):

num += 1

a =10

func(a)

print(a)

A 11

B int

C 10

D 出错

正确答案: C

26下面代码的输出结果是

def func(a,b):

return a>>b

s = func(5,2)

print(s)

A 6

B 1

C 12

D 20

正确答案: B

27下面代码的输出结果是

def func(a,b):

a *= b

return a

s = func(5,2)

print(s)

A 10

B 1

C 12

D 20

正确答案: A

28下面代码的输出结果是

def f2(a):

if a > 33:

return True

li = [11, 22, 33, 44, 55] res = filter(f2, li)

print(list(res))

A [22,33,44]

B [11,33,55]

C [44,55]

D [33,44,55]

正确答案: C

29下面代码的输出结果是

def fib(n):

a,b = 1,1

for i in range(n-1):

a,b = b,a+b

return a

print (fib(7))

A 8

B 21

C 13

D 5

正确答案: C

30下面代码的输出结果是

def hello_world():

print('ST',end="*")

def three_hellos():

for i in range(3):

hello_world()

three_hellos()

A ST*

B ST*ST*ST*

C ***

D ST*ST*

正确答案: B

31下面代码的输出结果是

def exchange(a,b):

a,b = b,a

return (a,b)

x = 10

y = 20

x,y = exchange(x,y)

print(x,y)

A 10 10

B 20 20

C 20 10

D 20,10

正确答案: C

32下面代码的输出结果是

MA = lambda x,y : (x > y) * x + (x < y) * y MI = lambda x,y : (x > y) * y + (x < y) * x

a = 10

b = 20

print(MA(a,b))

print(MI(a,b))

A

20

10

B

10

20

C

10

10

D

20

20

正确答案: A

33关于下面的代码,以下选项中描述正确的是

>>> list(range(0,10,2))

A 按位置参数调用

B 执行结果为0, 2, 4, 6, 8

C 按关键字参数调用

D 按可变参数调用

正确答案: A

34关于下面代码,以下选项中描述正确的是

def fact(n, m=1) :

s = 1

for i in range(1, n+1):

s *= i

return s//m

print(fact(m=5,n=10))

A 按可变参数调用

B 按位置参数调用

C 执行结果为10886400

D 参数按照名称传递

正确答案: D

35关于函数的返回值,以下选项中描述错误的是

A 函数可以有return,也可以没有

B 函数可以返回0个或多个结果

C 函数必须有返回值

D return可以传递0个返回值,也可以传递任意多个返回值

正确答案: C

36关于函数局部变量和全局变量的使用规则,以下选项中描述错误的是

A return不可以传递任意多个函数局部变量返回值

B 对于基本数据类型的变量,无论是否重名,局部变量与全局变量不同

C 可以通过global保留字在函数内部声明全局变量

D 对于组合数据类型的变量,如果局部变量未真实创建,则是全局变量正确答案: A

37关于函数,以下选项中描述错误的是

A 函数在需要时被调用,其代码被执行

B 函数主要通过接口(interface)与外界通信,传递信息

C 函数使用时需要了解函数内部实现细节

D 函数:具有特定功能的可重用代码片段,实现解决某个特定问题的算法

正确答案: C

38关于函数的目的与意义,以下选项中描述错误的是

A 函数能调用未实现的函数

B 有助于采用分而治之的策略编写大型复杂程序

C 程序功能抽象,以支持代码重用

D 使用时无须了解函数内部实现细节

正确答案: A

39关于函数,以下选项中描述错误的是

A 一条函数定义定义一个用户自定义函数对象

B 函数名称不可赋给其他变量

C 函数定义语句可执行

D 函数也是数据

正确答案: B

40关于函数的参数传递(parameter passing),以下选项中描述错误的是

A 函数调用时,需要将形式参数传递给实际参数

B 形式参数是函数定义时提供的参数

C Python参数传递时不构造新数据对象,而是让形式参数和实际参数共享同一对象

D 实际参数是函数调用时提供的参数

正确答案: A

41关于函数的关键字参数使用限制,以下选项中描述错误的是

A 不得重复提供实际参数

B 关键字参数必须位于位置参数之后

C 关键字参数必须位于位置参数之前

D 关键字参数顺序无限制

正确答案: C

42下面代码的输出结果是

a = 4

a ^= 3

b = a ^ 2

print(a,end=",")

print(b)

A 4,3

B 5,7

C 64, 4096

D 7,5

正确答案: D

43执行下面代码,错误的是

def f(x, y = 0, z = 0): pass # 空语句,定义空函数体

A f(1, 2)

B f(1, 2, 3)

C f(1)

D f(1, , 3)

正确答案: D

44执行下面代码,错误的是

def f(x, y = 0, z = 0): pass # 空语句,定义空函数体

A f(1, z = 3)

B f(z = 3, x = 1, y = 2)

C f(1, y = 2, z = 3)

D f(1, x = 1, z = 3)

正确答案: D

45执行下面的代码,以下选项中正确的是

def f(x, y = 0, z = 0): pass # 空语句,定义空函数体

A f(1, y = 2, t = 3)

B f(x = 1, y = 2, z = 3)

C f(x = 1, 2)

D f(1, x = 1, z = 3)

正确答案: B

46关于嵌套函数,以下选项中描述错误的是

A 嵌套函数是在函数内部定义函数

B

def f():

print("Outer function f")

def g():

print("Inner function g")

g()

f.g()

C

def f():

print("Outer function f")

def g():

print("Inner function g")

g()

f()

D 内层函数仅供外层函数调用,外层函数之外不得调用

正确答案: B

47下面代码的执行结果是

>>> def area(r, pi = 3.14159):

return pi * r *r

>>> area(pi = 3.14, r = 4)

A 出错

B 无输出

C 50.24

D 39.4384

正确答案: C

48下面代码的执行结果是

>>> def area(r, pi = 3.14159):

return pi * r * r

>>> area(3.14, 4)

A 无输出

B 出错

C 50.24

D 39.4384

正确答案: D

49下面代码的执行结果是

def greeting(args1, *tupleArgs, **dictArgs):

print(args1)

print(tupleArgs)

print(dictArgs)

names = ['HTY', 'LFF', 'ZH']

info = {'schoolName' : 'NJRU', 'City' : 'Nanjing'} greeting('Hello,', *names, **info)

A ['HTY', 'LFF', 'ZH']

B 出错

C 无输出

D

Hello,

('HTY', 'LFF', 'ZH')

{'schoolName': 'NJRU', 'City': 'Nanjing'}

正确答案: D

50下面代码的执行结果是

def greeting(args1, *tupleArgs, **dictArgs):

print(args1)

print(tupleArgs)

print(dictArgs)

names = ['HTY', 'LFF', 'ZH']

info = {'schoolName' : 'NJRU', 'City' : 'Nanjing'} greeting(*names,'Hello,',**info)

A 出错

B ['HTY', 'LFF', 'ZH']

C

HTY

('LFF', 'ZH', 'Hello,')

{'schoolName': 'NJRU', 'City': 'Nanjing'}

D 无输出

正确答案: C

51以下代码的输出结果是

>>> def f(x, y = 0, z = 0): pass

>>> f(1, , 3)

A not

B pass

C None

D 出错

正确答案: D

52以下代码的输出结果是

d ef fun1(a,b,*args):

print(a)

print(b)

print(args)

fun1(1,2,3,4,5,6)

A

1

2

[3, 4, 5, 6]

B

1

2

(3, 4, 5, 6)

C

1,2,3,4,5,6

D

1

2

3, 4, 5, 6

正确答案: B

53函数表达式 all([1,True,True]) 的结果是:

A 出错

B 无输出

C False

D True

正确答案: D

54以下关于 Python 函数对变量的作用,错误的是

A 简单数据类型变量仅在函数内部创建和使用,函数退出后变量被释放

B 对于组合数据类型的全局变量,如果在函数内部没有被真实创建的同名变量,则函数内部不可以直接使用并修改全局变量的值

C 简单数据类型在函数内部用global保留字声明后,函数退出后该变量保留

D 全局变量指在函数之外定义的变量,在程序执行全过程有效

正确答案: B

55关于函数的描述,错误的是.

A 使用函数主要有两个目的:降低编程难度和增加代码复用。

B 函数定义后,可以直接运行,不需要经过调用

C 函数是一段具有特定功能的、可重用的语句组。

D 函数包括两个部分:函数的定义和函数的使用

正确答案: B

56关于函数的参数传递,描述错误的是

A 函数调用时,默认采用按照位置顺序的方式传递给函数。

B 函数调用时,也支持按照参数名称方式传递参数,不需要保持参数传递的顺序,参数之间的顺序可以任意调整,只需要对每个必要参数赋予实际值即可。

C 函数定义时,可选参数可以放在非可选参数前面。

D 函数的参数在定义时可以指定默认值,当函数被调研时,如果没有传入对应的参数值,则使用函数定义时的默认值代替。

正确答案: C

57以下程序的输出结果是

n = 2

def multiply(x,y = 10):

global n

return x*y*n

s = multiply(99,2)

print(s)

A 1980

B 3960

C 198

D 396

正确答案: D

58以下程序的输出结果是

d ef func(num):

num *= 2

m = 1000

print(func(m))

A 出错

B None

C Null

D 1000000

正确答案: B

59关于下面代码的描述,错误的选项是

a = [1,2,3]

a = "Runoob"

A

修改代码为:

a = [1,2,3]

print(id(a))

a = "Runoob"

print(id(a))

执行时,输出2行的内容相同。

B 以上代码中,[1,2,3] 是 List 类型,”Runoob” 是 Str 类型。

C 变量 a 是没有类型,它仅仅是一个对象的引用(一个指针),可以是指向 List 类型对象,也可以是指向 Str 类型对象。

D 在 Python 中,类型属于对象,变量是没有类型的。

正确答案: A

60以下代码执行的输出结果是n = 2

def multiply(x,y = 10):

global n

return x * y * n

s = multiply(10,2)

print(s)

A 1024

B 400

C 200

D 40

正确答案: D

linux Select函数用法详解

Socket-Select Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如 connect、accept、recv或recvfrom 这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。 可是使用Select就可以完成非阻塞(所谓非阻塞方式non-block,就是进程或线程执行此函数时不必非要等待事件的发生,一旦执行肯定返回,以返回值的不同来反映函数的执行情况,如果事件发生则与阻塞方式相同,若事件没有发生则返回一个代码来告知事件未发生,而进程或线程继续执行,所以效率较高)方式工作的程序,它能够监视我们需要监视的文件描述符的变化情况——读写或是异常。下面详细介绍一下。 Select的函数格式: int select(int maxfdp,fd_set *readfds,fd_set *writefds,fd_set *errorfds,struct timeval *timeout); 先说明两个结构体: 第一,struct fd_set可以理解为一个集合,这个集合中存放的是文件描述符(file descriptor),即文件句柄,这可以是我们所说的普通意义的文件,当然Unix下任何设备、管道、FIFO等都是文件形式,全部包括在内,所以毫无疑问一个socket就是一个文件,socket句柄就是一个文件描述符。fd_set集合可以通过一些宏由人为来操作,比如清空集合 FD_ZERO(fd_set *),将一个给定的文件描述符加入集合之中FD_SET(int ,fd_set *),将一个给定的文件描述符从集合中删除FD_CLR(int ,fd_set*),检查集合中指定的文件描述符是否可以读写FD_ISSET(int ,fd_set* )。一会儿举例说明。 第二,struct timeval是一个大家常用的结构,用来代表时间值,有两个成员,一个是秒数,另一个是毫秒数。 具体解释select的参数: int maxfdp是一个整数值,是指集合中所有文件描述符的范围,即所有文件描述符的最大值加1,不能错!在Windows中这个参数的值无所谓,可以设置不正确。 fd_set *readfds是指向fd_set结构的指针,这个集合中应该包括文件描述符,我们是要监视这些文件描述符的读变化的,即我们关心是否可以从这些文件中读取数据了,如果这个集合中有一个文件可读,select就会返回一个大于0的值,表示有文件可读,如果没有可读的文件,则根据timeout参数再判断是否

select用法

SELECT命令在全国计算机等级考试二级VFP考试中所占的比重可以说非常大,在笔试考试中可以占8-12分,上机考试中占20-50分,所以我将SELECT命令做如下说明,请大家认真学习. SELECT各短语功能: SELECT 说明查询结果,可以用*来表示所有字段,也可以直接写所要查询的字段名,多个字段名也要用英文的逗号隔开,在分组或计算查询中还可以使用如SUM(),COUNT(),A VG(),MAX(),MIN()这些函数进行运算,还可以在排序后用TOP短语来取查询结果的前几条记录,用AS短语对结果字段重新命名; FROM 说明查询的数据源,一般写表名,多个表名用英文的逗号隔开,也可以对所用到的表进行重新命名(如学生st 将学生表重新命名成st表); WHERE 说明查询条件,一般写条件表达式也就是逻辑表达式; GROUP BY说明分组字段此短语后可跟写HA VING短语用来说明分组后的条件; ORDER BY说明排序字段,可以用ASC(升序)和DESC(降序)来说明排序方式; INTO 说明查询去各,可以用TABLE或DBF(表)、CURSOR(临时表)、ARRAY(数组)三短语中一个来说明查询去向的类型。 考点1 简单查询 1简单查询 简单查询是由SELECT和FROM短语构成的无条件查询,或由SELECT,FROM和WHERE短语构成的条件查询。 2简单的连接查询 连接是关系的基本操作之一,连接查询是一种基于多个关系的查询。 3嵌套查询 嵌套查询所要求的结果出自一个关系,但关系的条件却涉及多个关系。其内层基本上也是一个SELECT-FROM-WHERE查询语句。这种简单嵌套查询,可使用谓词IN或NOT IN 来判断在外层的查询条件中是否包含内层查询的结果。 考点2 特殊运算符号 1 BETWEEN…AND… 含义:该查询的条件是在……范围之内,相当于用AND连接的一个逻辑表达式。 2 LIKE 含义:它是一个字符串匹配运算符,与之搭配使用的通配符包括“*”和“?”。 考点3 排序 使用SQL SELECT可以将查询结果进行排序,排序的短语是ORDER BY。 格式:ORDER BY Order_Item[ASCIDESC][,Order_Item[ASC|DESC]…] 说明:可以按升序(ASC)或降序(DESC)排序,允许按一列或多列排序。 考点4 计算查询 1简单的计算查询 SQL不仅具有一般的检索能力,而且还有计算方式的检索,用于计算检索的函数有:COUNT(计数)、SUM(求和)、A VG(计算平均值)、MAX(求最大值)及MIN(求最小值)。 2分组与计算查询 在SQL SELECT中可以利用GROUP BY子句进行分组计算查询。 格式:GROUP BY GroupColumn[,GroupColumn…][HA VING FilterCondition] 说明:可以按一列或多列分组,还可以用HA VING子句进一步限定分组的条件。它必须跟在GROUP BY子句之后,不可单独使用,与WHERE子句并不矛盾。 考点5 别名和自连接查询

程序代码注释编写规范

百度文库- 让每个人平等地提升自我 1 程序代码注释编写规范 为提高控制程序的阅读性与可理解性,现制定相关代码程序代码注释编写的编写规范。 一般情况下,源程序有效注释量必须在20%以上,注释的原则是有助于对程序的阅读理解,在该加的地方都加了,注释不宜太多也不能太少,注释语言必须准确、易懂、简洁。 常规注释有以下两种方式。 单行:以"文件、.inc文件、.def文件、编译说明文件.cfg等)头部应进行注释,注释必须列出:版权说明、版本号、生成日期、作者、内容、功能、与其它文件的关系、修改日志等,头文件的注释中还应有函数功能简要说明。 示例:下面这段头文件的头注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。 /************************************************* (C), MicTiVo International. Co., Ltd. 1.File : . History: Date: Author: Modification: 2. .. *************************************************/ 一、源文件头 源文件头部应进行注释,列出:版权说明、版本号、生成日期、作者、模块目的/功能、主要函数及其功能、修改日志等。 示例:下面这段源文件的头注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。 /************************************************************ (C), MicTiVo International. Co., Ltd. FileName: Author: Version : Date: : / /*receive _process() */ 意:与溢出中断写初值不同}

通达信函数大全使用说明

软件简介: 通达信全部函数及其用法(2011年最新版) (一)行情函数 1)HIGH(H)最高价返回该周期最高价.2)LOW(L)最低价返回该周期最低价.3)CLOSE(C)收盘价返回该周期收盘价.4)VOL(V)成交量(手)返回该周期成交量.5)OPEN (O)开盘价返回该周期开盘价.6)ADVANCE 上涨家数返回该周期上涨家数. (本函数仅对大盘有效)7)DECLINE 下跌家数返回该周期下跌家数. (本函数仅对大盘有效)8)AMOUNT 成交额(元)返回该周期成交额.9)VOLINSTK 持仓量返回期货该周期持仓量.10)QHJSJ 期货结算价返回期货该周期结算价. 11)BUYVOL 外盘(手)返回外盘,即时行情数据 12)SELVOL 外盘(手)返回外盘 13)ISBUYORDER 主动性买单返回当前成交是否为主动性买单.用法: ISBUYORDER,当本笔成交为主动性买盘时,返回1,否则为0 14)DHIGH 不定周期最高价返回该不定周期最高价.15)DOPEN 不定周期开盘价返回该不定周期开盘价.16) DLOW 不定周期最低价返回该不定周期最低价.17)DCLOSE 不定周期收盘价返回该不定周期收盘价.18) DVOL 不定周期成交量价返回该不定周期成交量价.19)NAMELIKE 模糊股票名称返回股票名称是否以参数开头.

用法: if(NAMELIKE('ST'),x,y); 20)CODELIKE 模糊股票代码返回股票代码是否以参数开头. 用法: if(CODELIKE('600'),x,y); 21)INBLOCK 属于某板块返回股票是否属于某板块. 用法: if(INBLOCK('沪深300'),x,y); (二)时间函数 1)PERIOD 周期取得周期类型. 结果从0到11,依次分别是1/5/15/30/60分钟,日/周/月,多分钟,多日,季,年. 2)DATE 日期取得该周期从1900以来的的年月日. 用法: DATE 例如函数返回1000101,表示2000年1月1 日,DATE+19000000后才是真正的日期值 3)TIME 时间取得该周期的时分秒.用法: TIME 函数返回有效值范围为(000000-235959) 4)YEAR 年份取得该周期的年份.5)MONTH 月份取得该周期的月份.用法: 函数返回有效值范围为(1-12) 6)WEEKDAY 星期取得该周期的星期数.用法: WEEKDAY 函数返回有效值范围为(1-7) 7)DAY 日取得该周期的日期.用法: DAY 函数返回有效值范围为(1-31) 8)HOUR 小时取得该周期的小时数.用法: HOUR 函数返回有效值范围为(0-23),对于日线及更长的分析周期值为0

编码规范考试题答案

一、单选题 1. 如下关于集合类的描述错误的是B A. 含有集合意义的属性命名,尽量包含其复数的意义 B. 集合中的数据不需要释放,垃圾回收器会自动回收 C. 集合必须指定模板类型 D. 使用集合类时要设置初始化容量 2. 关于线程以下说法错误的有B A. 新起一个线程,都要使用(“…”)设置线程名 B. 在或更新的版本中,若字符串拼接发生在单线程环境,使用StringBuffer C. 对多线程访问的变量、方法,必须加锁保护,避免出现多线程并发访问引起的问题 D. 线程使用时,要在代码框架中使用线程池,避免创建不可复用的线程;禁止在循环中创建新线程,否则会引起JVM资源耗尽 3. 下面哪个是推荐使用的对称密码算法B A. DES B. AES C. SHA D. RSA 4. 以下说法正确的有C A. 程序中的一些状态多直接用数字表示,如函数执行成功return 1 B. 对于表示函数执行错误,多用约定的错误码来标识 C. 用有意义的静态变量或者枚举来代替数字型的程序状态,如函数执行成功return SUCCESS D. 程序中的魔鬼数字并不可怕,需要所有开发人员努力理解这些数字的含义 5. 下列错误使用异常的做法是D A. 在程序中使用异常处理还是使用错误返回码处理,根据是否有利于程序结构来确定,并且异常和错误码不应该混合使用,推荐使用异常 B. 一个方法不应抛出太多类型的异常。throws/exception子句标明的异常最好不要超过三个 C. 异常捕获尽量不要直接 catch (Exception ex),应该把异常细分处理 D. 程序内抛出的异常本身就可说明异常的类型、抛出条件,可不填写详细的描述信息。捕

C++中所有函数的使用说明

C++函数大全 2010-04-10 10:11 数学函数,所在函数库为math.h、stdlib.h、string.h、float.h int abs(int i) 返回整型参数i的绝对值 double cabs(struct complex znum) 返回复数znum的绝对值 double fabs(double x) 返回双精度参数x的绝对值 long labs(long n) 返回长整型参数n的绝对值 double exp(double x) 返回指数函数ex的值 double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中 double ldexp(double value,int exp); 返回value*2exp的值 double log(double x) 返回logex的值 double log10(double x) 返回log10x的值 double pow(double x,double y) 返回xy的值 double pow10(int p) 返回10p的值 double sqrt(double x) 返回+√x的值 double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度 double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度 double atan(double x) 返回x的反正切tan-1(x)值,x为弧度 double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度 double cos(double x) 返回x的余弦cos(x)值,x为弧度 double sin(double x) 返回x的正弦sin(x)值,x为弧度 double tan(double x) 返回x的正切tan(x)值,x为弧度 double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度 double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度 double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度 double hypot(double x,double y) 返回直角三角形斜边的长度(z), x和y为直角边的长度,z2=x2+y2 double ceil(double x) 返回不小于x的最小整数 double floor(double x) 返回不大于x的最大整数 void srand(unsigned seed) 初始化随机数发生器 int rand() 产生一个随机数并返回这个数 double poly(double x,int n,double c[])从参数产生一个多项式 double modf(double value,double *iptr)将双精度数value分解成尾数和阶double fmod(double x,double y) 返回x/y的余数 double frexp(double value,int *eptr) 将双精度数value分成尾数和阶double atof(char *nptr) 将字符串nptr转换成浮点数并返回这个浮点数double atoi(char *nptr) 将字符串nptr转换成整数并返回这个整数 double atol(char *nptr) 将字符串nptr转换成长整数并返回这个整数 char *ecvt(double value,int ndigit,int *decpt,int *sign) 将浮点数value转换成字符串并返回该字符串 char *fcvt(double value,int ndigit,int *decpt,int *sign) 将浮点数value转换成字符串并返回该字符串

整理的SQL常用函数

create table test (id int, value varchar(10)) insertinto test values('1','aa') insertinto test values('1','bb') insertinto test values('2','aaa') insertinto test values('2','bbb') insertinto test values('2','ccc') insertinto test values('3','aa') insertinto test values('4','bb') select*from test select id, [values] =stuff((select','+ [values] from test t where id = test.id forxmlpath('')), 1 , 1 ,'') from test groupby id stuff(param1,startIndex,length, param2) 说明:将param1中自startIndex(SQL中都是从1开始,而非0)起,删除length个字符,然后用param2替换删掉的字符。*/

COUNT()函数用于返回一个列内所有非空值的个数,这是一个整型值。 由于COUNT(*)函数会忽略NULL值,所以这个查询的结果是2。 三、SUM()函数 SUM()函数是最常用的聚合函数之一,它的功能很容易理解:和AVG()函数一样,它用于数值数据类型,返回一个列范围内所有非空值的总和。 四、CAST()函数 CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型。 以下例子用于将文本字符串'123'转换为整型: SELECT CAST('123' AS int) 返回值是整型值123。 如果试图将一个代表小数的字符串转换为整型值,又会出现什么情况呢? SELECT CAST('123.4' AS int) CAST()函数和CONVERT()函数都不能执行四舍五入或截断操作。由于123.4不能用int数据类型来表示,所以对这个函数调用将产生一个错误。 Server: Msg 245, Level 16, State 1, Line 1 Syntax error converting the varchar value '123.4' to a column of data type int. 在将varchar值'123.4' 转换成数据类型int时失败。 要返回一个合法的数值,就必须使用能处理这个值的数据类型。对于这个例子,存在多个可用的数据类型。如果通过CAST()函数将这个值转换为decimal类型,需要首先定义decimal 值的精度与小数位数。在本例中,精度与小数位数分别为9与2。精度是总的数字位数,包括小数点左边和右边位数的总和。而小数位数是小数点右边的位数。这表示本例能够支持的最大的整数值是9999999,而最小的小数是0.01。 SELECT CAST('123.4' AS decimal(9,2)) decimal数据类型在结果网格中将显示有效小数位:123.40 精度和小数位数的默认值分别是18与0。如果在decimal类型中不提供这两个值,SQL Server 将截断数字的小数部分,而不会产生错误。 SELECT CAST('123.4' AS decimal) 结果是一个整数值:123 五、CONVERT()函数 对于简单类型转换,CONVERT()函数和CAST()函数的功能相同,只是语法不同。 CAST()函数一般更容易使用,其功能也更简单。 CONVERT()函数的优点是可以格式化日期和数值,它需要两个参数:第1个是目标数据类型,第2个是源数据。 CONVERT()函数还具有一些改进的功能,它可以返回经过格式化的字符串值,且可以把日期值格式化成很多形式。有28种预定义的符合各种国际和特殊要求的日期与时间输出格式。 六、STR()函数 这是一个将数字转换为字符串的快捷函数。这个函数有3个参数:数值、总长度和小数位数。如果数字的整数位数和小数位数(要加上小数点占用的一个字符)的总和小于总长度,对结果中左边的字符将用空格填充。在下面第1个例子中,包括小数点在内一共是5个字符。结果

Linux下select函数的使用

select系统调用是用来让我们的程序监视多个文件句柄的状态变化的。程序会停在select这里等待,直到被监视的文件句柄有一个或多个发生了状态改变。关于文件句柄,其实就是一个整数,我们最熟悉的句柄是0、1、2三个,0是 标准输入,1是标准输出,2是标准错误输出。0、1、2是整数表示的,对应的FILE *结构的表示就是stdin、stdout、stderr。 int select(int n,fd_set * readfds,fd_set * writefds,fd_set * exceptfds,struct timeval * timeout); 参数n代表文件描述词加1; 参数readfds、writefds 和exceptfds 称为描述词组,是用来回传该描述词的读,写或例外的状况。 下面的宏提供了处理这三种描述词组的方式: FD_CLR(inr fd,fd_set* set);用来清除描述词组set中相关fd 的位 FD_ISSET(int fd,fd_set *set);用来测试描述词组set中相关fd 的位是否 为真 FD_SET(int fd,fd_set*set);用来设置描述词组set中相关fd的位 FD_ZERO(fd_set *set);用来清除描述词组set的全部位 参数timeout为结构timeval,用来设置select()的等待时间,其结构定义如下: struct timeval { time_t tv_sec; time_t tv_usec; }; (1)如果参数timeout设为NULL,则表示select()一直阻塞,直到有句柄状态变化 (2)如果timeout值为0,则select不阻塞直接返回 (3)如果timeout为某个特定值,则在特定时间内阻塞直到有句柄状态变化,如果这个世间内所有句柄状态都无变化,则超时返回0 select函数执行结果:执行成功则返回文件描述词状态已改变的个数,如果返回0代表在描述词状态改变前已超过timeout时间,没有返回;当有错误发生时则返回-1,错误原因存于errno,此时参数readfds,writefds,exceptfds

国家标准代号

国家标准代号 序号代号含义管理部门 1 GB 中华人民共和国强制性国家标准国家标准化管理委员会 2 GB/T 中华人民共和国推荐性国家标准国家标准化管理委员会 3 GB/Z 中华人民共和国国家标准化指导性技术文件国家标准化管理委员会 行业标准代号 序号代号含义主管部门 1 BB 包装中国包装工业总公司包改办 2 CB 船舶国防科工委中国船舶工业集团公司、中国船舶重工集团公司(船舶) 3 CH 测绘国家测绘局国土测绘司 4 CJ 城镇建设建设部标准定额司(城镇建设) 5 CY 新闻出版国家新闻出版总署印刷业管理司 6 DA 档案国家档案局政法司 7 DB 地震国家地震局震害防预司 8 DL 电力中国电力企业联合会标准化中心 9 DZ 地质矿产国土资源部国际合作与科技司(地质) 10 EJ 核工业国防科工委中国核工业总公司(核工业) 11 FZ 纺织中国纺织工业协会科技发展中心 12 GA 公共安全公安部科技司 13 GY 广播电影电视国家广播电影电视总局科技司 14 HB 航空国防科工委中国航空工业总公司(航空)

16 HJ 环境保护国家环境保护总局科技标准司 17 HS 海关海关总署政法司 18 HY 海洋国家海洋局海洋环境保护司 19 JB 机械中国机械工业联合会 20 JC 建材中国建筑材料工业协会质量部 21 JG 建筑工业建设部(建筑工业) 22 JR 金融中国人民银行科技与支付司 23 JT 交通交通部科教司 24 JY 教育教育部基础教育司(教育) 25 LB 旅游国家旅游局质量规范与管理司 26 LD 劳动和劳动安全劳动和社会保障部劳动工资司(工资定额) 27 LY 林业国家林业局科技司 28 MH 民用航空中国民航管理局规划科技司 29 MT 煤炭中国煤炭工业协会 30 MZ 民政民政部人事教育司 31 NY 农业农业部市场与经济信息司(农业) 32 QB 轻工中国轻工业联合会 33 QC 汽车中国汽车工业协会 34 QJ 航天国防科工委中国航天工业总公司(航天) 35 QX 气象中国气象局检测网络司 36 SB 商业中国商业联合会行业发展部 37 SC 水产农业部(水产)

常用C语言图形函数使用说明

常用C语言图形函数使用说明 (以下函数均应在图形方式初始之后使用,在win-tc中使用BGI图形程序模板时,其中已经定义有一个initgr函数,在main函数中应在执行initgr函数之后再使用这些函数。使用这些函数时,均应在程序中包含头文件graphics.h,即程序开始时应有#include "graphics.h") 1、setcolor(色彩值):设置绘图色彩,使用该函数后,图形函数所绘制的直线或曲线为该函数中指定的色彩。例如: setcolor(YELLOW); circle(320,240,100); 在屏幕中央以黄色绘制半径为100的圆。(关于画图色彩使用的说明) 2、setbkcolor(色彩值):设置图形屏幕的背景色彩,使用该函数后图形屏幕清屏,背景色彩为该函数中所指定的色彩。如果没有使用该函数设置背景色,则图形屏幕的背景色彩为黑色。 3、cleardevice():清除图形屏幕上已经绘制的内容,该函数没有参数。 4、line(x1,y1,x2,y2): 绘制直线段,其中(x1,y1)为一个端点的坐标,(x2,y2)为另一个端点的坐标。直线的色彩为在使用该函数之前通过setcolor函数所设置的色彩。例如: setcolor(WHITE); line(0,240,639,240);绘制一条横贯屏幕中间的白色水平直线。 5、circle(x,y,r):绘制一个以(x,y)为圆心坐标,半径为r的圆。例如: setcolor(WHITE); circle(320,240,100);绘制一个以(320,240)为圆心位置,半径为100 的圆。 6、rectangle(x1,y1,x2,y2):绘制一个以(x1,y1)和(x2,y2)为对角端点坐标的矩形 7、putpixel(x,y,color):在(x,y)坐标位置处绘制一个点,点的色彩由color 指定。例如: putpixel(320,240,RED);在屏幕中央绘制一个红色的点。

[MSSQL] - SELECT语句使用大全

SELECT语句使用大全 虽然 SELECT 语句的完整语法比较复杂,但是大多数 SELECT 语句都描述结果集的四个主要属性 1、结果集中的列的数量和属性。 2、从中检索结果集数据的表,以及这些表之间的所有逻辑关系。 3、为了符合 SELECT 语句的要求,源表中的行所必须达到的条件。不符合条件的行会被忽略。 4、结果集的行的排列顺序。 它的主要子句可归纳如下: SELECT select_list --描述结果集的列 INTO new_table_name --指定使用结果集来创建新表 FROM table_list --包含从中检索到结果集数据的表的列表[返回结果集的对象]。 [ WHERE search_conditions ] --WHERE 子句是一个筛选,它定义了源表中的行要满足 SELECT 语句的要求所必须达到的条件 [ GROUP BY group_by_list ] --根据 group_by_list 列中的值将结果集分成组[ HAVING search_conditions ] --结果集的附加筛选 [ ORDER BY order_list [ ASC | DESC ] ] --结果集的附加筛选 一、使用选择列表 1、使用 *号来选择所有列;使用“[表名|别名]。[字段]”选取特定的列。 2、AS 子句可用来更改结果集列的名称或为派生列分配名称,也可以使用空格代替 如: SELECT Name AS Name1,Name Name2 FROM Product ORDER BY Name ASC 3、使用 DISTINCT 消除重复项 如:select distinct [Year] from A 4、使用 TOP 和 PERCENT 限制结果集数量 TOP ( expression ) [ PERCENT ] [ WITH TIES ] --expression 数量、PERCENT按百分比返回数据、WITH TIES返回排序与最后一行并列的行。 如:获取成绩前三名的同学 select top 3 * from Score order by Num desc --不考虑成绩并列 select top 3 WITH TIES * from Score order by Num desc --可解决成绩并列的问题 5、选择列表中的计算值 选择的列不但可以包括数据表列,还可以包括计算值,这些结果集列被称为派生列。 计算并且包括以下运算: 对数值列或常量使用算术运算符或函数进行的计算和运算。如SUM(),

程序的书写规则(程序的编码规范)

程序的书写规则(程序的编码规范) 随着软件产品的功能增加和版本的提高,代码越来越复杂,源文件也越来越多,对于软件开发人员来说,除了保证程序运行的正确性和提高代码的运行效率之外,规范风格的编码会对软件的升级、修改、维护带来极大的方便性,也保证程序员不会陷入“代码泥潭”中无法自拔。开发一个成熟的软件产品,除了有详细丰富的开发文档之外,必须在编写代码的时候就有条不紊,细致严谨。 以下的编码规范包含了程序排版、注释、命名、可读性、变量、程序效率、质量保证、代码编译、代码测试和版本控制等注意事项。 一、排版: 1.关键词和操作符之间加适当的空格。 2.相对独立的程序块与块之间加空行 3.较长的语句、表达式等要分成多行书写。 4.划分出的新行要进行适应的缩进,使排版整齐,语句可读。 5.长表达式要在低优先级操作符处划分新行,操作符放在新行之首。 6.循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分。 7.若函数或过程中的参数较长,则要进行适当的划分。 8.不允许把多个短语句写在一行中,即一行只写一条语句。 9.函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风 格。 10.C/C 语言是用大括号‘{’和‘}’界定一段程序块的,编写程序块时‘{’和 ‘}’应各独占一行并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚举的定义以及if、for、do、while、switch、case语句中的程序都要采用如上的缩进方式。

二、注释 1.注释要简单明了。 2.边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。 3.在必要的地方注释,注释量要适中。注释的内容要清楚、明了,含义准确,防 止注释二义性。保持注释与其描述的代码相邻,即注释的就近原则。 4.对代码的注释应放在其上方相邻位置,不可放在下面。 5.对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域 的注释应放在此域的右方;同一结构中不同域的注释要对齐。 6.变量、常量的注释应放在其上方相邻位置或右方。 7.全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程存取 它以及存取时注意事项等的说明。 8.在每个源文件的头部要有必要的注释信息,包括:文件名;版本号;作者;生 成日期;模块功能描述(如功能、主要算法、内部各部分之间的关系、该文件与其它文件关系等);主要函数或过程清单及本文件历史修改记录等。 9.在每个函数或过程的前面要有必要的注释信息,包括:函数或过程名称;功能 描述;输入、输出及返回值说明;调用关系及被调用关系说明等。 三、命名 1.较短的单词可通过去掉“元音”形成缩写; 2.较长的单词可取单词的头几发符的优先级,并用括号明确表达式的操作顺序, 避免使用默认优先级。 3.使用匈牙利表示法 四、可读性 1.避免使用不易理解的数字,用有意义的标识来替代。 2.不要使用难懂的技巧性很高的语句。

数据库实验五六七八 select语句的使用

实验五select语句的使用(二) 一、实验目的 掌握select语句的嵌套使用方法,能使用sql server对表作复杂查询。 二、实验准备 复习SELECT语句的较高级格式的使用。 了解库函数在分组查询中的使用规则。 三、实验内容 1、找出与李勇在同一个班级的学生信息; 2、找出所有与学生李勇有相同选修课程的学生信息; 3、找出年龄介于学生李勇和25岁之间的学生信息; 4、找出选修了课程操作系统的学生学号和姓名; 5、找出选修了全部课程的学生姓名。(提示:可找出这样的学生,没有一门课程 是他不选修的)。 6、查询选修了3号课程的学生学号及其成绩,并按成绩的降序排列; 7、查询全体学生信息,要求查询结果按班级号升序排列,同一班级学生按年龄 降序排列; 8、求每个课程号及相应的选课人数; 9、查询选修了3门以上课程的学生学号。

实验六视图操作 一、实验目的 建立视图:只读、检查、行列、连接、计算、分组视图。 查询视图:查询所建视图 更新视图:更新所建视图 删除视图:删除所建视图 二、实验内容 1、建立01312班选修了1号课程的学生视图Stu_01312_1; 2、建立01312班选修了1号课程并且成绩不及格的学生视图Stu_01312_1; 3、建立视图Stu_year,由学生学号、姓名、出生年份组成; 4、查询1983年以后出生的学生姓名; 5、查询01312班选修了1号课程并且成绩不及格的学生的学号、姓名、出生年 份。

实验七完整性约束的实现 一、实验目的 掌握SQL中实现数据完整性的方法,加深理解关系数据模型的三类完整性约束。 了解SQL Server中实体完整性、参照完整性和用户自定义完整性的实现手段。 二|、实验内容 表(一)Student 表(二)course 表(三)class

通用编码规范

通用编码规范 1.引言 本规范编制是为了指导程序员编码,其目的是: 1)改善软件的可读性,使程序员尽快而彻底地理解新的代码; 2)防止新接触本语言的人出于节省时间的需要,自创与组织成员不相容的一套风格; 3)防止新接触本语言的人一次次的犯同样的错误; 4)新加入的程序员可以很快的适应环境; 5)在一致的环境下,减少程序员犯错的机会。 2.编排风格约定 编排风格应遵循下列规定: 1)严格采用阶梯层次组织程序代码:各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格。功能块、语句块的边界大括号一律独占一行,相匹配的大括号在同一列,对继行则要求再缩进4格; 2)对变量的定义,尽量位于函数的开始位置; 3)函数名之后不要留空格,紧跟左括号‘(’,以与关键字区别; 4)‘(’向后紧跟,‘)’、‘,’、‘;’向前紧跟,紧跟处不留空格; 5)‘,’之后要留空格,如Function(x, y, z)。如果‘;’不是一行的结束符号,其后要留空格,如for (initialization; condition; update); 6)赋值操作符、比较操作符、算术操作符、逻辑操作符、位域操作符,如“=”、“+=”“>=”、“<=”、“+”、“*”、“%”、“&&”、“||”、“<<”,“^” 等二元操作符的前后应当加空格;但是,对于表达式比较长的for语句和if语句,为了紧凑起见可以适当地去掉一些空格,如for (i=0; i<10; i++)和if ((a<=b) && (c<=d)); 7)一元操作符如“!”、“~”、“++”、“--”、“&”(地址运算符)等前后不加空格。“[]”、“.”、“->”等操作符前后不加空格; 8)修饰符*和&紧靠变量名。 9)各个大的功能块之间最好留一空行以及适当的注释; 10) if、for、do、while、switch、case、default等语句自占一行,且if、for、do、while 等语句的执行语句部分无论多少都要加括号{ },对“return语句” 不要求; 11)不允许把多个短语句写在一行中,即一行只写一条语句; 12)长表达式要在低优先级操作符处拆分成新行,操作符放在新行之首(以便突出操作符),拆分出的新行要进行适当的缩进,使排版整齐,语句可读; 13)对于switch…case…语句,break语句要放在{ }内。 3.界面设计约定 界面设计应遵循下列约定:

excel函数代码

excel公式应用大全 1、ABS函数函数名称:ABS 主要功能:求出相应数字的绝对值。使用格式:ABS(number) 参数说明:number代表需要求绝对值的数值或引用的单元格。 应用举例:如果在B2单元格中输入公式:=ABS(A2),则在A2单元格中无论输入正数(如100)还是负数(如-100),B2中均显示出正数(如100)。 特别提醒:如果number参数不是数值,而是一些字符(如A等),则B2中返回错误值“#VALUE!”。 2、AND函数函数名称:AND 主要功能:返回逻辑值:如果所有参数值均为逻辑“真(TRUE)”,则返回逻辑“真(TRUE)”,反之返回逻辑“假(FALSE)”。 使用格式:AND(logical1,logical2, ...) 参数说明:Logical1,Logical2,Logical3……:表示待测试的条件值或表达式,最多这30个。 应用举例:在C5单元格输入公式:=AND(A5>=60,B5>=60),确认。如果C5中返回TRUE,说明A5和B5中的数值笥诘扔?0,如果返回FALSE,说明A5和B5中的数值至少有一个小于60。 特别提醒:如果指定的逻辑条件参数中包含非逻辑值时,则函数返回错误值“#VALUE!”或“#NAME”。 3、AVERAGE函数函数名称:AVERAGE 主要功能:求出所有参数的算术平均值。 使用格式:AVERAGE(number1,number2,……) 参数说明:number1,number2,……:需要求平均值的数值或引用单元格(区域),参数不超过30个。 应用举例:在B8单元格中输入公式:=AVERAGE(B7:D7,F7:H7,7,8),确认后,即可求出B7至D7区域、F7至H7区域中的数值和7、8的平均值。 特别提醒:如果引用区域中包含“0”值单元格,则计算在内;如果引用区域中包含空白或字符单元格,则不计算在内。 4、COLUMN 函数 函数名称:COLUMN 主要功能:显示所引用单元格的列标号值。 使用格式:COLUMN(reference) 参数说明:reference为引用的单元格。 应用举例:在C11单元格中输入公式:=COLUMN(B11),确认后显示为2(即B列)。 特别提醒:如果在B11单元格中输入公式:=COLUMN(),也显示出2;与之相对应的还有一个返回行标号值的函数——ROW(reference)。 5、CONCATENATE函数 函数名称:CONCATENATE 主要功能:将多个字符文本或单元格中的数据连接在一起,显示在一个单元格中。 使用格式:CONCATENATE(Text1,Text……) 参数说明:Text1、Text2……为需要连接的字符文本或引用的单元格。 应用举例:在C14单元格中输入公式:=CONCATENATE(A14,"@",B14,".com"),确认后,即可将A14单元格中字符、@、B14单元格中的字符和.com连接成一个整体,显示在C14单元格中。 特别提醒:如果参数不是引用的单元格,且为文本格式的,请给参数加上英文状态下的双引号,如果将上述公式改为: =A14&"@"&B14&".com",也能达到相同的目的。 6、COUNTIF函数 函数名称:COUNTIF 主要功能:统计某个单元格区域中符合指定条件的单元格数目。 使用格式:COUNTIF(Range,Criteria) 参数说明:Range代表要统计的单元格区域;Criteria表示指定的条件表达式。 应用举例:在C17单元格中输入公式:=COUNTIF(B1:B13,">=80"),确认后,即可统计出B1至B13单元格区域中,数值大于等于80的单元格数目。 特别提醒:允许引用的单元格区域中有空白单元格出现 7、DATE函数 函数名称:DATE 主要功能:给出指定数值的日期。 使用格式:DATE(year,month,day) 参数说明:year为指定的年份数值(小于9999);month为指定的月份数值(可以大于12);day为指定的天数。 应用举例:在C20单元格中输入公式:=DATE(2003,13,35),确认后,显示出2004-2-4。 特别提醒:由于上述公式中,月份为13,多了一个月,顺延至2004年1月;天数为35,比2004年1月的实际天数又多了4天,故又顺延至2004年2月4日。 上页我们介绍了ABS、AND、AVERAGE、COLUMN 、CONCATENATE、COUNTIF 、DATE 这七个常用函数,今天我们继续介绍下面的七个常用函数: DATEDIF函数:计算返回两个日期参数的差值。 DAY函数:计算参数中指定日期或引用单元格中的日期天数。 DCOUNT函数:返回数据库或列表的列中满足指定条件并且包含数字的单元格数目。 FREQUENCY函数:以一列垂直数组返回某个区域中数据的频率分布。 IF函数:根据对指定条件的逻辑判断的真假结果,返回相对应条件触发的计算结果。 INDEX函数:返回列表或数组中的元素值,此元素由行序号和列序号的索引值进行确定。 INT函数:将数值向下取整为最接近的整数。 8、DATEDIF函数 函数名称:DATEDIF 主要功能:计算返回两个日期参数的差值。

select()函数以及FD_ZERO、FD_SET、FD_CLR、FD_ISSET

select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型,原型: #include sys/time.h> #include unistd.h> int select(int maxfd,fd_set *rdset,fd_set *wrset,fd_set *exset,struct timeval *timeout); 参数maxfd是需要监视的最大的文件描述符值+1;rdset,wrset,exset分别对应于需要检测的可读文件描述符的集合,可写文件描述符的集合及异常文件描述符的集合。struct timeval结构用于描述一段时间长度,如果在这个时间内,需要监视的描述符没有事件发生则函数返回,返回值为0。 fd_set(它比较重要所以先介绍一下)是一组文件描述字(fd)的集合,它用一位来表示一个fd(下面会仔细介绍),对于fd_set类型通过下面四个宏来操作: FD_ZERO(fd_set *fdset);将指定的文件描述符集清空,在对文件描述符集合进行设置前,必须对其进行初始化,如果不清空,由于在系统分配内存空间后,通常并不作清空处理,所以结果是不可知的。 FD_SET(fd_set *fdset);用于在文件描述符集合中增加一个新的文件描述符。 FD_CLR(fd_set *fdset);用于在文件描述符集合中删除一个文件描述符。 FD_ISSET(int fd,fd_set *fdset);用于测试指定的文件描述符是否在该集合中。 过去,一个fd_set通常只能包含<32的fd(文件描述字),因为fd_set其实只用了一个32位矢量来表示fd;现在,UNIX系统通常会在头文件中定义常量FD_SETSIZE,它是数据类型fd_set的描述字数量,其值通常是1024,这样就能表示<1024的fd。根据fd_set的位矢量实现,我们可以重新理解操作fd_set的四个宏: fd_set set; FD_ZERO(&set); FD_SET(0, &set); FD_CLR(4, &set); FD_ISSET(5, &set); ――――――――――――――――――――――――――――――――――――――― 注意fd的最大值必须

相关文档