数学建模社区-数学中国

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

作者: 韩冰    时间: 2004-10-4 02:58
标题: 函数大全(l开头)
<><FONT color=#ff0000>函数名: labs </FONT>/ f1 w6 y! ?" U4 B6 o
用 法: long labs(long n);
! j% d4 s2 X, i: i程序例: </P>
% Z7 u# v- F( R<><FONT color=#0000ff>#include <STDIO.H>( b' L% l! l8 f1 j1 _9 E; ~
#include <MATH.H></FONT></P>' l+ u* D( k6 `
<><FONT color=#0000ff>int main(void)
. H+ ^+ `4 g+ f( M{ 7 [8 F$ Q% J. u" ]# [; t2 Q
long result;
8 x  R$ \$ J7 Vlong x = -12345678L; </FONT></P>5 n0 _! d2 w1 ?; B! v5 L/ \
<><FONT color=#0000ff>result= labs(x); , @+ V0 x% Y# D
printf("number: %ld abs value: %ld\n",
( E2 F& f; k6 E7 `  y: I, Zx, result); </FONT></P>( ]/ F, h) T) A4 {' K7 I4 b0 N) E- e
<><FONT color=#0000ff>return 0; % h. n2 `3 a1 O. y/ j
}
$ g& |. @6 h5 |( [( s( x' e' I: S</FONT>) h1 |/ F5 {% |6 S% S
  E$ D! r7 l; y9 ?
</P>
/ H* Y- [0 U# A: ^3 Q<><FONT color=#ff0000>函数名: ldexp </FONT>! Q1 s; X! O" q) j  x8 C* k
功 能: 计算value*2的幂   F% `6 P/ G4 ?8 p
用 法: double ldexp(double value, int exp);
7 u6 W. W: J) C; L; {9 H9 Z程序例: </P>
" |. L# V6 K7 O+ w; c$ Z0 @6 @6 ]<><FONT color=#0000ff>#include <STDIO.H>' k/ ^# Y# r8 _5 O
#include <MATH.H></FONT></P>
4 [" U! [$ L  _) H3 |2 f  l3 R<><FONT color=#0000ff>int main(void) # C: U5 C: l. p& H/ v; V# R
{
3 [# H6 x" T; }double value;
: y6 L; B3 H6 rdouble x = 2; </FONT></P>
! N: e  |+ ], M% @! Y0 g; s<><FONT color=#0000ff>/* ldexp raises 2 by a power of 3 - p7 |' _, x9 ~
then multiplies the result by 2 */
2 k1 S1 [3 C: N1 M& t0 xvalue = ldexp(x,3); " T$ D( A2 `2 y. L7 Z
printf("The ldexp value is: %lf\n", ( t. h- u* l* r3 S0 E
value); </FONT></P>
+ K' p' J( \* ~<><FONT color=#0000ff>return 0; $ ?" m2 O6 Q1 p, I* ]+ S: O& \
} , a& z& s3 K1 c  u3 F8 H

  {8 n1 [" h$ Y; s; B</FONT></P>
1 ^3 @! @4 n3 Y6 H, ^8 \8 ?( f<><FONT color=#ff0000>函数名: ldiv </FONT>: F0 D  |4 R4 |
功 能: 两个长整型数相除, 返回商和余数
$ l( W; j+ l$ R4 W  r) }: }( u用 法: ldiv_t ldiv(long lnumer, long ldenom); 5 N/ s- y& ?8 {0 a0 z
程序例: </P>/ T, q; }% X: m) g
<><FONT color=#0000ff>/* ldiv example */ </FONT></P>
, f# q/ r7 S6 V) N: ~<><FONT color=#0000ff>#include <STDLIB.H>! q0 u  A4 r/ F9 s
#include <STDIO.H></FONT></P>8 Z( a( P7 n9 _; U
<><FONT color=#0000ff>int main(void) : d9 L. U  S7 s9 v2 z4 s8 f
{
0 T3 W. t8 z, A! F: h& Jldiv_t lx; </FONT></P>
3 a& W0 G8 j' w& L( Z% U* _) f<><FONT color=#0000ff>lx = ldiv(100000L, 30000L); & z2 ~, r6 h( p+ G: P: K& o' X
printf("100000 div 30000 = %ld remainder %ld\n", lx.quot, lx.rem);
8 T% U/ r) |, a0 \: x3 yreturn 0; </FONT>8 t4 S1 g* \3 P$ M
<FONT color=#0000ff>} </FONT>" y5 N" ~$ J+ A$ D( v
</P>! e' `# V* a& y
<><FONT color=#ff0000>函数名: lfind </FONT>+ X2 h+ Q2 F' |  \& M; j
功 能: 执行线性搜索 + Y* H* r( X  @& S; m9 z/ f/ ]
用 法: void *lfind(void *key, void *base, int *nelem, int width,
2 y+ G- S8 z# Kint (*fcmp)());
5 m# o7 G  M/ e" F) S程序例: </P>% c. d6 Y- _. `/ ~6 q- |; k+ I
<><FONT color=#0000ff>#include <STDIO.H>' s9 T$ W1 R  V/ M
#include <STDLIB.H></FONT></P>9 Q4 s8 @! K" p( U" T8 ~
<><FONT color=#0000ff>int compare(int *x, int *y) ! O6 Y- N  _& @  T+ [5 M' d
{ " S& L/ Y7 f( _
return( *x - *y );
: P6 ^0 W) z5 j3 T. k4 Q, N8 j} </FONT></P>$ X( d% b2 C7 ?* ?! [. X
<><FONT color=#0000ff>int main(void) . Y4 Z, Q+ f* k  B6 A
{
$ c; J) L6 G. {( Xint array[5] = {35, 87, 46, 99, 12};
# q; m7 b1 |# c% l# F/ D( [( g# `: Ssize_t nelem = 5;
3 a0 O+ _8 M( C. y* ?) h$ Q$ Oint key;
' n+ d4 N# W- aint *result; </FONT></P>( x7 j  v1 }. T6 ^) n1 }1 z+ W
<><FONT color=#0000ff>key = 99;
5 r  N; L3 k+ X& Xresult = lfind(&amp;key, array, &amp;nelem, 7 U7 W9 P; _% Y2 T: j; E0 B' f
sizeof(int), (int(*)(const void *,const void *))compare); $ n0 y3 _9 J5 y7 G" v
if (result) + V: Y/ L7 T& o8 |
printf("Number %d found\n",key); " R, ?9 O2 X! B( a* J( b2 D
else 3 j* J1 f& I7 J0 i5 ?2 r4 Z* f% O- k
printf("Number %d not found\n",key); </FONT></P>8 L( v5 s% K7 G
<><FONT color=#0000ff>return 0; 0 P3 `/ B. B, o$ A
} </FONT>
1 C/ [1 }+ J/ c  i! E8 J  e9 F( N
: d% U9 L3 r. ~</P>
9 Z7 E/ k/ P' v  T, k4 {, ?<><FONT color=#ff0000>函数名: line </FONT>, Q* j1 E( g/ Y3 M1 ~3 p
功 能: 在指定两点间画一直线
2 d* ]* e9 y4 g用 法: void far line(int x0, int y0, int x1, int y1);
* y1 Z0 B% [& ~程序例: </P>: B8 C7 K- Q9 v; g. v- d
<><FONT color=#0000ff>#include <GRAPHICS.H>7 n3 d# H" ~9 g+ R7 b: P) W/ D8 Y  k
#include <STDLIB.H>9 \0 y: g7 q% H9 s* S
#include <STDIO.H>
- r) e* R6 C: [+ s1 f$ T' S#include <CONIO.H></FONT></P>* f+ J! Z& F0 u3 S1 G
<><FONT color=#0000ff>int main(void)
* T4 o3 {. j1 J+ U7 L( M7 z{
# _- }- E; f$ q4 O2 N/* request auto detection */ - T6 q5 I( b5 ~# I7 x* {
int gdriver = DETECT, gmode, errorcode; " I) y% }6 ?/ s* u" V6 x
int xmax, ymax; </FONT></P>0 I& O6 n2 B1 k
<><FONT color=#0000ff>/* initialize graphics and local variables */
& I, _+ ^  R& H$ Q. h+ Ainitgraph(&amp;gdriver, &amp;gmode, ""); </FONT></P>  D( R* e9 W, s1 C
<><FONT color=#0000ff>/* read result of initialization */ ! X6 V4 I' v& ?
errorcode = graphresult();
/ A) d* p- u* w$ A9 S: @3 j1 q* g/* an error occurred */
& s% K3 x0 D' ?! Z0 H" |( ]" bif (errorcode != grOk)
1 t" D2 i5 n0 a6 g: t{ , i" H8 z  a" V
printf("Graphics error: %s\n",
7 U, r* t2 N% R, b& q$ f3 Wgrapherrormsg(errorcode)); 3 g0 |8 {" G* b9 p( B1 w
printf("ress any key to halt:");
0 H% j' O9 B' p. M, M" |8 ^getch(); 8 y) X) |/ l/ L
exit(1);
, i6 e* ^4 j/ F' K$ H, U5 d} </FONT></P>* i6 ]" l9 z' N* ^# J
<><FONT color=#0000ff>setcolor(getmaxcolor());
" x. g$ w* Y; hxmax = getmaxx(); ( _9 ^9 c, K9 O
ymax = getmaxy(); </FONT></P>2 s8 P! ?' L5 P( ]9 D4 O
<><FONT color=#0000ff>/* draw a diagonal line */ - D6 w2 e$ r5 }$ Z+ ^# e
line(0, 0, xmax, ymax); </FONT></P>- k# d4 c. D6 T% A
<><FONT color=#0000ff>/* clean up */
) m: E2 |  K& L; H. q6 qgetch();
% F* j; H  g3 M7 q$ t7 t  D5 K2 qclosegraph(); / n4 i# f$ d% D% x
return 0;
9 U8 ~$ ^( L) R. g' }}
+ ~) B8 _6 Q+ b; U</FONT>8 W1 t2 ~% V. h- P4 U0 L
</P>
% Y+ Q$ D' n! \7 ^1 s0 G' K<P><FONT color=#ff0000>函数名: linerel </FONT># j6 e3 i5 x+ i( N8 F7 N. H1 p! v
功 能: 从当前位置点(CP)到与CP有一给定相对距离的点画一直线
/ t  {3 j9 b7 X# M% I0 ]! R& K& ^) H  g用 法: void far linerel(int dx, int dy);
0 o8 c& ?; U1 J3 q) R程序例: </P>
1 P( g7 P& t' P2 X+ r% J1 d<P><FONT color=#0000ff>#include <GRAPHICS.H>5 M) v4 t* [8 ]7 G) s4 C
#include <STDLIB.H>
' ?/ [' k, q' t$ k( y5 j#include <STDIO.H>  f6 T  D1 h8 X5 l5 ~
#include <CONIO.H></FONT></P>
) r4 V) K8 L! ]2 h<P><FONT color=#0000ff>int main(void) 3 I; a; A/ c( f: O8 @8 v  A# q
{
6 L1 d2 _1 u3 U) S6 a8 E/* request auto detection */ 7 r( `- `9 P9 O* {, o4 W. l/ Z( V
int gdriver = DETECT, gmode, errorcode;
7 C- T( O( E9 R+ u7 Ichar msg[80]; </FONT></P>* ~# \' Q$ ]. s5 ~- q1 ^0 ]% x# F0 ~% _
<P><FONT color=#0000ff>/* initialize graphics and local variables */ # V+ }; s9 u/ C4 G' `( j. J! E  |
initgraph(&amp;gdriver, &amp;gmode, ""); </FONT></P>2 O) Z9 A$ c; o7 @; i. X) @3 b
<P><FONT color=#0000ff>/* read result of initialization */
* Y. o& N/ v' k+ Berrorcode = graphresult();
# L4 n. r- Q" Y# @, {& hif (errorcode != grOk) . C5 c8 g8 Z+ X6 }6 j7 X8 [
{ 5 H6 R2 \( J2 u* g
printf("Graphics error: %s\n", / x1 C! x0 F. {  M* a5 T1 a
grapherrormsg(errorcode)); ) x' T( A8 _1 m& i% \) n. G2 C
printf("Press any key to halt:");
& S! K" U. I& N/ X( C8 ugetch();
! ~4 L* G% b& f+ }2 o% W; A7 i/ yexit(1); , E. v' L$ y8 A
} </FONT></P>
9 j5 |  q: U1 t8 a- R$ b<P><FONT color=#0000ff>/* move the C.P. to location (20, 30) */
" `: X; u7 }: ?1 C5 t  bmoveto(20, 30); </FONT></P>% Z: h! r' V$ j7 j$ l
<P><FONT color=#0000ff>/* create and output a 1 A6 Y4 I) M) z3 @
message at (20, 30) */ 5 \8 f1 C" ^) m3 P' H$ ?7 L
sprintf(msg, " (%d, %d)", getx(), gety()); - ]2 I: O2 _3 }$ T6 i% \
outtextxy(20, 30, msg); </FONT></P>
' l2 S1 `# `% x' O  L9 O- `<P><FONT color=#0000ff>/* draw a line to a point a relative 3 C1 s1 K  Z! \2 @' J* u9 v
distance away from the current 7 G. L6 F. }" V& @+ T5 P
value of C.P. */
  o: z4 D! V( u$ O1 ylinerel(100, 100); </FONT></P>
) \. ~& ~& i" w; x<P><FONT color=#0000ff>/* create and output a message at C.P. */
  ~: K2 h# S& `/ m0 xsprintf(msg, " (%d, %d)", getx(), gety()); & S2 D: h/ f- j7 g$ ?" w
outtext(msg); </FONT></P>/ X5 {! P! p. U8 F
<P><FONT color=#0000ff>/* clean up */
# }1 I+ c5 r  Pgetch(); - ~5 v; Y7 S$ u4 b1 Q* G
closegraph();
6 F6 w+ D. d+ [return 0;
: m  [: g( a+ Z} </FONT>  o6 w+ B* o" c7 `3 h
</P>5 S9 b5 D, t6 \+ J* e3 L7 Z
<P><FONT color=#ff0000>函数名: localtime</FONT> 1 w* h0 D9 l; n6 N% Q& t2 u+ ^
功 能: 把日期和时间转变为结构 % p$ y; J3 X/ |/ w
用 法: struct tm *localtime(long *clock);
; j2 v" _+ l; x% t$ N) Y4 ?8 ~程序例: </P>: B8 q6 R8 f" l5 u5 L4 F$ J% |
<P><FONT color=#0000ff>#include <TIME.H>2 s$ k; ]; _; |% r, e
#include <STDIO.H>8 x7 ?, W' K  Q# f, O  e
#include <DOS.H></FONT></P>8 `7 }' K4 r- H8 \# ^
<P><FONT color=#0000ff>int main(void) 2 }- D' a+ O# E/ u/ _
{
0 J" F2 t! r3 }3 Ytime_t timer;
" q' \5 e( y2 Cstruct tm *tblock; </FONT></P>5 j. V4 o0 `* ?3 L4 j
<P><FONT color=#0000ff>/* gets time of day */
* s0 D& F. F0 R! B: Z# Wtimer = time(NULL); </FONT></P>0 c! S  Y7 n/ }7 i: @
<P><FONT color=#0000ff>/* converts date/time to a structure */ 1 K" Y. j0 i9 z, s% Q2 \/ I% s
tblock = localtime(&amp;timer); </FONT></P>3 u$ f* O7 ^, c. }6 ~2 F- ]
<P><FONT color=#0000ff>printf("Local time is: %s", asctime(tblock)); </FONT></P>. x% A2 B% p' R* A6 H; t
<P><FONT color=#0000ff>return 0;
# i5 x5 a6 d5 x# p} $ @- J( o" A' Y) _3 l

+ y: Y; K& o# \/ T* @. L9 r) B3 J* R' A) X5 Y% A
</FONT></P>2 {2 z( w) W  z4 {- H: m6 m
<P><FONT color=#ff0000>函数名: lock </FONT>7 ]6 Z! e7 }' V+ `+ I4 R
功 能: 设置文件共享锁
7 K! Z- b' d" z! n用 法: int lock(int handle, long offset, long length);
9 y' ]9 o6 S! e程序例: </P>( b2 Q2 L6 m  Y1 `7 i4 Y
<P><FONT color=#0000ff>#include <IO.H>* ?+ L' \& C5 e' D2 O! k
#include <FCNTL.H>
/ e4 k" d; E8 r$ ]8 E& t0 M8 b#include <SYS\STAT.H>, W- C# P- G8 l8 f2 \4 _$ o6 l
#include <PROCESS.H>& z: Z, x# B0 _1 |7 Y
#include <SHARE.H>
- m4 s8 M% _, p4 Y+ N1 V  g2 @#include <STDIO.H></FONT></P>
  h  \9 H6 f2 F5 p6 B) O+ k! n<P><FONT color=#0000ff>int main(void)
' l* G' ^! e8 U+ U2 ^7 m{ " O# `! n6 n. H* p
int handle, status;
6 ^7 t; }! _  E  A: A/ ~2 y  Olong length; </FONT></P>
/ ~. ~. D3 C6 E5 B<P><FONT color=#0000ff>/* Must have DOS Share.exe loaded for */
. ^& l& [/ S9 S# z' |) g/* file locking to function properly */ </FONT></P>
% c# P: c$ v5 J: f1 M<P><FONT color=#0000ff>handle = sopen("c:\\autoexec.bat", % M% N1 v! [9 m2 N/ I- z
O_RDONLY,SH_DENYNO,S_IREAD); </FONT></P>( T2 t/ V2 |4 W: z
<P><FONT color=#0000ff>if (handle &lt; 0)
, p9 n' _, G: y{
% J# Z3 s8 v5 ^; w& A7 kprintf("sopen failed\n"); ) K) `+ w' A. U2 J( i; `- h
exit(1);
% T+ ]) @6 e  J) r9 R} </FONT></P>6 p1 T6 _' [4 ]/ a8 L
<P><FONT color=#0000ff>length = filelength(handle); 8 w8 ]' m. Q" Z( ?/ {
status = lock(handle,0L,length/2); </FONT></P>
5 o: L" `+ q4 g! v( z( t0 j1 V+ ]<P><FONT color=#0000ff>if (status == 0) * e5 t# }% f) |! u' {# ^3 f
printf("lock succeeded\n"); ! Z- M% ]9 r: q& C: g, n
else 8 B; Z& x. p1 {$ ^" Y$ Z" h! a
printf("lock failed\n"); </FONT></P>$ j$ k2 |. G1 w; Z, K. I
<P><FONT color=#0000ff>status = unlock(handle,0L,length/2); </FONT></P>
8 r5 c" D2 e9 j* u, f<P><FONT color=#0000ff>if (status == 0)
2 \, i2 A7 R1 O6 a3 I4 gprintf("unlock succeeded\n");
" L9 k6 U6 F' C# T: ^else ( e. ^' H6 v, o' ?' y
printf("unlock failed\n"); </FONT></P>
' |- B% Z9 u- }+ a" ^" p<P><FONT color=#0000ff>close(handle); ' M: T' p8 X1 n% J
return 0; 8 D1 h; E  t0 ?7 R$ @9 x% H$ P
} * q) v  X( L" R3 g. E
</FONT>
& B! T) K1 @! B9 n+ q: m</P>6 v0 `6 }2 N. A4 E
<P><FONT color=#ff0000>函数名: log </FONT>
. K9 u5 u4 ~: x3 Q: ^7 `. _功 能: 对数函数ln(x)
4 i! K$ `" V2 L) \' J. J+ X用 法: double log(double x); 1 Z( A3 t# L0 N+ M6 T( L
程序例: </P>
, r2 s  {* {; o& Q+ W: r8 o<P><FONT color=#0000ff>#include <MATH.H>
6 z1 S9 k+ D* s  `#include <STDIO.H></FONT></P>9 L- d) G2 v  ]  X7 c2 `5 @9 t
<P><FONT color=#0000ff>int main(void)
- C% w- B& M; X. r& i6 W1 q{
) Y0 w) \+ S3 K3 w" ]+ h4 ldouble result;
  d! n8 X. J" S7 q, W# P; b$ [double x = 8.6872; </FONT></P>
8 {6 ?9 j% b- Y: S, Y<P><FONT color=#0000ff>result = log(x); " i( z  s- l0 L3 b" a
printf("The natural log of %lf is %lf\n", x, result); </FONT></P>
, u5 q  y- K' `+ u. B, ?+ ?<P><FONT color=#0000ff>return 0; % ]( C; _! ]. u. W3 n9 ]
}
+ n; n  P* c* x8 o
2 q0 f+ Y. R2 n  {$ S</FONT></P>1 ~8 {  r* y  O+ e. A; @
<P><FONT color=#ff0000>函数名: log10 </FONT>9 v$ ~5 A; c; q2 e& R
功 能: 对数函数log 1 Z* H0 R" R) h0 S+ T; w
用 法: double log10(double x); $ N. B7 W/ T# F: V# o3 y
程序例: </P>" f6 q2 g! b: L) [' k( H
<P><FONT color=#0000ff>#include <MATH.H>
/ Y  [8 A, A1 Q  A2 Y8 r/ \2 m2 X#include <STDIO.H></FONT></P>7 C) x; w% Y4 [
<P><FONT color=#0000ff>int main(void)
' g" R' Y/ N, F2 V{ 8 E+ h! |& z# ?- s) f, w; j
double result;
+ E: `, V' e  I2 zdouble x = 800.6872; </FONT></P>
: s* {9 S6 x  ~& ^! _9 [7 ]<P><FONT color=#0000ff>result = log10(x);
' q# T9 w: t( gprintf("The common log of %lf is %lf\n", x, result); </FONT></P>( z* Z( N5 B$ d
<P><FONT color=#0000ff>return 0; * a' v  J. U' d% u/ W) C
}
+ r- K6 u2 _' {  l  ]) k, w0 O8 R3 r: o: O
</FONT>
* I- E; w" N/ ?</P>
- S" m5 s2 C1 T$ V) R# `<P><FONT color=#ff0000>函数名: longjump </FONT>3 a' L  j0 w9 u
功 能: 执行非局部转移
/ {2 u9 h& l1 l5 `) S用 法: void longjump(jmp_buf env, int val); ( m5 o1 P) f+ e( k
程序例: </P>
8 b& f4 D4 \" i! D  }3 m* i<P><FONT color=#0000ff>#include <STDIO.H>
  Z+ U: c5 s; A4 a: P5 f, T  R* c, v#include <SETJMP.H>) I, d& r4 ]# a& a
#include <STDLIB.H></FONT></P># A3 z: _9 h1 Z' h( k
<P><FONT color=#0000ff>void subroutine(jmp_buf); </FONT></P>/ d' i$ j" a) X7 n% r
<P><FONT color=#0000ff>int main(void) % L* R# n' g4 v4 ?
{ </FONT></P>2 {9 Z* |# f! m. k; a
<P><FONT color=#0000ff>int value;
$ {0 L+ h# y! C+ I6 k- }  j+ [) Qjmp_buf jumper; </FONT></P>
$ v  m% x: }7 k; b# m4 u<P><FONT color=#0000ff>value = setjmp(jumper);
  b- u4 G% J8 y: ^if (value != 0) 4 {% S$ s( a  J+ M6 L+ Y
{
1 {8 C" t: o$ Rprintf("Longjmp with value %d\n", value); ) z0 r4 n4 x6 i* p9 V
exit(value); # c) |* ^# E: i  l* A
} " Z2 o, U! l8 a4 R; l
printf("About to call subroutine ... \n"); & C1 L* L. U1 D6 c5 z
subroutine(jumper); </FONT></P>
0 o' A* l& i/ p) y# u, Z0 S) }0 Y<P><FONT color=#0000ff>return 0;
! Z& d: d1 t2 q8 B1 t: n( K} </FONT></P>
+ m/ I4 r& z7 i( r6 n<P><FONT color=#0000ff>void subroutine(jmp_buf jumper) % z# q( D* B2 ^6 I: x4 @8 }8 p
{ ; U& p$ a- \* \4 y" R
longjmp(jumper,1);
+ A: E) _1 T3 e1 S8 O+ t2 _) x, Y  y% Y} 6 i- D1 Q  V1 s6 F! w7 C

7 }5 h* Q- B5 m$ }" m+ b2 b</FONT>
$ I2 d6 d6 X) b</P>2 S; C3 ^2 C+ |' a& D$ x' m1 i
<P><FONT color=#ff0000>函数名: lowvideo</FONT>
; e. ^) ^9 Q: I4 Y7 V功 能: 选择低亮度字符 ! [4 o7 ?  U( A8 i* t
用 法: void lowvideo(void);
4 x2 K  |5 h3 B9 @, |- V, ?* e$ B% p! X程序例: </P>
5 m  A0 B# O% B/ l$ I: a8 f<P><FONT color=#0000ff>#include <CONIO.H></FONT></P>; i  ^/ j! V, [9 E' ^
<P><FONT color=#0000ff>int main(void) 3 ^+ \6 o6 m# o, K
{ 9 R$ C% Y0 c# g
clrscr(); </FONT></P>
, J7 Z3 o$ B6 [<P><FONT color=#0000ff>highvideo();
  [6 x9 U1 S* R: q- N; Ecprintf("High Intesity Text\r\n"); , Y, A2 |1 A  o& N
lowvideo(); . H: r5 U' L& N& \) Y  Y
gotoxy(1,2); 1 n1 A$ b! G% j& v
cprintf("Low Intensity Text\r\n"); </FONT></P>
3 J+ Z- c# a4 [$ c* v2 B<P><FONT color=#0000ff>return 0; 8 N) b4 `% o9 ^3 I1 v
}
% s& a, v( O0 m
& _* A2 v0 h( W( t( y</FONT># ~7 T3 e/ D7 F$ K( C
</P>
' q4 p2 g) m& k  {( l<P><FONT color=#ff0000>函数名: lrotl, _lrotl </FONT>! f1 @  x9 `: {& Y6 z5 |- i0 X
功 能: 将无符号长整型数向左循环移位
4 R& S6 m, C  V用 法: unsigned long lrotl(unsigned long lvalue, int count); % x. w0 J3 |# L% x/ y$ T
unsigned long _lrotl(unsigned long lvalue, int count);
7 S1 q5 w2 d9 O" B程序例: </P>$ ?# E; p/ d6 K  Y3 d( q. g
<P><FONT color=#0000ff>/* lrotl example */
. K( C2 J* w6 i% b) w/ k% v#include <STDLIB.H>
; |0 C" x* A7 a1 y) c' d#include <STDIO.H></FONT></P>
% e( k+ }+ d, g- s  j<P><FONT color=#0000ff>int main(void) 8 V% f, a1 ~1 b2 i( t9 ?
{
4 j" Z. P1 f2 v* M' g2 Aunsigned long result; " x' L# M& q+ S3 O
unsigned long value = 100; </FONT></P>
7 i, I0 q, `  X7 n) Z3 t5 Z! d4 {/ o# S1 M7 I<P><FONT color=#0000ff>result = _lrotl(value,1);
6 p+ L9 j9 o( v+ Nprintf("The value %lu rotated left one bit is: %lu\n", value, result); </FONT></P>
, n3 m' d( w% _; ^: s- A9 a5 p) A<P><FONT color=#0000ff>return 0; ) t+ z( i7 B* |% h- b4 v
} 6 a; a% f. k- U* v' ]
</FONT>: g, G. q7 w+ q  m% P% w
</P>; g2 n! I; Q* p; A
<P><FONT color=#ff0000>函数名: lsearch </FONT>/ ~7 V% |- [$ Q6 C+ Y6 V
功 能: 线性搜索   ^# Z' p2 L8 I7 ~8 h
用 法: void *lsearch(const void *key, void *base, size_t *nelem, : Q2 p' K4 L; U# }: x
size_t width, int (*fcmp)(const void *, const void *));
% m$ s& i1 m) n7 r! D8 G7 F程序例: </P>
2 z/ u0 P# l  x3 {' K) ^4 ^<P><FONT color=#0000ff>#include <STDIO.H>8 R  Z2 ^6 _# E2 R) Z/ E4 e
#include <STDLIB.H></FONT></P>% ^2 c1 T( k. `5 I# M1 \
<P><FONT color=#0000ff>int compare(int *x, int *y) : Y  F( s8 G, e3 w
{
: v7 \9 v) E  v5 I) T0 I6 Rreturn( *x - *y ); 4 p5 [0 Z+ B  S
} </FONT></P>
+ g/ m0 O0 z" @2 f6 `" S$ S: b# \- P* n<P><FONT color=#0000ff>int main(void) ! {9 I  k: Z) q
{
3 Z& ^3 L- P/ f- r# \; Lint array[5] = {35, 87, 46, 99, 12};
2 c9 S" r+ t8 S; Z% Ssize_t nelem = 5; ! h4 h; G4 o4 U4 }& P
int key;
+ E- K" Y) G9 x) y" F" g1 _int *result; </FONT></P>2 v, D: H4 L; R8 S! I: H
<P><FONT color=#0000ff>key = 99;
# m( F6 p; y, W2 Mresult = lfind(&amp;key, array, &amp;nelem,
6 ^7 Y. D2 f. @* n$ }4 B  K, A% `; ]- Hsizeof(int), (int(*)(const void *,const void *))compare); ) R/ r) K- c1 ~6 Q* o1 y
if (result)
* B/ U' K$ g2 ]# K2 ^: B9 t. n0 Kprintf("Number %d found\n",key);
" `1 G# }1 J' o' Gelse
0 |2 E7 R, ^0 B5 Dprintf("Number %d not found\n",key); </FONT></P>
4 @1 y6 M4 a7 `<P><FONT color=#0000ff>return 0;
6 B" [1 `! G  Q. X- h5 T5 [}
. w; \. `; `& @, O4 g) b! e! a. L
</FONT>
" b4 b* a1 n2 v+ g  M0 F</P>
( u- z/ U- O0 i8 v8 H! U  b5 y) a<P><FONT color=#ff0000>函数名: lseek </FONT>2 Y0 \! G1 h& D9 M# G
功 能: 移动文件读/写指针 4 I% b& y  J3 e% X8 {+ E
用 法: long lseek(int handle, long offset, int fromwhere); / u) ?* S4 h9 Q6 y
程序例: </P>
! r5 u# y, \8 ]2 H/ t, w, y<P><FONT color=#0000ff>#include <SYS\STAT.H>) S7 p% \1 |( |2 N' B
#include <STRING.H>
! G( F  L: ~0 G& `. z' x. o$ E#include <STDIO.H>: P! R# Y! g9 I: {: O
#include <FCNTL.H>
8 A% ~; q, C8 E: u, b" `#include <IO.H></FONT></P># E( q8 g/ \+ R6 g/ E
<P><FONT color=#0000ff>int main(void) , T, U5 |  _4 R! L
{
, c) u6 f' a+ p/ w7 G( J- bint handle; ! D, c6 H4 o. k
char msg[] = "This is a test"; 4 g, |4 B$ p- o0 ?, W
char ch; </FONT></P>
% U& L( W/ b, l" o' j( P<P><FONT color=#0000ff>/* create a file */
9 h$ I( L9 {5 ~# F& shandle = open("TEST.$$$", O_CREAT | O_RDWR, S_IREAD | S_IWRITE); </FONT></P>
0 d+ {# D, f" B! \<P><FONT color=#0000ff>/* write some data to the file */
* t! q% n5 O, ~  E4 k  twrite(handle, msg, strlen(msg)); </FONT></P>
7 d3 f5 K% f$ [  L<P><FONT color=#0000ff>/* seek to the begining of the file */
6 @) m% N, E# g. s2 |2 ]) {/ vlseek(handle, 0L, SEEK_SET); </FONT></P>% S8 x' p# g! t- W# z7 u, ]5 ~
<P><FONT color=#0000ff>/* reads chars from the file until we hit EOF */
/ f4 ?0 o; o7 S- ^3 O0 r+ D, q9 Vdo # j, L& v5 m7 A
{ - ?2 o( J- D8 H3 r8 I' K2 v
read(handle, &amp;ch, 1); # u, a& {* s9 f# A5 G; Y' n
printf("%c", ch);
5 T5 ?& o  O, Y8 d0 i* T} while (!eof(handle)); </FONT></P>
. i( a- R0 I$ R) H<P><FONT color=#0000ff>close(handle); ; X) \& f& Z/ F* e& T' l2 p( W0 l
return 0;
3 u4 h7 t/ i7 s' J9 t8 p$ g2 Z} 7 o( G% }, f6 s/ R
</FONT></P>
0 K& k/ a: e  |4 c9 I' q<P align=left><FONT color=#0000ff></FONT> </P>




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