数学建模社区-数学中国

标题: 函数大全(l开头) [打印本页]

作者: 韩冰    时间: 2004-10-4 02:58
标题: 函数大全(l开头)
<><FONT color=#ff0000>函数名: labs </FONT>4 I0 I: N6 u9 a& V0 o. _2 P
用 法: long labs(long n); , w1 x& ~2 n9 l% R
程序例: </P>
2 `* y5 g# m" j+ B4 M3 G- l<><FONT color=#0000ff>#include <STDIO.H>
& `- M# m" C6 O( M# [5 n. G7 `) {- q#include <MATH.H></FONT></P>
7 u  U* O  a+ j7 X" o# O* A: D<><FONT color=#0000ff>int main(void)
0 n7 G  Q( k$ p2 W! G' t{
, Z9 g6 t) E( D) dlong result; : G# t4 z0 u: Y' v. X. v9 r
long x = -12345678L; </FONT></P>" c' r3 \+ D2 d7 D4 u9 o3 e
<><FONT color=#0000ff>result= labs(x);
: t( H8 h& J" ]printf("number: %ld abs value: %ld\n",
/ _; ~6 y$ P3 t8 s! Bx, result); </FONT></P>% Y5 `, _! z  l! K" X
<><FONT color=#0000ff>return 0; / U. g" X7 g. Y
}
1 x, p& B' Z' T5 J% M</FONT>
/ Y7 T, S* v. k3 M; f* ?9 c  p  q# o& }: w( s, U
</P>
6 U* Z1 l) d& r0 G<><FONT color=#ff0000>函数名: ldexp </FONT>( D4 e( e0 ~% d. T2 }+ l8 X
功 能: 计算value*2的幂 9 D8 f) A6 ^9 @! z# W( U; X. ?
用 法: double ldexp(double value, int exp); - b3 n3 N- u" p
程序例: </P>( O+ n: P: T  F* r+ t1 W+ W6 U
<><FONT color=#0000ff>#include <STDIO.H>
0 {1 y( j5 V9 @; S* i" ^. F) M#include <MATH.H></FONT></P>
/ V3 H4 O. ^9 j% n9 [" n  o<><FONT color=#0000ff>int main(void)
/ p, f! V) F* [" r7 x1 s{
( ?  t% K) E! d* [' J: o3 P: @  D5 cdouble value;
# a  U- O6 ~3 ldouble x = 2; </FONT></P>
$ d) M$ t; b' P  H6 V<><FONT color=#0000ff>/* ldexp raises 2 by a power of 3
* x! r! J" o! \  |9 j. }) t' gthen multiplies the result by 2 */
. Y# @5 c+ \% X* N& evalue = ldexp(x,3); + ^# j$ ]/ V  y# }2 W
printf("The ldexp value is: %lf\n", # Z" B$ A/ l2 ]& Z, d# o1 f8 g
value); </FONT></P>
9 d3 A) P& r0 L1 z<><FONT color=#0000ff>return 0;
  I* p6 l  D0 Z! u" H6 Y- }}
( p/ Q4 I: \  }9 ^% M( ~
6 S+ [# G+ K6 |</FONT></P>
2 g4 G9 z0 r% ~  `2 ~: m5 L! V<><FONT color=#ff0000>函数名: ldiv </FONT>
! p. S6 s5 j& A# n功 能: 两个长整型数相除, 返回商和余数 % j$ G4 R. A0 o- k4 G+ ^
用 法: ldiv_t ldiv(long lnumer, long ldenom);
. Y2 i- x' f/ @0 P4 T程序例: </P>/ c" }) k1 H- h! l: d3 U
<><FONT color=#0000ff>/* ldiv example */ </FONT></P>
. ~( c. E6 B; A% P/ s<><FONT color=#0000ff>#include <STDLIB.H>  I! H3 x( }3 ?+ _( I1 m$ ^3 i
#include <STDIO.H></FONT></P>
. _* `6 m6 q' j! K+ ^$ H<><FONT color=#0000ff>int main(void) 2 r1 S0 Z/ J+ W7 Y
{   K8 V3 T2 }/ x: z2 y  K* I
ldiv_t lx; </FONT></P>
1 |9 A+ d8 [% s* [! p+ }<><FONT color=#0000ff>lx = ldiv(100000L, 30000L); $ D- A' b3 p: {0 W! {
printf("100000 div 30000 = %ld remainder %ld\n", lx.quot, lx.rem);
$ g5 g+ O9 B/ P. a6 ireturn 0; </FONT>" ^& ]6 K5 l4 L6 O( D( \3 F* [
<FONT color=#0000ff>} </FONT>
' o4 ^7 E7 q; ]7 n3 S3 U) I  S</P>  w( I* ~* w. q/ K$ O
<><FONT color=#ff0000>函数名: lfind </FONT>7 c1 ~# d1 Z+ e1 F$ Q3 L: Y
功 能: 执行线性搜索
* f5 x7 Y$ H* w: J1 v- T7 S$ @用 法: void *lfind(void *key, void *base, int *nelem, int width,
9 s& x4 H: K! G( H7 P+ zint (*fcmp)());
% j2 E: E8 v7 v程序例: </P>, y; P0 P8 Z4 X+ T9 D; W
<><FONT color=#0000ff>#include <STDIO.H>7 I/ b% n% m9 E+ M6 \) k$ N
#include <STDLIB.H></FONT></P>
& M' ?$ S, q! |+ c1 b: _<><FONT color=#0000ff>int compare(int *x, int *y)
0 @% \: x( r% y* t( w" ]) u{ 1 O2 Y) ~& q: N% d+ o  T# K
return( *x - *y );
" \; M+ j3 N& u0 z# h9 `: e} </FONT></P>
9 y0 f- E8 r  i# C/ w. J<><FONT color=#0000ff>int main(void)
8 O" y/ B; B# P. _& z{
$ m4 c8 P; Q) _# O, S2 v* k8 u7 [int array[5] = {35, 87, 46, 99, 12};
# T( n  Z4 r: v, Y! ]3 \size_t nelem = 5;
: G3 ~( ~$ q( |9 Nint key; * _0 K9 f- y0 U! D. [6 b
int *result; </FONT></P>
# L  a2 T! W# T7 k8 q( r<><FONT color=#0000ff>key = 99; 2 y) q% K' c/ A7 w4 X8 ?+ N
result = lfind(&amp;key, array, &amp;nelem,
) X. o+ ^0 Z* _% f/ w( y) A; Usizeof(int), (int(*)(const void *,const void *))compare); 8 @0 O, n* m& G2 y3 @' L
if (result)
: _7 y. s% J+ M6 H' J+ c; Eprintf("Number %d found\n",key);
3 U( J& B2 o9 q. s7 I8 nelse % l: C# y; G5 t3 H3 @1 u% k7 s
printf("Number %d not found\n",key); </FONT></P>
2 t. f8 E# r+ X0 w* @<><FONT color=#0000ff>return 0; 6 ]# b3 m  O; m& U
} </FONT>0 s$ ]  `6 t4 z0 R. c- W
* [) `; w; H+ s0 a/ G2 X8 q6 M' f+ \
</P>
4 ]% k4 O8 L* \$ `9 B4 n, F<><FONT color=#ff0000>函数名: line </FONT>
& S. x& Q; e+ S, t1 h功 能: 在指定两点间画一直线 + o+ X, W9 f7 E9 c  B9 w  o
用 法: void far line(int x0, int y0, int x1, int y1);
. ^: ?4 _5 V8 J6 ?% U程序例: </P># W  B. j) Y$ M" u4 }* g/ ~
<><FONT color=#0000ff>#include <GRAPHICS.H>: C2 ~+ b: M5 z( F
#include <STDLIB.H>3 K) g( G" X% N; B' U0 L
#include <STDIO.H>
  l. u( H! \7 J" N2 S8 n6 ~% ~% l#include <CONIO.H></FONT></P>
$ c3 R" u" q% q3 {<><FONT color=#0000ff>int main(void)
' h3 R4 D" G8 A) C0 F4 B{
2 T- D& k+ i- n7 J5 n4 O/* request auto detection */ 7 u9 L, k" b1 f' a: C/ a
int gdriver = DETECT, gmode, errorcode;
( j$ l% e/ g7 J+ a8 Aint xmax, ymax; </FONT></P>: L6 f" \4 ^+ l& Z
<><FONT color=#0000ff>/* initialize graphics and local variables */ : P* c( o$ X( |6 b7 @2 T- U: c
initgraph(&amp;gdriver, &amp;gmode, ""); </FONT></P># o, }# y7 z, V, A+ I, s
<><FONT color=#0000ff>/* read result of initialization */
, q& {: m: J, j0 P3 M" Qerrorcode = graphresult(); $ S+ V! Q2 E4 g, R2 [& N
/* an error occurred */
, [' a8 O3 _  V' v/ f; Pif (errorcode != grOk)
( l, j4 u1 Z* @8 T* X{
) v; i3 `% a% l4 Eprintf("Graphics error: %s\n",
  g( l- L0 j9 hgrapherrormsg(errorcode)); 4 c, l) k$ ~: V1 x
printf("ress any key to halt:");
8 [) C: O2 z9 e8 ~# _( c: d- {getch(); & _0 ?; T& d. g4 t" y( ^
exit(1); $ `2 g" Z' e! X' E( Q
} </FONT></P>7 {4 A& z( F6 A: Y
<><FONT color=#0000ff>setcolor(getmaxcolor()); & @# ?) r( Q! k$ P! S* F
xmax = getmaxx();
* @! ^# N) b% F% _( R. C, m' Wymax = getmaxy(); </FONT></P>
! l& }( k9 F$ ^<><FONT color=#0000ff>/* draw a diagonal line */   k) S7 W4 l' y0 F9 V* d" ~
line(0, 0, xmax, ymax); </FONT></P>6 V  ?: r  c9 m, j
<><FONT color=#0000ff>/* clean up */
: ]: r7 |3 {, g/ D- R( Pgetch(); 2 r" t# n) q3 e: h" U. v4 n
closegraph(); 7 n- R; ?3 t( D  J) \
return 0; 1 O# T: P8 J5 |! a# Y
}
# e! k3 `6 ~7 U# E) _& O' e</FONT>
& g! g- z# @8 K. q8 ~9 q</P>4 H; }# D& U5 [( z# C: C2 Z
<P><FONT color=#ff0000>函数名: linerel </FONT>0 Y3 m  P% Q$ e" M! \  \, p2 H
功 能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线
$ l9 e( S0 y+ T) S/ m+ n用 法: void far linerel(int dx, int dy); ( ?7 V  k: p+ }# d: M; K
程序例: </P>
! q0 c2 c2 M, g4 O. n) _<P><FONT color=#0000ff>#include <GRAPHICS.H>
) W/ @* c. ^& M9 ^  i2 Y/ j#include <STDLIB.H>
" C1 S+ o6 a. W#include <STDIO.H>& H! n$ N' Z' \% D! ^7 T3 |
#include <CONIO.H></FONT></P>
6 ]: {8 ^7 D% m, y5 T2 \( f<P><FONT color=#0000ff>int main(void) ' e. R* r$ \8 X
{
7 I; Y7 T, [1 k2 n/ x/* request auto detection */
3 ?% C; H1 I- }& ~. a, j8 wint gdriver = DETECT, gmode, errorcode; ! P6 d) ~% n& e* f# j/ O4 c- r
char msg[80]; </FONT></P>  O& _  {5 T/ D5 R* m. k
<P><FONT color=#0000ff>/* initialize graphics and local variables */ ( A# Q+ ]: H9 y9 t: i  ~5 u4 r
initgraph(&amp;gdriver, &amp;gmode, ""); </FONT></P>
8 g4 {/ u0 J' R, a- e<P><FONT color=#0000ff>/* read result of initialization */
+ c1 k* u/ g% p" J3 z( Terrorcode = graphresult(); & q1 A( V" m  D- @2 r
if (errorcode != grOk)
; k$ _0 D9 l' I{ ) |# q" H: f# K( }. ^8 O
printf("Graphics error: %s\n", ( h8 V$ C/ X2 s2 W" y7 c0 D  u
grapherrormsg(errorcode)); 4 M7 Q2 O3 l7 S2 W# l; P
printf("Press any key to halt:"); # b# a+ p0 J. |+ Y' v" i" M' Q
getch(); . T+ F( v6 ^4 ?8 H) z  j
exit(1); & w9 V- K% H7 Q( ], _7 u
} </FONT></P>
  o+ \/ Z$ [5 K6 A0 k<P><FONT color=#0000ff>/* move the C.P. to location (20, 30) */
5 G+ B% I* w1 n& m% g: Lmoveto(20, 30); </FONT></P>
5 s$ ?1 {% J0 ^0 Q<P><FONT color=#0000ff>/* create and output a ! b2 B8 \- w6 s4 G
message at (20, 30) */ 1 M; l7 h, j: n; c( [8 b* y/ Y: Y7 Z1 m
sprintf(msg, " (%d, %d)", getx(), gety());
  b1 u  S* O. q( m8 Youttextxy(20, 30, msg); </FONT></P>
/ N7 N2 B! @9 M<P><FONT color=#0000ff>/* draw a line to a point a relative
5 u1 R& ?( p/ A: q: v( Qdistance away from the current
& L% I! z' c- _2 a2 bvalue of C.P. */
. H1 z1 Z: X: T6 ^; ^* r, qlinerel(100, 100); </FONT></P>
2 {7 z$ n- R6 l/ [( W3 B<P><FONT color=#0000ff>/* create and output a message at C.P. */ % J" N. h- }  S/ o
sprintf(msg, " (%d, %d)", getx(), gety());
. ^$ O6 n+ V& C+ M8 d, Mouttext(msg); </FONT></P>; d6 v, B  u5 G. s! [& M
<P><FONT color=#0000ff>/* clean up */
  w! G' Q* R/ G6 }% Y2 u. N" Q0 c" rgetch(); ( i* r8 b4 X9 _( p7 y. S& m- X$ L
closegraph();   ], X# W3 x# g! `
return 0; - r( M, e5 h2 S6 v( ~$ }
} </FONT>, o2 \/ ]( \) M9 p3 P  X
</P>3 y8 C. Q- @/ D+ m1 M. H
<P><FONT color=#ff0000>函数名: localtime</FONT> " B+ F" \8 [! Z
功 能: 把日期和时间转变为结构
" v8 s4 ~! h- n* F$ S3 c2 Y用 法: struct tm *localtime(long *clock);
' s; Y8 K# |, x3 g+ o. Q程序例: </P>
8 F$ c. _2 \, L. d1 S1 n4 r% U# \& N<P><FONT color=#0000ff>#include <TIME.H>
7 y& v; w* c0 {/ I( E#include <STDIO.H>
  @8 t2 T7 \! k8 a#include <DOS.H></FONT></P>& \; i7 p/ P. ?! ~) b
<P><FONT color=#0000ff>int main(void) 4 {: ?) L. ]" z6 b1 `7 @
{
: F3 d; E, i5 B% Dtime_t timer; , I1 p  Y& `7 i- f8 U5 {
struct tm *tblock; </FONT></P>
6 s' @1 |5 C5 x$ k2 s' L( Q/ O<P><FONT color=#0000ff>/* gets time of day */
" X+ ^# i8 F! vtimer = time(NULL); </FONT></P>
& g5 X: |4 n: ~<P><FONT color=#0000ff>/* converts date/time to a structure */ 0 j2 D9 j) ?+ x; b
tblock = localtime(&amp;timer); </FONT></P>! ]8 g5 X( B1 X" p( [$ E$ [' t
<P><FONT color=#0000ff>printf("Local time is: %s", asctime(tblock)); </FONT></P>8 K1 S. A# Z) Z
<P><FONT color=#0000ff>return 0; # t( E% ]/ C( `- ?4 M
}
% D) ?# q* C: ~
1 l4 ^1 O7 B4 K7 |% `8 ]) h+ d9 f& _; Z9 R6 D
</FONT></P>+ z& Q- H, O" ^% V: l/ P
<P><FONT color=#ff0000>函数名: lock </FONT>! H- }3 ]% I" v- [9 D) i9 w
功 能: 设置文件共享锁
6 R. ^/ R4 H4 R用 法: int lock(int handle, long offset, long length);
( L/ d" _! ^; q. W. u程序例: </P>  g% j& z  P! P
<P><FONT color=#0000ff>#include <IO.H>
! H. @1 j0 ^; o( Q1 E) v/ ^#include <FCNTL.H>7 P4 Q4 u: W8 W/ X4 N
#include <SYS\STAT.H>
) n; J; Z& H! V- F8 a+ X#include <PROCESS.H>  @4 R2 c4 a( H) f% h
#include <SHARE.H>
2 V* v1 s( _: Q+ @% P9 ]#include <STDIO.H></FONT></P>" D5 y/ n8 f; o0 e) V* C
<P><FONT color=#0000ff>int main(void) 3 R5 y( k0 y% Y0 v: [/ ~
{ 0 A9 u$ x* }9 ]3 {$ W) ?  G
int handle, status;
, y) a. C& P* {7 `+ V( Q+ `long length; </FONT></P>
- D- w1 @' p9 j+ S) e- r6 W% k. y<P><FONT color=#0000ff>/* Must have DOS Share.exe loaded for */
) v+ a) L* D, S7 v/* file locking to function properly */ </FONT></P>
2 X: l" A, ^6 l<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat",
9 W8 w! e5 B' V0 ^O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>7 s0 f, L3 U$ }3 W
<P><FONT color=#0000ff>if (handle &lt; 0) 7 c9 c3 w+ R( C4 u  }. t
{
' `$ b4 P8 S9 Yprintf("sopen failed\n");
; L8 o% _4 L- C4 e7 @9 y0 v, i5 Xexit(1);
( ]; A$ m  x. }* R- B} </FONT></P>
3 t0 o: Y/ H$ K. m<P><FONT color=#0000ff>length = filelength(handle); 9 I. B8 g3 n/ S- M
status = lock(handle,0L,length/2); </FONT></P>9 B8 a; u. W3 R& g; X
<P><FONT color=#0000ff>if (status == 0)
4 ~3 t( A1 e+ L- t& e: L3 t4 jprintf("lock succeeded\n");
( E: R! x1 b) F. q  |- Oelse
0 L7 V% \4 W# R0 b% E' n8 _' z1 nprintf("lock failed\n"); </FONT></P>$ |, S: ^/ K% F( m& I5 b
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>- Y+ G8 Z: O; D0 L! w; Q
<P><FONT color=#0000ff>if (status == 0) " |6 V, ^% P& s5 a; R& E* [4 ^5 u
printf("unlock succeeded\n"); 2 N3 G% y/ z8 ^$ @# x" \4 Y
else
$ U" W! [; U5 v; R# D+ B/ t- m( zprintf("unlock failed\n"); </FONT></P>
& _" t2 n5 `' k8 `/ A3 F<P><FONT color=#0000ff>close(handle);
" z/ g5 N  u6 ureturn 0; & k: g% v4 g7 K9 s5 g! z5 [$ J
} ) S! o: U2 w* H/ l! n2 I+ j
</FONT>8 @7 Y. M+ p8 O3 Q- `& i( E
</P>: m" C. q7 h: g& r! d2 ?; h
<P><FONT color=#ff0000>函数名: log </FONT>. Q. u# ^9 E2 x" g
功 能: 对数函数ln(x) ) B6 {/ F% v& N; T9 }
用 法: double log(double x);
& j$ n/ x& ?1 F程序例: </P>
* B! I& _2 G- r% o; q$ F. n<P><FONT color=#0000ff>#include <MATH.H>
, C9 z/ a% i$ k7 k#include <STDIO.H></FONT></P>
% Z# E. s( H+ ~9 F<P><FONT color=#0000ff>int main(void) * M, X% h! b% r- ]+ J) ?
{
! I3 x6 b& s! _& b! |  F. K1 E' j5 Jdouble result; ! X! M" I# N# {* j3 U
double x = 8.6872; </FONT></P>
, K) a) m; V7 Z( a<P><FONT color=#0000ff>result = log(x);
. ]! U$ h) o; H$ F# b, k/ K) N8 hprintf("The natural log of %lf is %lf\n", x, result); </FONT></P>" h% x4 l% K: D
<P><FONT color=#0000ff>return 0; ; C: ?- I, w" @- A5 r5 `, X) w
}
1 ~4 ]( f8 S1 q
  N4 @( K5 x4 |9 Z6 {3 `# }</FONT></P>
& m! S2 ^; b9 b$ \! X6 `<P><FONT color=#ff0000>函数名: log10 </FONT>
. V) n2 t' ^$ p' j4 y2 p: z( u功 能: 对数函数log % H. z5 K6 s# g" I7 k
用 法: double log10(double x); ' J+ m* Z4 K; f; G, B; {6 }: L
程序例: </P>
; }* C$ f1 F4 t0 R) Y! u1 Q" ~; g7 p<P><FONT color=#0000ff>#include <MATH.H>
! F3 u, e- `* ^. C: r5 ^# H#include <STDIO.H></FONT></P>
7 @) m4 K8 p4 z; L! d6 W<P><FONT color=#0000ff>int main(void) % \# [9 S; P+ F* j/ ^0 l
{
; j3 n2 r' P% }  sdouble result; & N8 p8 g4 A* _2 {; G# @1 I" G. b! M
double x = 800.6872; </FONT></P>4 X1 g* ?! V+ Q% X9 k- y: [
<P><FONT color=#0000ff>result = log10(x);
! Q8 \! K& L2 Dprintf("The common log of %lf is %lf\n", x, result); </FONT></P>
' K7 y! _, Y2 R! @+ h. c  V<P><FONT color=#0000ff>return 0;
$ j2 c% K+ R. I5 u9 @1 M}
& z4 K- w* H: J0 }: h! U6 N" f/ |" I8 @- \( v
</FONT>) p: s8 Z- G/ u: [6 v, u0 V; f+ R
</P>
8 P, N( t$ {  B, J3 z4 m<P><FONT color=#ff0000>函数名: longjump </FONT>
7 f/ o+ D$ ~/ P% f. }9 C6 V+ k功 能: 执行非局部转移 3 x  U1 d2 O/ h" @% n- R
用 法: void longjump(jmp_buf env, int val);
' `/ n% r1 s* g% F程序例: </P>
, M! l; Q$ C5 f) P  Y: ~8 f7 E<P><FONT color=#0000ff>#include <STDIO.H>6 ~5 }8 X4 w5 l# X( A
#include <SETJMP.H>
" j& |, w$ D( U) @#include <STDLIB.H></FONT></P>: _0 i( h) r- s/ S* b, _2 a! o
<P><FONT color=#0000ff>void subroutine(jmp_buf); </FONT></P>4 d/ K3 `! \7 I: F7 ]
<P><FONT color=#0000ff>int main(void) 6 i6 ]- `/ M/ x* ?4 n: x* n5 J' W
{ </FONT></P>% R, P6 S( G  r: {
<P><FONT color=#0000ff>int value; - _% n7 e# B1 e
jmp_buf jumper; </FONT></P>8 o/ u9 h5 t! R( F  p( I  |' n) p; x
<P><FONT color=#0000ff>value = setjmp(jumper); / G! ]% A# S( d( O  p. r- y2 i
if (value != 0)
- j7 j0 d2 Z* R& w/ {{
! Z& O5 H* `& d) D7 ]$ h9 zprintf("Longjmp with value %d\n", value); 9 p5 s4 ]/ h" C1 a" O% t/ H( ~# |
exit(value); ' d6 ~& Z& L) S
} " x- `' n# D; ^) s! C
printf("About to call subroutine ... \n"); 5 H* \7 Y0 K4 S$ S7 C
subroutine(jumper); </FONT></P>/ h5 L. y2 z# d" N
<P><FONT color=#0000ff>return 0; 8 U1 ^7 z4 g9 b3 R. z4 z
} </FONT></P>
6 j4 n9 k9 y' C2 r9 t5 `( |: K; I7 M! r<P><FONT color=#0000ff>void subroutine(jmp_buf jumper)
4 Q# k, v: \0 I. Q* ?{ 5 p, v6 \. t! B
longjmp(jumper,1); 3 `0 _; L9 f' y5 {
}
) N! l8 n: x: ]3 o! B9 O( T& i% G, c" b
</FONT>
8 M- n; n2 [# M8 H) X) y</P>
& V% H: M& `3 n' A2 @# b<P><FONT color=#ff0000>函数名: lowvideo</FONT>
5 U3 V& [3 I% D' d! \功 能: 选择低亮度字符 , H" C' s' ^. _
用 法: void lowvideo(void); 8 R9 _  f- X6 W% }# d
程序例: </P>: k9 M- O) `# j! V  f
<P><FONT color=#0000ff>#include <CONIO.H></FONT></P>
  e* V2 c1 a; M) o. O8 b<P><FONT color=#0000ff>int main(void)
* C) l0 @4 n9 `2 t$ T1 s$ Z{
6 V1 g/ G$ _2 x$ p1 ?3 a  g& oclrscr(); </FONT></P>
9 ]# p) V% ]( v  [<P><FONT color=#0000ff>highvideo(); ( J2 Y! c, _4 K/ ~7 P7 ]
cprintf("High Intesity Text\r\n"); 2 B3 d+ y. N( Q2 D+ Y( i1 I
lowvideo();   d9 w( n5 V* Y0 {4 {& m
gotoxy(1,2); 6 f. W! h/ W) h5 \4 n. q
cprintf("Low Intensity Text\r\n"); </FONT></P>
( K0 J! i2 {! o; x& B+ a* ]<P><FONT color=#0000ff>return 0;
% J1 M  D9 W8 z5 k1 c- q2 w: r}
! u; y( H" y6 Z2 F% f0 A( A0 I" Y+ \
</FONT>/ Z/ w; n2 q) ]& G; m2 w" c
</P>
& {# y) X" e, d3 j3 J& _0 V<P><FONT color=#ff0000>函数名: lrotl, _lrotl </FONT>+ Y' t7 t/ Y$ A* w+ I. I
功 能: 将无符号长整型数向左循环移位 * r6 A7 j% h6 W7 ^6 i
用 法: unsigned long lrotl(unsigned long lvalue, int count);
4 k. E$ Y. i* @8 P) l$ Y3 Wunsigned long _lrotl(unsigned long lvalue, int count);
$ x1 O8 m9 J) X7 S程序例: </P>
, p9 ]; ~" s0 x9 K1 c<P><FONT color=#0000ff>/* lrotl example */ 2 u- u3 x; o0 O! C( w- A
#include <STDLIB.H>
: g% C! ^9 R' Y6 M' F/ |: M& {#include <STDIO.H></FONT></P>
( o2 D2 t  {: R<P><FONT color=#0000ff>int main(void)   g: d& i& |& N3 y- G8 X
{ & n$ t$ f( E' P9 R. A) B2 R
unsigned long result; ; E3 L# S, N: x0 a7 D( }3 k
unsigned long value = 100; </FONT></P>: ^! v% p' ]" M5 }2 i* C
<P><FONT color=#0000ff>result = _lrotl(value,1); : k/ P6 R! B7 A( Y) I4 Z4 _& b7 ?* ?+ N
printf("The value %lu rotated left one bit is: %lu\n", value, result); </FONT></P>
' n4 ]% }7 M" u9 z9 e6 h' E- F<P><FONT color=#0000ff>return 0; 2 D. v8 H; U  j, O9 n
} , Y# c: x4 P' r( d( f
</FONT>" V6 d$ H* I8 ~+ h: }- Y4 k8 k9 ?
</P>
7 _5 I; @  l( Y7 u$ k$ `<P><FONT color=#ff0000>函数名: lsearch </FONT>- C: n: C  t, z
功 能: 线性搜索 # P% s5 o; o& B! }$ A# e* s" _
用 法: void *lsearch(const void *key, void *base, size_t *nelem, 6 H$ H8 r' k, t0 V& D5 `3 h
size_t width, int (*fcmp)(const void *, const void *));
- H  l, ~$ n. c6 z程序例: </P>
" @/ D8 x! V1 m& L! H* O' Z0 T2 I<P><FONT color=#0000ff>#include <STDIO.H>4 j4 y- z! Q: t& S
#include <STDLIB.H></FONT></P>( S- N/ Y; `7 q* x- J% H
<P><FONT color=#0000ff>int compare(int *x, int *y) ' k: V. s  j5 F+ C. S6 C
{
! a: x9 E. z, X8 P& l; Zreturn( *x - *y ); ' S+ w9 k, I8 u6 N9 G5 N- J
} </FONT></P>
  ?/ j# Y2 p" q9 i4 K, T/ U<P><FONT color=#0000ff>int main(void)
6 M( C' c9 n8 j$ I{ # j, t. C) E8 z& {; v
int array[5] = {35, 87, 46, 99, 12};
8 y" d) x0 n# d4 }- ~2 tsize_t nelem = 5; 4 B8 ?/ @) p7 \, y1 Z) x: N: h
int key; 9 t: I- ^" x, y; Z5 r4 O& Z
int *result; </FONT></P>
6 v+ ?1 Y4 L5 x7 E5 {<P><FONT color=#0000ff>key = 99;
5 C. W" [. N4 O3 s' m% `7 eresult = lfind(&amp;key, array, &amp;nelem,
* E* N$ g# G) c% f+ [sizeof(int), (int(*)(const void *,const void *))compare);
7 ^  V- o6 e/ _5 N) m: r+ T) J+ [if (result) 9 b2 F6 f$ v4 ~9 m
printf("Number %d found\n",key);
8 ^; d  i/ [" N/ @/ Qelse
& H( x1 ^# H* @% z3 \) l( yprintf("Number %d not found\n",key); </FONT></P>1 j7 e4 g# A) V& T( b
<P><FONT color=#0000ff>return 0;
: z9 T4 x- E1 b# P2 w}
( }  m, U& x* |2 l
: \5 e: [/ l: G, X; L4 U! |( ^0 r</FONT>0 g% ]/ ]( u% H7 J- ^
</P>6 C( W9 @2 G' Z( v5 |) a
<P><FONT color=#ff0000>函数名: lseek </FONT>
) T& ?2 O3 E8 T6 u/ z4 A: T  o$ ~功 能: 移动文件读/写指针 % v! `0 Y8 z9 X$ R# r
用 法: long lseek(int handle, long offset, int fromwhere);
$ u3 c: q* }% Y! Z* j程序例: </P>8 k& u  r" C3 X7 @) G" b
<P><FONT color=#0000ff>#include <SYS\STAT.H>
& q$ g  m" G' L, ~& ~) d' K9 T#include <STRING.H>* W, v: ^! S. O
#include <STDIO.H>/ ^& P- g+ B, A0 C; h
#include <FCNTL.H>
/ X( f" y- C3 U* Q#include <IO.H></FONT></P>
* n9 _) T, j: j<P><FONT color=#0000ff>int main(void) 6 U+ d  R9 M+ Q
{
: [! S# y+ H: Y5 Aint handle;
  k/ W2 H; @  Y1 w8 P5 ?4 fchar msg[] = "This is a test"; $ n: y% K) J' T9 t# b( c( F, p
char ch; </FONT></P>1 U1 T& _7 v4 \/ T  n% R
<P><FONT color=#0000ff>/* create a file */
9 b) X1 J( O) V  Yhandle = open("TEST.$$$", O_CREAT | O_RDWR, S_IREAD | S_IWRITE); </FONT></P>9 F. t1 y3 b' n4 g: [, M
<P><FONT color=#0000ff>/* write some data to the file */
5 _4 Z) X5 V- R7 D3 n; F$ z% Dwrite(handle, msg, strlen(msg)); </FONT></P>. ^9 V% ~+ r6 a
<P><FONT color=#0000ff>/* seek to the begining of the file */
  y0 O( Y+ g! b' E& P; b/ f1 Xlseek(handle, 0L, SEEK_SET); </FONT></P>: b! V' V! l1 p/ l
<P><FONT color=#0000ff>/* reads chars from the file until we hit EOF */ - E# P  J$ \, Q( ?7 x: G: X
do
* k" R* v3 y4 e9 h6 e* F{ $ P$ n4 Z" ?4 T8 R2 u# v
read(handle, &amp;ch, 1); 0 y0 v# E; P: H
printf("%c", ch); * Y! I. B6 ?4 t4 t$ ]0 F
} while (!eof(handle)); </FONT></P>% Z: J1 {1 R7 Z& h& K
<P><FONT color=#0000ff>close(handle);
7 `+ C7 R! w+ e9 c* f. Y6 Dreturn 0;
4 z! u9 M8 j" p} 1 v. z1 S0 T! X5 ?; U0 q& O
</FONT></P>
9 p  q6 b! `5 l<P align=left><FONT color=#0000ff></FONT> </P>




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5