QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 9782|回复: 6
打印 上一主题 下一主题

基础c语言设计

[复制链接]
字体大小: 正常 放大

5

主题

5

听众

912

积分

升级  78%

  • TA的每日心情
    开心
    2016-10-15 15:49
  • 签到天数: 13 天

    [LV.3]偶尔看看II

    自我介绍
    本人较内向,但却有浓厚的趣味和好奇心.再之本人叫诚恳和朴实.缺点就是不多愿与他人交流.谢谢!

    群组江苏建模

    群组Coldplayers

    群组Matlab讨论组

    群组南京邮电大学数模协会

    群组西南大学建模组

    跳转到指定楼层
    1#
    发表于 2010-6-27 19:38 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    C语言设计谭浩强第三版的课后习题答案
    6 f$ W5 j- J2 A1.5请参照本章例题,编写一个C程序,输出以下信息:
    0 Z+ F6 u$ }; k1 W  _  G& X, x+ cmain()6 y) j0 R2 E4 [! K3 i" b$ C
    {
    4 U6 @7 u. }% D6 cprintf("     ************      \n");9 r! P: \7 I- R$ U5 K- `
    printf("\n");2 |' S2 ?& l6 Z. c  U* p, X5 R
    printf("     Very Good!  \n");7 O- Z! D8 r: I# _
    printf("\n");0 e' l2 `+ b/ i* \
    printf("     ************\n");" P6 f. `1 E9 H2 S9 p0 J( \
    }$ m) Z7 x" U0 f( V
    1.6编写一个程序,输入a b c三个值,输出其中最大者。' p: g5 D5 x( x3 H0 g, W' d
    解:main()
    * D/ X( @3 }& `/ L{int a,b,c,max;# i% [8 v  s* z
    printf("请输入三个数a,b,c:\n");
    / u4 h  {0 K0 T/ L3 I. Y2 w  xscanf("%d,%d,%d",&a,&b,&c);& h2 k/ m; V  V. _' N' A1 ^( ~5 }
    max=a;) S9 I9 M1 y2 i' s( s
    if(maxmax=b;. h! q! x7 Z# T3 h0 g8 d' A
    if(maxmax=c;; S" C1 w' \$ X# ~2 Z
    printf("最大数为:%d",max);2 T+ v& u$ ~/ B1 h5 \- I
    }0 ]3 g% W" C% D  u* W/ N
    第三章
    8 `  j6 t6 m( t/ ]/ N3.3 请将下面各数用八进制数和十六进制数表示:: F4 q# W6 S; m! Q
    (1)10  (2)32  (3)75  (4)-617# i% F' U1 u' ]' W; Z+ y
    (5)-111 (6)2483 (7)-28654 (8)21003
    ; t  R4 n) Q5 z解:十 八 十六
    / n; j5 S; R" K$ ~+ s0 A; D   (10)=(12)=(a)) x6 t; m% r  s/ W# Z2 i) s
        (32)=(40)=20
    4 h4 k4 [5 U/ L" r6 O' j; W  L" B5 I    (75)=(113)=4b
    ' n! A2 u" R2 s    (-617)=(176627)=fd97; h3 L# k! S8 T
         -111=177621=ff91
    # R4 J# ]8 w+ M2 F     2483=4663=963
    7 c, t, E5 W# M% u/ t     -28654=110022=9012
    3 b5 r! @" U$ @     21003=51013=520b
    1 n8 S/ x! W& T; v, {3.5字符常量与字符串常量有什么区别?
    ; y% p* `9 Q4 X8 O解:字符常量是一个字符,用单引号括起来。字符串常量是由0个或若干个字符
    & g/ [3 l! _( o5 U7 P  x) B而成,用双引号把它们括起来,存储时自动在字符串最后加一个结束符号'\0'.
    / U, N! k  [! _3.6写出以下程序的运行结果:8 A. j! |9 e7 g) e
    #include/ c3 a: J# P" h3 ^5 \0 R/ }& L. V
    void main()/ m- H2 d3 E' |7 {
    {
    7 r% C+ m; N( Z4 I$ N% _, `( R, W! jchar c1='a',c2='b',c3='c',c4='\101',c5='\116';
    " }- L  _' z" U3 W' oprintf("a%c b%c\tc%c\tabc\n",c1,c2,c3);
    4 t$ U- a  g+ [printf("\t\b%c %c\n",c4,c5);2 i2 ]7 E) {' Q. |4 X( {# {' Q
    解:程序的运行结果为:1 ^3 z/ X" q/ t+ [8 S& ]
    aabb  cc abc
    6 L- A+ m% F* f" M. l, N% s A N1 ?1 N! c# R) N) p  Q9 T! @
    3.7将"China"译成密码.密码规律:用原来的字母后面第4个字母代替原来的字母,2 q# M. c  s# o/ D' j0 v
    例如,字母"A"后面第4个字母是"E",用"E"代替"A".因此,"China"应译为"Glmre".% }: ?2 q2 O) y& G) L; V' {, V
    请编一程序,用赋初值的议程使c1,c2,c3,c4,c5分别变成'G','1','m','r','e',并
    4 N$ M+ ^/ v3 s$ I输出.
    , v$ |1 v+ Y: t9 G+ `- emain(). y  F" L% D+ Y- ^, @: I2 u! |: }
    {char c1="C",c2="h",c3="i",c4='n',c5='a';) p# _5 X" v7 }9 y/ [; _
    c1+=4;
    / J7 D  m4 L, Zc2+=4;
      B9 a3 ?6 J: lc3+=4;* u! N: n) [7 j) u! ?: E* g
    c4+=4;: ^, f  P7 `' H. n9 \# U+ k
    c5+=4;" M' p. l, l+ }+ ~6 E
    printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5);
    7 ]- O# N4 m+ h" j. H1 m7 u, M6 E}) P& ]2 ~3 x0 J4 A! N3 i, [1 R: b- F! G
    3.8例3.6能否改成如下:2 o6 a2 I# Y0 r
    #include
    8 r! J. W3 `- I4 u( K  {: zvoid main()
    " B+ c$ x- d9 L' ]' e{
    , w+ F2 Y8 ^( q- B0 S+ i- Tint c1,c2;(原为 char c1,c2)
    ( j0 Z) w1 w8 j( ?; ]c1=97;1 f0 ^4 Z& V. x/ W8 X0 D* F: |
    c2=98;. q% l! d3 K8 j3 i* }
    printf("%c%c\n",c1,c2);
    : P9 M" m2 f# {4 p) ]  j0 h! hprintf("%d%d\n",c1,c2);% R) i+ q2 v9 r! a5 ]
    }
    8 d- \% Z0 m+ T! ?1 ]0 @0 r解:可以.因为在可输出的字符范围内,用整型和字符型作用相同.7 C) O8 V5 X8 z3 y! `( m
    3.9求下面算术表达式的值., v( v: Z# e2 G
    (1)x+a%3*(int)(x+y)%2/4=2.5(x=2.5,a=7,y=4.7)
    + @* O, o" I, h5 n, Y2 P(2)(float)(a+b)/2+(int)x%(int)y=3.5(设a=2,b=3,x=3.5,y=2.5)
    / J* O7 ^; r5 u- F& c! U3.10写出下面程序的运行结果:! r6 b, t& q$ K; `( k
    #include- }$ ]! x; u: [# L  V( s
    void main()
    2 q  ?: w5 o+ Y( t6 @{4 W2 t$ D2 i0 g5 s
    int i,j,m,n;' N" z# S( j( f% h( y: O7 U6 f# B) N
    i=8;* h8 I; U1 M4 Y2 ^5 f
    j=10;+ y9 ^" ]5 c5 H
    m=++i;/ [% j: N; p9 |( F' C, f. ]
    n=j++;; ~( O# B/ c% f# X5 B/ N, I8 g
    printf("%d,%d,%d,%d\n",i,j,m,n);
    . [( c! O' n6 {$ J+ p  l4 H}
    # [5 L% {3 H) s9 I9 A' p解:结果:   9,11,9,10
    . v4 A. H; U  E: v2 {  D第4章" N/ S( U5 l" }  }4 D
    4.4.a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1='a',c2='b'.想得
    ! {" H7 ^/ P8 u& A; o. a& R* e# @到以下的输出格式和结果,请写出程序要求输出的结果如下:
    - _4 ?, T! ]9 Y) I1 C1 ea= 3  b= 4  c= 5, e( C1 f8 E3 N, R2 |
    x=1.200000,y=2.400000,z=-3.600000
    5 O$ N5 t3 {2 ^x+y= 3.60  y+z=-1.20  z+x=-2.40
    2 ?" ?, o3 H1 x2 |7 M  vu= 51274  n=   128765/ U; K2 L4 `; U* C2 b7 y: M
    c1='a' or 97(ASCII)
    ' G; Z/ P6 O# o) @8 n/ c$ X0 |c2='B' or 98(ASCII)+ b# a/ ^9 e, Z7 E+ I7 v$ ^
    解:
    * o) B# `6 X9 i" G4 o8 j# omain(); g, g! ]5 @& L- v
    {- x% S9 k; W" |
    int a,b,c;
    ) w1 {4 `+ W. Olong int u,n;
    1 K9 i- C: I$ N- Rfloat x,y,z;" X" q$ X0 H* a. S$ ?& I! v
    char c1,c2;7 g: z+ J% J/ n, x* K7 e, Z5 d
    a=3;b=4;c=5;
    % {: S2 M2 u. a& ?. E' \% Qx=1.2;y=2.4;z=-3.6;; m! J+ x& P3 C5 D' {' S
    u=51274;n=128765;! n9 Q" p% ?5 D
    c1='a';c2='b';
    9 ?2 O2 M* _4 qprintf("\n");  ]7 m: ?( o$ `, }1 w/ [# V) d+ U) p) L
    printf("a=%2d b=%2d c=%2d\n",a,b,c);; p. {3 h1 ?4 ]7 e
    printf("x=%8.6f,y=%8.6f,z=%9.6f\n",x,y,z);
    & ]/ J9 p; {' h8 L5 I, mprintf("x+y=%5.2f  y=z=%5.2f  z+x=%5.2f\n",x+y,y+z,z+x);
    ; g2 j; [5 d8 ~printf("u=%6ld  n=%9ld\n",u,n);! }; a0 [+ z* p9 z- i5 v5 W) {- i
    printf("c1='%c' or %d(ASCII)\n",c1,c2);$ Y+ s2 |% J) m, P* P$ f
    printf("c2='%c' or %d(ASCII)\n",c2,c2);
    ( ~3 c& I1 O! r2 U2 o. X; `}: {, K3 e" w" [) W  J0 W# J; b
    4.5请写出下面程序的输出结果.7 W( L' ]- b* G' d3 f. z6 ~5 @) [6 d
    结果:: l9 }" i" p% [& Z4 h+ k, J: T8 V
    57' E$ |/ W9 ^5 M' m5 J* Y
      5  7& x8 l' w* m8 Q8 |, U; V
    67.856400,-789.123962, g3 ~& u# ]) W
    67.856400 ,-789.123962
    3 q; s: Z& S% N5 u5 @- `0 n   67.86,-789.12,67.856400,-789.123962,67.856400,-789.1239624 Q% k9 Q; i- O% Z" R
    6.785640e+001,-7.89e+002- |; N: V2 l9 b" Y8 D
    A,65,101,41
    & H1 w+ [4 C: a. [7 ?1234567,4553207,d687% r9 a# Q# g: B) X$ `$ ?2 {$ s- S
    65535,17777,ffff,-1
    6 `$ a8 I1 n; n, r1 C5 L) s( }  X1 X& nCOMPUTER,  COM1 B7 M; k3 z* o' n0 c. l7 K
    4.6用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a',
    2 |, N6 g9 a0 o# |) ^0 c( I  _) M2 z; ~问在键盘上如何输入?3 _. O1 a. r. R7 F) _
    main()8 n, K" p; k/ J
    {0 z' L$ t: W" u$ z
    int a,b;
    : K5 {. s1 S( h1 C; N) r5 c: h, \# d4 Rfloat x,y;
    / Q0 J/ R$ V8 S2 |char c1,c2;. G" G- V- N" M8 @- `' D* E
    scanf("a=%d b=%d,&a,&b);
    " h$ H* f8 c5 H5 J) z6 D* J% Hscanf(" x=%f y=%e",&x,&y);
    $ w7 o1 J5 ^6 w/ H. k1 {2 mscanf(" c1=%c c2=%c",&c1,&c2);% N2 T& m! u0 Y) @3 X) @; S9 `
    }
    7 a) w6 X! r- g, M, X* S# G% a9 o解:可按如下方式在键盘上输入:( L$ t4 t! S. k& v
    a=3 b=75 E" @) x5 Y- a: X, `
    x=8.5 y=71.82. ~7 o' R# a, m2 J+ Y- S
    c1=A c2=a' }8 t1 O1 @3 ~& x( p& g' n
    说明:在边疆使用一个或多个scnaf函数时,第一个输入行末尾输入的"回车"被第二3 b8 e5 D. R& ~3 C& h
    个scanf函数吸收,因此在第二\三个scanf函数的双引号后设一个空格以抵消上行
    . @: x) I0 e; r) B) ?入的"回车".如果没有这个空格,按上面输入数据会出错,读者目前对此只留有一
    ; u) w4 L  L& t8 [初步概念即可,以后再进一步深入理解.9 j/ q6 E  S, J- w! L! X' g
    4.7用下面的scanf函数输入数据使a=10,b=20,c1='A',c2='a',x=1.5,y=-& h$ @& b* N' P+ V  ^5 R
    3.75,z=57.8,请问/ U' P( M7 K/ G9 o; n
    在键盘上如何输入数据?
      V" ]5 \6 R. n) \3 V* A8 f, Xscanf("%5d%5d%c%c%f%f%*f %f",&a,&b,&c1,&c2,&y,&z);7 {* N% v$ @3 A, f; H
    解:
    8 i  `" A1 E  a0 j, xmain()
    + ], Y+ o( e6 m8 m" E  X{7 d, k% ^0 E+ `$ H' [
    int a,b;! {5 K" n5 @! R! Y0 b1 M1 P
    float x,y,z;
    ' `. y* ]' }* G  K1 }4 y6 Uchar c1,c2;  _1 q, d5 S! x- ]
    scanf("%5d%5d%c%c%f%f",&a,&b,&c1,&c2,&x,&y,&z);5 g( {  S3 C5 n+ b
    }/ h+ t4 ^9 B" ]* z# r0 A$ p
    运行时输入:2 Z. _- E0 p; j
    10   20Aa1.5 -3.75 +1.5,67.8
    " ]* [+ L* u9 |7 v, l  u+ y注解:按%5d格式的要求输入a与b时,要先键入三个空格,而后再打入10与20。%*f
    2 j/ f( i# \% b5 q是用来禁止赋值的。在输入时,对应于%*f的地方,随意打入了一个数1.5,该值不
    1 `7 ?* }9 r  Z+ c9 S会赋给任何变量。' {6 B( s! Z  x+ _9 t
    4.8设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积,
    7 m8 |/ A) d5 C9 k3 C6 E用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后两位数字.请编( a( r' m! k( e6 s
    程.
    9 ]& L! l2 W6 p+ ?+ A& D8 c# H# K解:main()' X8 `% o3 a$ v  E' `4 v
    {
    1 G0 c2 G; x- B6 P. K6 v3 Dfloat pi,h,r,l,s,sq,vq,vz;0 T) |1 y- G) V% a  T8 g
    pi=3.1415926;
    8 s+ M3 O( L( i2 `9 }( Yprintf("请输入圆半径r圆柱高h:\n");$ V; e; }' d9 q4 G9 j
    scanf("%f,%f",&r,&h);1 P5 |! Y6 P! A# W% A' d$ m  N3 B
    l=2*pi*r;
    5 L; i* j7 j# B& q. i2 Vs=r*r*pi;
    & w9 i) k& h' [& hsq=4*pi*r*r;, @9 x0 U; ]# q# ~4 n
    vq=4.0/3.0*pi*r*r*r;: ]; N# w; `" T  U3 L8 S$ q
    vz=pi*r*r*h;
    ! z5 t) j) v; _/ qprintf("圆周长为:      =%6.2f\n",l);8 U1 G" V0 r8 y
    printf("圆面积为:      =%6.2f\n",s);3 x: E$ k' d" q
    printf("圆球表面积为:  =%6.2f\n",sq);' i0 C( p1 K+ T* U
    printf("圆球体积为:    =%6.2f\n",vz);7 _6 D1 A" n* g4 V: `& [
    }% y" @; m  \" h) z( f$ y2 F! v5 J
    4.9输入一个华氏温度,要求输出摄氏温度,公式为C=5/9(F-32),输出要有文字说明,4 ~: o9 z/ ~2 u3 W) j
    取两位小数.; ~; i0 h& P" P2 `9 q/ i
    解: main()
    6 Z- Y: r" y, B6 [8 H6 y0 q( U8 T{
    0 D$ b: X0 S5 ^: d! Afloat c,f;3 K! r& [1 m! Q2 e1 W: `
    printf("请输入一个华氏温度:\n");
    ( F/ ]" r, E2 t: c+ g0 gscanf("%f",&f);
    8 d9 x7 F1 k& Y% v: }  Rc=(5.0/9.0)*(f-32);
      O! k( ]. b( ?, I+ b0 S! Cprintf("摄氏温度为:%5.2f\n",c);* \, c( x2 R9 @4 K( o
    }. G1 C3 q. G( l4 [
    第五章 逻辑运算和判断选取结构7 H- Y8 F& D$ c" Y
    5.4有三个整数a,b,c,由键盘输入,输出其中最大的数.
    7 u( |+ v. u5 \main()
    ; @, @# N& }; q! P{
    ! D9 l% f. ^% V4 h" c$ m+ i% xint a,b,c;
    " p4 X& ^# d% E' Kprintf("请输入三个数:");6 [, J  R, C3 K8 s; {: d
    scanf("%d,%d,%d",&a,&b,&c);) Y% ~: E( V1 r
    if(a  if(b     printf("max=%d\n",c);& f/ r8 R7 ~3 [+ }, G
      else
    1 ]3 ?1 |! n9 u4 K8 w  Z8 L     printf("max=%d\n",b);
    ) E. s+ |& [0 P3 m1 d+ o6 o# helse if(a     printf("max=%d\n",c);
    % ~( {6 V$ U  U3 x- A* K  y( @   else
    & q$ D) {7 v) Y  a3 J8 m     printf("max-%d\n",a);/ `' ?5 |* z# n  ~0 A: i# J
    }
    & S3 u6 |; w. O: z* L方法2:使用条件表达式.* {0 y  d! y% N: S
    main()
    # J0 x: O1 W" ]9 u. M8 O{int a,b,c,termp,max;( x" y* u; i  G2 v' L# K
    printf("     请输入      A,B,C:    ");
    ( o+ R. r: V3 @! U% C% N scanf("%d,%d,%d",&a,&b,&c);
    3 F8 ?; C6 G: C+ y, l* z8 s printf("A=%d,B=%d,C=%d\n",a,b,c);
    4 ~, `. Z1 O2 C9 \! O temp=(a>b)?a:b;
    8 j0 y5 L! P$ |9 A( f$ I max=(temp>c)? temp:c;3 J" B; u  a; v+ D- R' M) |1 [
    printf("   A,B,C中最大数是%d,",max);
    4 K. x. J3 L; k2 E" C5 |, H}# Q& @% P/ T) I$ C* o# d0 M' p
    5.5 main()
    ; B; h+ ]0 u+ o& @2 X" h{int x,y;
    % o! ?3 G( _& ]4 o& x7 N, D/ D, Mprintf("输入x:");# N  H" ^4 d( _3 E' j0 G
    scanf("%d",&x);
    " o' p6 {% |2 Q* K8 H8 I. vif(x<1)+ E& O. \- a% j+ ^( @$ y
       {y=x;; B, T7 P/ }1 S+ o2 U2 ]/ ~
       printf("X-%d,Y=X=%d  \n",x,y);) E. Z* r- r6 f" A
       }
    5 A6 _, I6 T  f# U4 x" T1 ?else if(x<10)
    ' a; Z+ D. t. A- N   {y=2*x-1;6 Q8 K* d; Q- C7 f' y8 D
       printf("  X=%d,  Y=2*X-1=%d\n",x,y);
    1 u  _1 q/ h$ I: @   }
    : l- ^( W1 I4 A8 I0 gelse5 S5 s% R5 H2 V9 k, E3 {( f, l
       {y=3*x-11;2 V" K5 p: g3 A
       printf("X=5d, Y=3*x-11=%d  \n",x,y);% d( |+ c5 H6 |" U0 Z. ^
       }3 d6 S5 \: p/ M1 f2 {1 b7 N; q
    }5 A$ p8 ?. J% U. s7 f- C9 n
    (习题5-6:)自己写的已经运行成功!不同的人有不同的算法,这些答案仅供参考!   
    ' ~7 b# T3 w* u5 }+ n7 vvoid main()
    ; y* C/ G, x+ G/ c( l4 \( j5 T{
      g! W# l$ q; ~8 f% l# H6 \float s,i;
    5 z7 f5 m& b0 T: g4 uchar a;" M3 |+ j) W) n+ P% m+ B1 R
    scanf("%f",&s);
    ; t. N. Y9 D2 X- B# Q+ c; |( ~while(s>100||s<0)
    2 Q% a  h, G' w& p* r{
    5 w: C+ C- ]+ W. y! Hprintf("输入错误!error!");7 L' d6 y% K$ ~  G4 k3 y
    scanf("%f",&s);! K1 T/ A; F! ]' X
    }- {& y. F; t, z2 h( H  p
    i=s/10;
    7 V9 b% Z# I" Pswitch((int)i)9 \% P+ C$ @8 K0 B! w3 o1 c
    {
    4 K5 K1 y% o$ i9 o1 ecase 10:* n' x3 M% K& Z$ x" `& w( [: ^; ~
    case 9: a='A';break;
    6 N% l1 P; x6 bcase 8: a='B';break;
    . k9 I. o  s( S. Ccase 7: a='C';break;
    + C' C: V3 {3 o) L: x% dcase 6: a='D';break;
    , j3 W4 c6 D! L) k3 y+ ~/ `- p* D& Ncase 5:
    2 B5 j: N; ^0 U4 m, u# w& G* Lcase 4:% M- R; x  O+ F2 m7 ]& T9 F: f
    case 2:: o: P- [7 o1 }* w) _( A) g
    case 1:
    5 `7 R8 h- J1 Y" L' Ucase 0: a='E';2 r* r% G# V; |9 u% D0 O
    }: A  {. d/ e1 m1 x
    printf("%c",a);! j" I* F8 J- w4 t; m  G! k& j
    }
    + k( [( b9 S' L! w5.7给一个不多于5位的正整数,要求:1.求它是几位数2.分别打印出每一位数字3.
    & Y9 a! O) {7 |% U按逆序打印出各位数字.例如原数为321,应输出123.
    - t4 W9 z( h3 U2 x  `& F* w9 dmain()
    1 h$ ~+ {7 F; s9 m& c0 S {
    & Y6 o. C4 m0 H# c/ H' E2 t long int num;8 x* A: e  u9 a0 T# l, m% e7 A
    int indiv,ten,hundred,housand,tenthousand,place;
    , f& X) Y8 \6 Y% C8 F6 Q printf("请输入一个整数(0-99999):");
    $ A& k0 H% m6 M& H) H1 [6 [9 o scanf("%ld",&num);
    3 E; q2 u1 b5 K1 W if(num>9999)/ G; U$ I0 X* p1 c' E
    place=5;
    ; g! D) g1 m! s7 velse if(num>999)
    & F2 j/ [' G5 R1 E& r6 J% P place=4;5 O8 w" J4 M( l2 l9 |  k
    else if(num>99)
    9 b# y5 Y( A, m( S+ g6 Q* j- k place=3;& }: Q& m! }, s; k2 J
    else if(num>9)& \& U7 b/ V$ A
    place=2;
    5 x* g0 A, Q: H$ I7 M' k' _+ eelse place=1;. t( S" q% |* r- f' [- G9 G
    printf("place=%d\n",place);
    6 {1 b! W  G  n1 M9 ~1 s6 `% Cprintf("每位数字为:");' W+ W+ v' y6 q" k* H; \
    ten_thousand=num/10000;
    " J. |$ m. A/ W" Vthousand=(num-tenthousand*10000)/1000;
    ; p7 M* Z. D; a) `hundred=(num-tenthousand*10000-thousand*1000)/100;6 P' S3 f1 t3 J/ d/ n% G3 D- @! V
    ten=(num-tenthousand*10000-thousand*1000-hundred*100)/10;. a: ~' Y6 w# J; T" ^2 F
    indiv=num-tenthousand*10000-thousand*1000-hundred*100-ten*10;
    ! D0 r$ ?. z" [& u. p$ x6 r) pswitch(place)
    7 o! R( |- \4 F{case 5:printf("%d,%d,%d,%d,%d",tenthousand,thousand,hundred,ten,indiv);
    + w' n7 X" E+ g* c5 p  T( n6 k: O printf("\n反序数字为:");
    8 Q" U0 T8 f$ A2 ~+ v1 s printf("%d%d%d%d%d\n",indiv,ten,hundred,thousand,tenthousand);1 [+ u8 H& S0 \! z/ n
    break;4 G9 [% D: c; `9 S9 I
    case 4:printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);
    9 E" U# x/ i8 `7 F printf("\n反序数字为:");- G: J5 V# g( \# z) A1 s
    printf("%d%d%d%d\n",indiv,ten,hundred,thousand);
    ! z5 w5 v1 j+ S+ d' A* V break;, ?& {: i7 [$ Z3 U* K  C
    case 3:printf("%d,%d,%d\n",hundred,ten,indiv);! M. q- [7 x7 F3 G( W& W' W. c
    printf("\n反序数字为:");
    9 K5 S1 r# }+ T printf("%d%d%d\n",indiv,ten,hundred);+ R! R2 A0 \& k8 s* t3 ?- \. ?( S* N
    case 2:printf("%d,%d\n",ten,indiv);# A6 a; t4 k# T( J+ H6 p- x( H, ^
    printf("\n反序数字为:");5 H; W) L; J# I" Z
    printf("%d%d\n",indiv,ten);3 a/ K6 i3 _! V% i9 B( x
    case 1:printf("%d\n",indiv);2 {2 n! d- r+ C# H4 d& ~
    printf("\n反序数字为:");2 G; b5 S/ a6 B5 t5 _: {# x# X
    printf("%d\n",indiv);+ i: X8 C6 g+ U1 v! n, H! |
    }) d, a9 n/ B% V" O: d: H9 J! |
    }
    % c1 |6 `" E" f( p6 X) _5.8
    $ W* x- ^7 A3 V" ~$ F  m9 ?1.if语句
    5 }+ p! G, ^% _. d* q1 N! @  X! zmain()- h, s, e3 N* W/ p5 e+ ^* f
    {long i;% j3 @( e" E* G+ Q3 H
    float bonus,bon1,bon2,bon4,bon6,bon10;+ |# e* r/ U2 B3 a+ @! N
    bon1=100000*0.1;& i- {0 M) c8 N& l! D
    bon2=bon1+100000*0.075;
    0 K4 T; @* o' [2 u( T, [7 ^; n bon4=bon2+200000*0.05;# r( b$ N( m% \- o8 E) i! a
    bon6=bon4+200000*0.03;- y* R4 u! ~5 W
    bon10=bon6+400000*0.015;
    , T0 `3 [' Q1 y/ E/ Y scanf("%ld",&i);
    % w6 n- |8 J( C if(i<=1e5)bonus=i*0.1;
    ' H/ x3 L7 E7 c, U1 S9 q3 B/ |  r+ {- i else if(i<=2e5)bonus=bon1+(i-100000)*0.075;) k! q7 K& j8 ~8 A- h
    else if(i<=4e5)bonus=bon2+(i-200000)*0.05;
    ' \& ^8 E, H0 C4 C. @ else if(i<=6e5)bonus=bon4+(i-400000)*0.03;1 p2 \* l& b8 b+ t) v
    else if(i<=1e6)bonus=bon6+(i-600000)*0.015;& C# H$ U0 k% _( ?
    else bonus=bon10+(i-1000000)*0.01;/ y" N; l" V& \  V! H4 T9 |
    printf("bonus=%10.2f",bonus);
    : x9 u2 W. F3 B) O}) Y6 [6 [- t7 Y" e
    用switch语句编程序! A; q; j# ^5 |# @! \
    main()
      E1 S8 Z, v- s" }) f, z{long i;$ Z  q) D, p; ?4 e$ H
    float bonus,bon1,bon2,bon4,bon6,bon10;2 x. C  c* m+ y1 U9 A
    int branch;& G$ I) ^- i: `5 m
    bon1=100000*0.1;4 V9 {# K3 V$ l" `
    bon2=bon1+100000*0.075;7 V/ f7 s& j: l. r" U% c
    bon4=bon2+200000*0.05;
    6 y) e& P9 C  ~" s  d1 X bon6=bon4+200000*0.03;
    5 r6 _4 T  E4 S% i3 a: l bon10=bon6+400000*0.015;# f6 _) u: K0 a, i  [" i
    scanf("%ld",&i);: U& V+ }) b' D- a
    branch=i/100000;, p( i1 ~- d; _) c- H: {9 \+ p1 d$ K
    if(branch>10)branch=10;0 a2 `& y) \; L# n; y
    switch(branch)& c  }! E5 E+ Z
    {case 0:bonus=i*0.1;break;5 U  W; w! v7 r% }
      case 1:bonus=bon1+(i-100000)*0.075;break;# j" \( \1 H+ a7 o5 n, w
      case 2:/ |; R* z+ o- [7 ^& I9 L7 j
      case 3:bonus=bon2+(i-200000)*0.05;break;# F9 Y' k/ X# L* Z6 |! X: W; h
      case 4:
      D& W- k# y# L: g8 A( J2 R  case 5:bonus=bon4+(i-400000)*0.03;break;5 V8 i& e; x1 ]+ O% y* r0 J3 ]
      case 6:  N9 k' C  H  m( ~) \
      case 77 L/ q0 w: q2 ]
      case 8:" H* q0 e% C7 d, i- {  H) A
      case 9:bonus=bon6+(i-600000)*0.015;break;! t* L! j" P, o! p& }) p8 e
      case 10:bonus=bon10+(i-1000000)*0.01;% e& m9 N/ k' Y( ]6 H" H; E
      }% Y% z3 \1 g- ^
    printf("bonus=%10.2f",bonus);; y" W' W, x1 ^6 F
    }     
    ) @0 R3 d3 H6 u, `9 U9 C( R5.9 输入四个整数,按大小顺序输出.& p) C. t: Q0 Y! i
    main()
    ! E% |# S& s; p' q4 W  {int t,a,b,c,d;
    ) `% N# G6 x2 H5 I+ b+ U  printf("请输入四个数:");/ L# s; K8 }( m; e3 ?1 q6 P7 Q
      scanf("%d,%d,%d,%d",&a,&b,&c,&d);
    7 P& S- y6 P& n* q  B6 K' @  printf("\n\n a=%d,b=%d,c=%d,d=%d \n",a,b,c,d);
    2 A- c5 P9 b  O; m% M  if(a>b)+ ~, E- D1 Y# S: v; q
    {t=a;a=b;b=t;}
    6 X; W6 b2 A/ u! Q1 v) @7 G  if(a>c). s! @( u' u+ G: C# E; I
    {t=a;a=c;c=t;}
    ' c6 M# {8 L' Q( V( c+ a/ j  if(a>d), u& G5 u. t# J7 P
    {t=a;a=d;d=t;}  p- G' Y* c( n- u/ o/ g" Y0 V
      if(b>c)
    , m& M0 |5 u( e2 }! x* H$ c {t=b;b=c;c=t;}$ ?! s& z  A3 x2 N6 {
      if(b>d)
    ' @5 U, Z* A! O( ^0 Y. P7 z% G {t=b;b=d;d=t;}7 X, U2 t" m; w* d+ N+ x
      if(c>d)3 [- H2 H; m! Q, h6 z& x
    {t=c;c=d;d=t;}8 R8 [3 P* E6 J: ^  K0 V
    printf("\n 排序结果如下: \n");
    " W5 P4 |4 T! U& T: T. o' ]7 y& [printf("   %d  %d  %d  %d \n",a,b,c,d);
    2 H* H2 W1 A( @}
    ! H" y7 i/ v3 v) k- `3 V4 l5.10塔; @: D( ^; v2 I# |+ x  b4 k
    main(): ~4 s4 O$ \. h9 H
    {/ k9 v2 |) f! Q0 C7 A4 I& t, v
    int h=10;
    2 a# Y5 n7 n; [) _float x,y,x0=2,y0=2,d1,d2,d3,d4;/ y  K  ]+ N3 w  x
    printf("请输入一个点(x,y):");% O/ t9 h4 P: B* x  G+ _
    scanf("%f,%f",&x,&y);
    * S, C/ o$ }: A! c" m" M$ Md1=(x-x0)*(x-x0)+(y-y0)(y-y0);- V2 T7 r' l" V0 m7 f: [
    d2=(x-x0)*(x-x0)+(y+y0)(y+y0);& f& X, F) K/ z' g% _! o" m
    d3=(x+x0)*(x+x0)+(y-y0)*(y-y0);
    " z" D+ J9 V( wd4=(x+x0)*(x+x0)+(y+y0)*(y+y0);7 E: C9 S! p- |! P# D2 L
    if(d1>1 && d2>1 && d3>1 && d4>1)( [7 `, I% R: a
    h=0;
    4 E$ \2 e" Z9 t- B5 wprintf("该点高度为%d",h);
    ) n7 R% ?- M0 H# y* ]2 T, g}
    3 D. r( \) s' {! k0 e第六章 循环语句
    , Q6 x) ]: U' G; |! `6.1输入两个正数,求最大公约数最小公倍数.- A: n7 d3 `7 c5 M! a
    main(); T& W6 m8 I4 k1 r# N; t7 i$ w
    {* V5 _4 C! s  t7 F1 v
    int a,b,num1,num2,temp;- d7 i" {* N  `7 z
    printf("请输入两个正整数:\n");
    1 p8 F. q' Y& g& a: C: gscanf("%d,%d",&num1,&num2);
    , P4 k7 v; C. T4 j& l" ?, Qif(num1{
    / X# \# q; V* j" Ktemp=num1;
    ; ]# h6 M: D" t2 V6 Z. Q3 |, n/ O9 ynum1=num2;
    ; ~3 W. W4 ?8 V: w% C4 Qnum2=temp;# S" P$ H+ s  U" z  @
    }" I) Y  T7 U" X1 @! i0 J7 ?3 k
    a=num1,b=num2;& l! z3 ]  j0 |" ]. r
    while(b!=0)
    3 R: ~& G& j) [% p4 I  {# [: Z8 d$ ]* P3 q' B
      temp=a%b;7 s1 r  M2 P8 D, J
      a=b;1 F  `- e1 I( c) B$ W9 W
      b=temp;
    0 Y! D( c8 K2 ~: `% z+ y  }8 E8 h0 K6 U) ]
    printf("它们的最大公约数为:%d\n",a);, U" \( f( w' q4 O. G1 B9 j
    printf("它们的最小公倍数为:%d\n",num1*num2/2);
    & p; F+ @* K7 k4 W}( }) y) }$ b; c0 P7 n) B
    6.2输入一行字符,分别统计出其中英文字母,空格,数字和其它字符的个数.
    " k& f; `& H% f# z解:
    : d& t- S& p3 m& d6 ~5 Q#include <     >
    1 Z% P3 p# i0 z) [5 K& Vmain()3 P/ n. o, ?1 Z$ e$ |+ s+ T
    {
    3 t( A! T0 d( Z, n. r- N/ {char c;! J+ S1 ~3 Y( W2 Y% g. Q* n. c
    int letters=0,space=0,degit=0,other=0;9 J3 y. p. H; U- n4 A# H- e! c
    printf("请输入一行字符:\n");0 s3 \; l8 B( j: q8 E) ?% C: t
    scanf("%c",&c);' B. _- V% T- V: [1 _, t6 ^1 ^+ M
    while((c=getchar())!='\n')4 P/ t2 t6 E4 d. R1 Y
    {
    7 `' K  h. J2 V! [5 Xif(c>='a'&&c<='z'||c>'A'&&c<='Z')3 }! {, O- D1 l5 Y- t! k
    letters++;
    ; V$ |. \" v* ^4 Z7 Qelse if(c==' ')
    ! {6 f- @) m$ N6 V) M& dspace++;$ k* D. V- W& `
    else if(c>='0'&&c<='9')! w7 Z- X! W# _
    digit++;# N/ l# B! Z! B1 u* I* a
    else
    . G6 b1 f) M: D2 R8 P! P& L1 Lother++;
    ' g! ^+ B* Y* L) x5 r3 b: o}( |5 @/ l5 z" \- I; s0 }4 ^3 F+ [
    printf("其中:字母数=%d 空格数=%d 数字数=%d 其它字符数=%0 t6 e  D- K0 X, k' S
    d\n",letters,space,' K, X6 m* `7 I! i% L- c# ^
    digit,other);
    - @1 [$ h3 M  `2 t# x4 D' t}2 e! I1 W! E$ E3 v8 ]" B9 o7 k. `3 Z! ^
    6.3求s(n)=a+aa+aaa+…+aa…a之值,其中工是一个数字.
    " w8 Z& W6 T$ x  _解:9 ?9 i0 P" ~9 ^2 r
    main()" q3 j$ ~( I/ \5 g7 S5 S& d
    {
    ' C3 u2 S/ i) O1 Uint a,n,count=1,sn=0,tn=0;7 E$ C, O# _2 P. ?# y
    printf("请输入a和n的值:\n");! R1 z7 G* Z  u- Z0 m" i
    scanf("%d,%d",&a,&n);
    ) ?+ \, o$ L- s; q8 s- bprintf("a=%d n=%d \n",a,n);
    0 y0 Y$ B+ Q! f. `* E* ^while(count<=n)# J7 `$ T8 m& v) T2 U( z0 M1 E
    {
    9 w" a4 ]- |8 Wtn=tn+a;
    / f0 K) g4 \+ w& y! s2 h! M, nsn=sn+tn;
    8 x$ T1 j7 ~( ~4 p' A, xa=a*10;6 i8 f4 H4 N' f  f2 @
    ++count;- D% _! }0 }; u) i) d3 y/ R. h
    }# m3 N! F5 X& a$ ~- S9 N0 T
    printf("a+aa+aaa+…=%d\n",sn);2 |# R) T% Q3 Q, x0 y7 [. e1 U8 q+ r
    }+ X- o, B2 ~& a) \
    6.4 求1+2!+3!+4!+…+20!.
    $ [9 v8 t# {2 Y3 `: |' ]main(); `) ^/ p: @$ J/ }
    {
    8 B: A) R) J( G! O2 u! ^float n,s=0,t=1;
    ) ?9 P4 G: \, ?1 R4 H- Ofor(n=1;n<=20;n++)
    ' o1 D! E5 \% }, t4 X{
    # L5 _0 I2 k! b" ?t=t*n;2 |- \( `1 o( R4 J4 P& Z  }, Q  i
    s=s+t;0 B# _( B  x) s& R0 `
    }  N- k! I6 s. L! x' G  k
    printf("1!+2!+…+20!=%e\n",s);
    0 V" `1 ~) D: i: M! F1 z8 z$ K}8 g' c: m* Y9 M9 r/ O7 D
    6.5 main()
    1 G$ Y( y  K1 u* V{
    $ Q1 B7 E$ C/ f% a7 M) U8 f1 ]. x' Cint N1=100,N2=50,N3=10;. J$ `6 G' F1 U3 `0 t1 |# e8 e' h
    float k;! T* j! O  g2 m) a* L, v
    float s1=0,s2=0,s3=0;
    # |1 b8 a6 Q0 ?. Y. g- bfor(k=1;k<=N1;k++)/ H' B/ u! l, q% [  @
    {
    ! [1 Z8 K5 M9 m( i( H# Ks1=s1+k;
    8 k2 Z8 E$ c3 v: s+ ^/ _}
    2 Z# D7 R' G1 g# U% Lfor(k=1;k<=N2;k++)6 ]' ~& m6 j8 B- t' \+ l' E
    {$ x5 r. p5 s! o' H0 a5 O/ \5 j- K
    s2=s2+k*k;4 I" }0 N( X8 q7 H
    }0 s/ k9 ^, h' I& A- I3 Y/ t
    for(k=1;k<=N3;k++)
    ( j" }& T( l0 Y{
    " h' Q" ]1 H6 J, Q2 V/ `  h) ts3=s3+1/k;
    ' r4 I, m% R- P* D0 Y, G) R8 p( g}$ _, a. q7 A! i; d& d
    printf("总和=%8.2f\n",s1+s2+s3);+ v  l+ l3 a, e+ z3 F. {: i( l
    }- j. I2 t$ E: c- `
    6.6水仙开花
    % K& r( E# \* Q4 ?main()% G# o; H! E9 m3 X
    {8 i5 a2 [7 k; g) }
    int i,j,k,n;) V3 ~1 J) l- I, W- c. w- `/ Q
    printf(" '水仙花'数是:");  @( ~& ]& G8 K1 G' G( ^# h
    for(n=100;n<1000;n++)
    + W  S- R, ]$ h4 {4 ]8 ^( {) W( `{; k' _6 ?6 e8 a  Z  I6 y: f
    i=n/100;
    ; Q5 Q0 n3 m& M: u0 Tj=n/10-i*10;  `+ c6 M, z8 k/ S
    k=n%10;
    . ~0 h/ C' v8 o; _if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
    4 n: C! @) ?/ N{! x7 W; @2 p4 ^  Z8 F' O; d
    printf("%d",n);
    9 R, ~8 L6 f$ g5 Y}- h. l; O$ G. r2 A6 u" e, F
    }
    ( \' @. j1 u$ Cprintf("\n");
    * l+ V. b6 Y; b- h! D1 D}3 P  C" l# o+ ?
    6.7完数2 ]: `) k+ c. b+ j2 o; t
    main()
    5 T* o! n; B; h5 J% D! l#include M 10008 I6 ]/ ?! e- q  w5 v3 M
    main(). n- p' i  q9 d
    {) a0 J: V& X3 P& ^! ~8 x$ [
    int k0,k1,k2,k3,k4,k5,k6,k7,k8,k9;
    8 q0 [6 a* H6 b0 p4 f7 |3 w( Sint i,j,n,s;
    ) N2 k* u; g6 J& pfor(j=2;j<=M;j++)
    " B7 Q% n6 `- I4 T{
    / e. x; J' z5 ~n=0;+ }- h! J& Y8 g( T3 ~! Y5 f4 o- ?
    s=j;4 ]* q  I* n2 |* i% s, X
    for(i=1;i {
    . }! z/ F+ z: zif((j%i)==0)1 b$ t' Y/ _3 x) `! S
      {) o0 K5 b, q/ x! V2 r
        if((j%i)==0)
    . _+ O7 O8 \/ h  U      {
    $ O$ Y- M8 j: ^- ]     n++;5 S1 l) T7 v. M( k, P* P
         s=s-i;
    / m, G- {5 k, b1 p     switch(n)
    % v, z- ?5 Z- Y4 U4 l2 T      {
    - S0 \8 U. r) D3 J       case 1:  u( P- h  ~) J1 b) M: |$ t
    k0=i;
    3 Y( c0 p  B% I+ z) ?# N break;
    ' }, N# D% `. Z# W case 2:9 F! ~8 I  s+ u4 _" X
    k1=i;9 H# O5 W" R$ K  q6 ~( q  E
    break;. R- c8 l" O. N% w  \0 a
    case 3:
    $ g5 j" Y  A7 _3 T# v; A, v/ g' f k2=i;
    8 ?6 U+ {  \& m1 n break;; l( c! {9 `+ ]1 D. S) H2 M; y
    case 4:
    % r5 S9 }1 Z" C; X% g k3=i;1 D" @) j9 O# a% c
    break;
    / G% J3 O, w6 S4 x8 a6 N case 5:
    " c9 _3 T1 Q. [ k4=i;" v+ o, v0 @8 W( p( _) Q1 K
    break;% W* {! h! {! x' @' M% y7 y: f2 L
    case 6:
    + \" ]& d  N$ w. R: w k5=i;' ~4 r1 D) |# p9 W. O
    break;* t, w- ~( @6 D( |" A4 {
    case 7:
    % Q  i5 K% m' d# n1 r, X+ \7 t k6=i;
    * t; R! n$ J" _: e break;, G$ H( W! s) M  I
    case 8:
    / ?1 F0 Z+ p# S; J: \( x k7=i;
    / g9 \3 ?) t8 ]4 i% j1 z  D break;4 |! @9 a9 U$ F" P7 x
    case 9:5 B% {. [$ O/ f: B' c; r7 Z
    k8=i;1 M* ^- H1 @- b* o, O
    break;
    ! d$ n* M( Q1 n case 10:) z2 i2 ?3 `* @; h7 ^0 O4 X% L- G+ S
    k9=i;
    2 v  b0 E8 z2 G9 P! e break;
    4 r7 |& v  J9 V5 E4 v) B }! D+ a1 f! S3 z) ^( N5 y# A
          }
    ( z, g8 j6 \& r6 K   }
    * T: `# ~/ W( c( {! Tif(s==0)
    1 G; k/ y' _9 Y2 K- c   {. J0 c% Y! ?1 R
    printf("%d是一个‘完数’,它的因子是",j);! D2 d- q& O  ]* l8 f3 S
    if(n>1)- q+ Z7 y; R  p+ b/ O3 D0 `0 ~
      printf("%d,%d",k0,k1);  K$ u& w! S5 E/ O7 o9 h' ?
    if(n>2)
    0 m6 s: {& n) v& Y  printf(",%d",k2);8 `' \) A- A( i5 B- G: x3 c6 j9 b
    if(n>3)+ p' W; O* v) @+ w" n6 ^& B
      printf(",%d",k3);
    9 d4 Q$ W4 m# T1 K6 Xif(n>4)
    % S* M' \4 ^! g( F. p' e  F% x  printf(",%d",k4);# e+ R# ~( x0 `# A8 M
    if(n>5)
    " j9 {" d4 t3 L5 j$ W  printf(",%d",k5);
    . G* v& _6 N/ Lif(n>6)0 [4 w' y( B# {9 k4 u1 v
      printf(",%d",k6);
    ) p: l6 T) }+ |4 w; G/ Qif(n>7)2 V8 A; Y2 X# R/ F7 M1 [/ u+ Z# y' I
      printf(",%d",k7);% Q1 g4 Y; l9 b
    if(n>8)/ _9 R. p% X: B6 G( [3 F
      printf(",%d",k8);
    / s; n. M; N; b1 s1 X6 uif(n>9)
    4 G  y, _/ R+ X; s& |+ k+ s3 a  printf(",%d",k9);
    9 V! G. B8 W7 d& p+ e& K' bprintf("\n");
    0 [. P, V# r) @5 a4 p  }* Y* N2 ^0 E& M- q& X2 h; a8 U
    }
    ( Y9 X* a" e) v2 H. i方法二:此题用数组方法更为简单.
    9 U6 B6 X; W/ X$ y5 tmain()  i4 G/ W) @) t9 ?4 L
    {
    $ F, Z( U8 X4 s0 Z( J' x$ Lstatic int k[10];9 _- M1 X$ S' C* K7 i
    int i,j,n,s;3 {* V" ]$ k. E# K0 t  p. P1 ]1 I0 H$ v
    for(j=2;j<=1000;j++)4 g9 ~% u/ H; k1 }- ]$ i" u0 R
    {
    + \' t) _. F7 I! ]" Qn=-1;
    ( s+ U. ~: B' p4 h* Rs=j;' W  e8 g% N9 R+ a* G
    for(i=1;i{# D- z' l0 {, W! a4 S6 h* i
    if((j%i)==0)8 b5 J) n* |6 M+ P9 x4 {& z
    {
    + I3 j8 H, i8 ]5 z9 dn++;
    + ]* B" w# z: w( ]: Os=s-i;
    5 G1 N, b$ o' x8 C; `3 xk[n]=i;
    ) i- A0 k9 ~  x6 j3 h% L8 l+ m   }& v! p8 q7 t" J% n+ O1 `$ w$ U
      }
    2 x5 L( S- @8 p  `1 L8 L& B4 Xif(s==0)
    6 }0 s7 p+ U9 I{
    0 c! k. N  e7 a. Lprintf("%d是一个完数,它的因子是:",j);% M; O: N3 P7 T5 w
    for(i=0;iprintf("%d,",k[i]);
    5 R( y, @1 ]4 Lprintf("%d\n",k[n]);# N  [2 Q3 V" p) w6 @
    }
    2 N6 B- p) a8 C8 c}
    0 z" r4 d4 ~. k# }. }# y" N6.8 有一个分数序列:2/1,3/2,5/3,8/5……求出这个数列的前20项之和.
    % R0 V( D  n9 I解: main()
    2 O  Z- P7 R" ?+ Q+ ]/ S2 g{% R+ I& K3 a$ l+ Z+ h9 m! U* w/ G+ j
    int n,t,number=20;
    " P  Y+ A; a: d3 N  |7 D2 Cfloat a=2,b=1,s=0;" ~% w# r, D( @) {5 x- `/ e: Y
    for(n=1;n<=number;n++); u9 v) S4 V) ?2 r
    {4 @- F% o2 v' b6 m( q& F5 V# S6 w
    s=s+a/b;0 s7 H0 l, b/ t* y: o+ P; T" M+ a
    t=a,a=a+b,b=t;- M* v7 r) i- ]7 u# d
    }/ [. g) F: d& i
    printf("总和=%9.6f\n",s);
    - w8 `7 F8 z( R. f0 }- g2 Z3 W}
    & g2 A% ?1 \  Y* o+ O6.9球反弹问题1 n  P, R8 N$ d- l& Q
    main(): ?* M# \1 }. {
    {2 f+ O( f) b( r! R2 n
    float sn=100.0,hn=sn/2;
    7 G+ i0 j. u' dint n;
    4 x- t* h0 l8 s! r# ifor(n=2;n<=10;n++)
    $ d9 e6 p! E7 ]( B4 \0 f& Y! u: w{
    1 Q- @/ v+ q4 n2 D& msn=sn+2*hn;. U$ A4 ~* U, j! h1 d2 F% W
    hn=hn/2;  C1 d0 l+ h% m: G& u+ m
    }
    + r$ Y- b7 o( ?" U. j" Iprintf("第10次落地时共经过%f米 \n",sn);1 \1 K" a# x: L% p# |0 `) `" ^
    printf("第10次反弹%f米.\n",hn);( V1 h4 y% F$ c7 _
    }0 ^7 p+ G$ _9 H1 o1 L, k
    6.10猴子吃桃( M( F$ ^; E* Y
    main(); Q) q  ]3 N/ {# W5 u) _& w& D
    {8 W# D, O' {" n) @* F! P* J9 c' |
    int day,x1,x2;
    8 Y' g; J. K" ^  Rday=9;
    * M, }1 y6 A. {; z9 n) Fx2=1;  P$ }( y/ E/ c2 S2 R
    while(day>0)
    3 n3 |- `. M6 T{
    6 m0 |' w. |1 ~# Y; Gx1=(x2+1)*2;
    % l- q. ?7 Y- A, h0 P0 Wx2=x1;
    ; ~6 Q5 ]6 L. ~" Z" ~2 P: F" Xday--;  S. r4 v7 o" C, N2 Q
    }3 K: s3 \) C. d: Z) e) ^# B
    printf("桃子总数=%d\n",x1);6 e- O9 U1 [# B! u2 N* |0 \) @
    }/ i: g, {  o. l! q' n' o9 d
    . s9 {' Q- T, r# U9 U
    6.12) ~" _! w  a) @- s8 J' L
    #include"math.h"
    3 [2 m# U+ E5 i3 p' i$ }main()
    / R9 B) ^) {1 Q, ~* T1 |1 A8 J$ D{float x,x0,f,f1;
    $ t, L! S4 K6 y3 h1 X( O x=1.5;
    6 \2 u4 @- _4 z7 r, A+ @3 }. ~5 p do9 r/ _9 J9 p. L; F* ?
       {x0=x;& C6 o' j5 s# _6 Q- P- A* x* U/ {/ N: [
        f=((2*x0-4)*x0+3)*x0-6;4 A3 L+ ?" K9 Y( O# F. w5 i
        f1=(6*x0-8)*x0+3;
    " W) Z& {. [- g' B* ^: e    x=x0-f/f1;
      p4 ^$ B9 d6 @   }: E- _. K# `/ p. m  f
    while(fabs(x-x0)>=1e-5);5 K( \5 x8 @3 S% V" _
    printf("x=%6.2f\n",x);# A  o  `; r& V" I
    }8 n3 `+ i6 H+ L/ l

      K! n+ F4 H: g7 q$ z6.13
    % V  n. @, @, G8 G( _3 b3 d' `#include"math.h"% ~5 l$ ~; ^9 m- w6 t
    main()
    ' S. L9 H+ O) N% e9 U{float x0,x1,x2,fx0,fx1,fx2;3 ~& V$ \9 s5 @" p" {/ L
    do9 x/ M3 P' m! v( v! S' C
       {scanf("%f,%f",&x1,&x2);* Q7 \) `" q/ {0 b+ I1 Y6 p
        fx1=x1*((2*x1-4)*x1+3)-6;
    0 P6 w' M( ~* \& {; f9 `    fx2=x2*((2*x2-4)*x2+3)-6;! W2 K% ]9 G0 t/ y7 Z& L* u% A
       }4 G4 H- d3 N6 y" X/ n
    while(fx1*fx2>0);
    . `" `6 X( P1 W6 `; R do
    ( V- ]; y$ F' o3 }& ^; g" A. K   {x0=(x1+x2)/2;% j1 W  l0 d! C
        fx0=x0*((2*x0-4)*x0+3)-6;
    ) |. T) H- H3 ~' {' s; t$ N    if((fx0*fx1)<0)
    2 @" C( H( F  |+ I2 K. s# p      {x2=x0;- a$ w9 y6 j% \
           fx2=fx0;) w" z  P- p1 n' X
          }, x0 _- ^4 z5 }0 Z
        else, {% U) i4 j" x0 @3 ^
          {x1=x0;
    + F7 M+ ~2 X! P. D$ k5 B       fx1=fx0;
    4 R& \# J* d: Z. u; y# [      }( }5 a5 i$ Q+ j1 E1 u. n
        }% a/ ^, p# e" `! X1 n8 y
    while(fabs(fx0)>=1e-5);
    : ]3 W# B- }, j: ?3 f1 j printf("x0=%6.2f\n",x0);* z* Y% T5 {8 i4 S; u
    }2 z+ a. R5 K, N+ Q; e" e
    6.14打印图案
      I! o0 R! y. G6 x- f* Emain()9 E1 N' `) i8 c/ t% B
    {int i,j,k;
    4 {8 U4 X0 W  u5 N1 }2 h: t  A3 o  t for(i=0;i<=3;i++)
    ) A: Y- `' E* W   {for(j=0;j<=2-i;j++)9 y  C# E) y& o! i4 {8 V6 }
          printf(" ");
    8 U1 m. H: K0 W7 G    for(k=0;k<=2*i;k++)
    - D- K" W+ ~6 ^/ S  c      printf("*");
    3 r/ e1 M9 O/ g4 Q    printf("\n");0 p3 R5 P0 U+ A$ u% |
        }) r9 [: @3 p' ~, C1 z4 \
      for(i=0;i<=2;i++)2 J9 P9 G, z5 \% L! V! G4 ]
       {for(j=0;j<=i;j++)
    , V9 L" S" k9 h# Y: `6 }      printf(" ");
    % y& j3 Q: n" E( K% O& O, x    for(k=0;k<=4-2*i;k++)
      t7 s0 L) G* V5 e8 [+ o      printf("*");% G, ?$ F: }' }/ D$ o* b5 r
        printf("\n");
    $ a; o, I: g# d5 e9 Z2 L' l- k* s    }& O) x5 d: q2 i- s% `1 G0 c, ^# r
    }7 V" `3 A( j; i0 \
    6.15乒乓比赛# S$ Y7 Z" C4 r% `; s& B  _. t" c
    main()9 a# d5 b' Y" F
    {8 D" _, t$ m5 }0 O% A% _. W
    char i,j,k;  n& z8 |2 n: D% y
    for(i='x';i<='z';i++); D/ _5 r" C" j( I" \% N* r
    for(j='x';j<='z';j++)$ w4 Y" Z) }" t1 [/ D1 G
    {
    & H* P! A, O2 R% j: Pif(i!=j)
    & x4 e) |: S9 |: K1 }for(k='x';k<='z';k++)
    ( w+ c1 b% f1 E8 f# }/ ?4 W   {& W- \2 a7 n0 u# h
    if(i!=k&&j!=k)
    0 [% o% X8 P% [6 {    {if(i!='x' && k!='x' && k! ='z')" _% L( D, L9 t& K2 L
    printf("顺序为:\na-%c\tb--%c\tc--%c\n",i,j,k);! n9 b; I, s3 b4 H7 j* _
        }
    9 n& u. U( u6 C  w/ K   }# R/ B7 }) ~! ~" i* k& @
      }
    8 y, o# Z, z, g5 m8 |3 S( G3 w! ~}
    * R0 Z2 J- ~/ u9 [& }' e7 s: cC语言设计谭浩强第三版的课后习题答案) Z1 c; V6 j- Z
    7.1用筛选法求100之内的素数.6 O4 u- v5 k' E
    #include
    + [$ O: |5 ^+ n* R+ g! L8 h#define N 101
    + @, Q5 p  Q) J3 Rmain()
    . L& S7 w6 q- ^; y* c# |" t  q{int i,j,line,a[N];
    . q  m, R9 G7 ]( X4 Efor(i=2;ifor(i=2;ifor(j=i+1;j  {if(a[i]!=0 && a[j]!=0)/ M( C3 @( P6 \- N( h- U
          if(a[j]%a[i]==0)' R# G! [: J: `, P
    a[j]=0;
    % v: [6 v, Q) m7 ~) Qprintf("\n");. ~4 A: V( o/ i7 [& K% m$ d  G
    for(i=2,line=0;i{  if(a[i]!=0)4 A) f* O) a: f* H
       {printf("%5d",a[i]);6 m3 ]1 K6 Y: a% o* f# S
    line++;
    ! V- |) _/ m1 T# K4 { if(line==10)
    9 z1 ?% L) k( u) D7 I" N {printf("\n");8 [9 v8 G9 C7 g9 [: z
    line=0;}
    " D: {# p( L  n9 L2 u: x9 g   }& s  [& E6 }) |1 J- ]6 o+ C
    }' d9 F* O# o( M2 V8 N: E
    7.2用选择法对10个数排序.3 Y8 u, D( w5 R, X$ F
    #define N 10
    . T2 K$ S1 }- imain()
    / }# z. a/ H' V; c{ int i,j,min,temp,a[N];* N% r5 {+ |& u: Z, c3 c
    printf("请输入十个数:\n");" X; A; |. D- R# r. p" n
    for (i=0;i{   printf("a[%d]=",i);
    2 t) l. a: e8 C; b$ K- ]0 H    scanf("%d",&a[i]);
    # W* V3 f5 \. e$ ?1 i, X; q! W}
    & B  v: H" q9 Aprintf("\n");& x2 t2 Y7 k3 ~7 ~2 h5 e9 e) X
    for(i=0;i  printf("%5d",a[i]);( Q- {$ B4 \9 |: ]) U$ Y+ w% o
    printf("\n");- g( U1 R5 h3 @$ I
    for (i=0;i{  min=i;7 g! _& |- D  h8 K
       for(j=i+1;j     if(a[min]>a[j]) min=j;! @; \) f5 D5 |- G* s& a! R
         temp=a[i];
      |7 ?/ k) {# p5 G" w+ S$ F     a[i]=a[min];
      F1 }1 i- S  ?( ~. e& |: G     a[min]=temp;
    : {5 N0 z. H, f3 L0 n* m" p}; @1 w0 D5 H" v. F% d4 z
    printf("\n排序结果如下:\n");) k' W& \6 V: F. w% h1 a
    for(i=0;iprintf("%5d",a[i]);
      v0 c4 J/ V+ o' t- n3 ~7 P}
    , R5 _. U* A" t* t# t  c7.3对角线和:
    - |1 e* ]* e6 V! H* z4 ?main()
    5 E" {" u. I+ w" H) Q{7 z8 L( s3 f% t$ J0 k1 Y% E
    float a[3][3],sum=0;8 U/ T. Q7 D5 J
    int i,j;
    - V% W# O, v9 b3 o, Jprintf("请输入矩阵元素:\n");7 |6 D7 M1 M4 s  }1 k
    for(i=0;i<3;i++)
    , e" n3 d9 @: L/ n" x7 P9 a" X2 N  for(j=0;j<3;j++)# D  ^. ]1 f8 `6 }: Q( M8 h+ y4 _
    scanf("%f",&a[i][j]);+ A, S+ y- G' [8 d" V
      for(i=0;i<3;i++)
    $ o6 \# ]; R( L$ I7 ?    sum=sum+a[i][i];. p! {/ l6 p3 |
        printf("对角元素之和=6.2f",sum);7 V, n% z2 K* d$ R( ~0 k
    }
    & Y/ N9 ?: f. h; s: B7.4插入数据到数组
    2 ~( W' h, |8 S/ Rmain()7 I) q; M# k. j' `$ \, |' E
    {int a[11]={1,4,6,9,13,16,19,28,40,100};% Q: H: U2 ?) b7 q: i+ a7 u, E
    int temp1,temp2,number,end,i,j;
    8 x& ]* {& |& X0 O, r. U# {printf("初始数组如下:");
    5 b* o1 J  I8 m7 Y; g2 wfor (i=0;i<10;i++)5 C% b; w, i; C
    printf("%5d",a[i]);: M2 O9 ]! q. b# O7 j
    printf("\n");  w6 C" t  v% Z6 a3 d6 t* u( t& o
    printf("输入插入数据:");
    4 _" r! J3 u- Y* ~scanf("%d",&number);7 T, y( d7 [/ n& R7 X
    end=a[9];5 V" I" S- C" a2 g* i  Q
    if(number>end); y! e8 r; `) A7 F6 i5 ~5 G+ b2 R! a1 q
    a[10]=number;% m% X1 _5 O6 w4 y( i
    else
      L, V7 x9 E- f0 u3 o9 ^" q8 u9 O {for(i=0;i<10;i++); `$ }6 Y: x5 E! S- r+ q0 F$ T7 q
        {   if(a[i]>number)
    & f! y4 q! S0 W0 X" j" L. K9 T% ~ {temp1=a[i];
    ) E/ c4 l! V' T- M a[i]=number;+ h# U# Q0 T" z
    for(j=i+1;j<11;j++)9 n% \7 l% i5 e+ o
    {temp2=a[j];
    - \0 V) c4 n$ ]6 V a[j]=temp1;
    0 ^3 Q4 w( k+ `4 e! o2 o8 R9 N- j temp1=temp2;
    4 n: T5 o3 q& m' B! v" h }% H  w: [% B4 E9 q8 }! w
    break;
    + ^) R  m5 S' Y( }- I) ^ }
    6 H6 e. {, e. x9 _" n0 n$ F: {! B     }
    * g; x) |4 {, f3 P }
    7 J. Z  w. _) Y0 W! T; R! } for(i=0;j<11;i++)5 ]4 G. G' V; a( n9 V* [
        printf("a%6d",a[i]);
    % ]' [# D9 E7 [# ?# H! B" Y* D& E}
    - @/ ]' `3 O: X$ `' B7.5将一个数组逆序存放。, T3 k6 M8 g0 p
    #define N 5
    6 t/ \. F$ M, Q1 z/ w+ Xmain()
    : K# S* a3 `6 R+ b# ^9 B8 w  n1 ^{ int a[N]={8,6,5,4,1},i,temp;& ]7 }% K, ?' K; K
    printf("\n 初始数组:\n");0 s$ G! D; X0 @; K  v
    for(i=0;iprintf("%4d",a[i]);
    2 C( U- j/ o2 S5 A+ j7 `for(i=0;i{  temp=a[i];+ D8 t/ o6 @  V  w
       a[i]=a[N-i-1];; p) h7 p% e# M' z" B: f, q
       a[N-i-1]=temp;$ E/ l0 @- M" C, g0 z( T
    }
    9 B4 _3 f( D" T+ p" v7 D* N' Aprintf("\n 交换后的数组:\n");
    & u1 \7 ?$ Y& q, wfor(i=0;i   printf("%4d",a[i]);2 [1 u, M  u2 x# q9 e) k% ~/ n
    }- Y% H1 r- s4 W9 I
    7.6杨辉三角
    # g3 Y$ o7 ]8 O; t4 l  @& I/ U#define N 11
    0 A# r1 `& j5 }+ nmain(), t1 U5 l& ?3 @; b
    { int i,j,a[N][N];
    # d/ c% s; F# B# R" A  for(i=1;i  {a[i][i]=1;( Z) }" B% C% y- I# @5 |
       a[i][1]=1;+ I) @/ E3 C7 O6 O& s
      }
    7 H/ p3 I2 T+ P+ {0 `3 |( C2 H  for(i=3;i    for(j=2;j<=i-1;j++)5 |; L9 |# i9 G. B% J
    a[i][j]=a[i01][j-1]+a[i-1][j];9 r! l1 k1 t+ r, H
       for(i=1;i   {  for(j=1;j<=i;j++)% F2 w0 T  I/ b- K& O
    printf("%6d",a[i][j];2 w! e0 p1 J( N, \" v
    printf("\n");3 o# ?0 X2 U: E) y
        }4 Z% N& x6 l& _! c( @5 E: e
        printf("\n");
      F) V' M& L' f9 J  |! w}
    ' X# O9 O8 B1 L9 i& E; }/ ~7.8鞍点9 z# [& M( P3 T  @
    #define N 10. D1 z1 z* A0 i8 \
    #define M 10
    ) b" O6 F' Y8 I% O. Imain()
    1 P: s: o$ Z$ o0 J{ int i,j,k,m,n,flag1,flag2,a[N][M],max,maxi,maxj;, j7 `1 ]# ]. y4 M/ c, {
    printf("\n输入行数n:");; P7 P6 p' R( U4 w' u( B
    scanf("%d",&n);
    6 d) F5 X" x* g3 @# l" [$ o# x printf("\n输入列数m:");% F8 w% B3 ~1 H3 @3 V5 z9 ?, f5 N. A
    scanf("%d",&m);6 c$ P8 i6 s; V3 d  T
    + \+ i2 \% J+ v) a+ m- l
    for(i=0;i {  printf("第%d行?\n",i);: x9 b+ u' m! t" p6 }
    for(j=0;j   scanf("%d",&a[i][j];
    ' A' Y" J8 _- E9 L) _! a$ w }  V' t6 x, M+ m9 p4 q
    for(i=0;i {  for(j=0;j      printf("%5d",a[i][j]);
    - v! ]' ~7 A, B   pritf("\n");. v, d2 L( a- o2 ?! v! C
    }* P1 \& J$ w* h# X, |
    flag2=0;4 i# |# c8 {( p$ X* Z
    for(i=0;i {  max=a[i][0];% q5 p1 K3 q- C4 P
    for(j=0;j if(a[i][j]>max)% _+ H% _% L2 y! L: o& ]0 o# U$ z* W
    {  max=a[i][j];
    4 s& t; H7 |- S$ r    maxj=j;
    ! f+ d. ]+ K% H' H) I }9 a. y( g2 B" X
    for (k=0,flag1=1;k   if(max>a[k][max])
    6 R* Z- h5 V7 o, \  flag1=0;" m1 {/ R0 ~9 ]$ M- b: P6 B
    if(flag1)
    7 O5 a4 N2 z. @/ { { printf("\n第%d行,第%d列的%d是鞍点\n",i,maxj,max);4 L3 O1 K% \3 g# h- v) }/ t
       flag2=1;
    . D# t) _- L  z) f$ h }. c7 ^" h; o5 H0 l3 ~
    }: m/ E1 ]* p3 u
    if(!flag2)1 i! T' i. d) e9 O7 v1 C& Y$ L8 X
       printf("\n 矩阵中无鞍点!  \n");
    ; S% a  z5 I8 ?0 p0 v}2 r# S! {1 Y( f! J9 Y
    % Y4 c! n% u/ V" e8 W: t
    7.9变量说明:top,bott:查找区间两端点的下标;loca:查找成功与否的开关变量.# I: g& A/ k7 e7 W$ S
    #include- B2 ~1 b. ~6 O. W" n1 K
    #define N 15: I* Z2 P  b7 p" K
    main()
    8 f9 Y+ ]! u# @, Y8 W# k% ^{ int i,j,number,top,bott,min,loca,a[N],flag;
    6 K! \7 m- e) ^. v! J3 L( \( u2 j  char c;) u6 w- s% ~+ C
      printf("输入15个数(a[i]>[i-1])\n);
    1 R/ c+ ^  e1 E' m) ^  scanf("%d",&a[0]);3 n, J' ~$ Z* A0 n7 U9 k, \/ T. @7 h
      i=1;" t4 W; a7 W$ K( i! G" Z' t
      while(i  {  scanf("%d",&a[i]);, T/ M7 l- g$ B5 F. |" Y
         if(a[i]>=a[i-1])3 Y2 p8 Z# D, {' S& [( H8 b
    i++;; s0 z+ l- a6 U( b; k7 ~+ D. S) T
    esle3 N" W8 D0 D( B# y
    {printf("请重输入a[i]");0 V5 h, G& [; Q# `" I
    printf("必须大于%d\n",a[i-1]);" _" J. T5 Z& b8 r2 s
    }
    / V0 h- |; b5 u6 j2 ~3 k  }
    ' G& L* e: \; n% w0 ]% Y+ O& ?" j" M  printf("\n");
    % W& W' H) f; e% B  for(i=0;i      printf("%4d",a[i]);' [  \. a" b7 p5 ~, D/ F0 b) q+ n
      printf("\n");
    * C/ n7 `9 M; }  C6 h3 H
    ; v% t, C1 a8 G! k+ I  flag=1;7 ~# ^" c( a) g! |. }5 P! r
      while(flag)) O7 G$ y2 Q2 s1 @+ j# G$ j3 y
      {5 Q; V* Q% D" U2 x+ f8 {
    printf("请输入查找数据:");# z7 R1 r* q  T. _) u4 g" C! e, T7 A
      scanf("%d",&number);
    7 A2 G+ |3 b. r% @' @; Q& @: E  loca=0;
    $ E) v4 O! w& @% i7 c5 W  top=0;
    6 F* g  E6 v0 i( h4 R  bott=N-1;. ]+ D; N* N) o
      if((numbera[N-1]))
    . T' y! ]- k' m- G loca=-1;& j$ c% g+ {' ?8 p3 B3 Q: `3 H' g
      while((loca==0)&&(top<=bott))& k4 f- l3 z$ R% o3 n$ V; E  m
      { min=(bott+top)/2;
    3 A: [* H1 F- M' u' x# m    if(number==a[min])1 n  o0 W7 e# B5 `) Y1 h/ ]
        { loca=min;
    $ H4 t+ o  c: ]9 v4 m2 G& [9 N      printf("%d位于表中第%d个数\n",number,loca+1);& G! q; X8 Q' X! d0 C$ F
        }
    7 @8 ~5 C! L/ M: w, _$ G! O    else if(number     bott=min-1;
    4 x- s. o6 G2 T1 t7 ? else4 V- v( O" [0 F" a
         top=min+1;. {/ D) J, m( X( x0 E
      }1 Z9 h! t) G2 |5 C
      if(loca==0||loca==-1)( s2 |: X; z" s, z% u& [! n
        printf("%d不在表中\n",number);2 e3 _  O2 q5 V! o; g9 C. l
      printf("是否继续查找?Y/N!\n");
    * n/ q9 [- b7 R. t! J  c=getchar();
    ' Y! G( X! k, {+ m1 p2 B if(c=='N'||c=='n'), L+ \$ {: t7 ]! j
    flag=0;' b% C; y4 t& h9 {, }3 O
        }
    ; u0 W- U1 b+ n. l3 i0 \}& _  [1 S9 k2 r( H+ M

    5 ], r6 L: M* N4 l! j7.10
    - O$ j  l' I2 T  ^1 {main()7 r' L' p, \1 c) M' I0 n
    { int i,j,uppn,lown,dign,span,othn;
    - @$ c6 H8 J4 F7 D7 X/ n  char text[3][80];- ]8 T; {2 @$ z6 A' q+ h
      uppn=lown=dign=span=othn=0;
    4 a2 K2 n# C2 W5 ]" B1 D  for(i=0;i<3;i++)% B& ~+ T7 ]  w0 _! X
      {  printf("\n请输入第%d行:\n",i);
    ( K! F! z- I$ |0 p6 Z  o% n     gets(text[i]);
    : E3 Q) A. I3 G5 B     for(j=0;j<80 && text[i][j]!='\0';j++)6 B! t8 l& V8 t* p
         {if(text[i][j]>='A' && text[i][j]<='Z')
    3 `7 `% L# o! X, d% [ uppn+=1;
    % I. W. N' V, _ else if(text[i][j]>='a' && text[i][j]<='z')
    * T2 S( [" }/ m4 p8 W lown+=1;& F& f& S' l( X' ^! G0 J- n
    else if(text[i][j]>='1' && text[i][j]<='9')9 g9 N1 D* |& H
    dign+=1;& w2 Y+ ?9 P9 D* u
    else if(text[i][j]=' ')6 ]4 H. I; g( o% }  T2 V; X4 H) t
    span+=1;
    1 R6 b+ d% V% L% i7 Y% x/ l) D else
    ! ~2 S6 N* ?0 g+ t% H+ o othn+=1;
    ( x" @8 @* x  Z# m     }
    # ^9 a, K. k' ]( l8 Q  }
    / g  e" ?% T8 X2 {  g/ B8 V  for(i=0;i<3;i++)' n' V0 M. `# d4 [9 U
    printf("%s=n",text[i]);
    ' U) ]$ v/ F* c/ F  printf("大写字母数:%d\n",uppn);! k* e' b% D8 `
      printf("小写字母数:%d\n",lown);
    * |3 f- r$ }& }2 \" S  printf("数字个数:%d\n",dign);" y0 _: |/ o, ^- _
      printf("空格个数:%d\n",span);6 I! K' D% K+ W( _' ]6 U4 F/ c# p
      printf("其它字符:%d\n",othn);7 d# g8 `, b! K/ k+ J7 Q" r. H, y4 _
    }3 b. o3 l+ b; ]: j4 m1 `# B1 `7 `
    2 U" R% q7 @( p" j3 C3 K
    1 T5 W8 A% S2 k' E! K5 ]7 V4 z
    7.11/ N. \1 e( K/ j8 h$ z) L- Q
    main()* V3 R2 n9 E) n2 W- }% U3 N# r0 B
      {static char a[5]={'*','*','*','*','*'};
    # F# I, \. s8 l8 J  B+ j( H# O7 l   int i,j,k;
    ) S; H+ p2 R: r1 C( B# `( L   char space=' ';
    . n; ^6 t! X% h& h3 f/ c0 z  for(i=0;i<=5;i++)% e5 y% E6 [) }9 P
       {printf("\n");
    % |1 W% F. e! s* W; y! [    for(j=1;j<=3*i;j++)7 v) Q2 _1 m( e) x  b0 i) Q  T
    printf("%lc",space);& p$ x0 k1 c$ g$ A
        for(k=0;k<=5;k++)
    3 {4 s- h- ~% L; B printf("%3c",a[k];' V' i- u+ u+ J
       }% z" E4 Q6 r1 Y3 c8 j' O" Q- n& F$ |
    }
    % F* E( q9 _( l9 l7.12! Y0 v, U  t/ z5 j( I7 k/ ~6 g- O, O
    #include
    ' b6 l: S# N% K9 U- l! Tmain()4 b6 M$ m6 {: J0 e3 X
    {int i,n;5 G5 M3 S& X; j; P4 R5 h
    char ch[80],tran[80];. S- f2 _% e: ^: o9 Q7 X
    printf("请输入字符:");
    + `" a# H& f( ~' \2 M gets(ch);; Q' q+ A" m' m! _7 n: Q& S
    printf("\n密码是%c",ch);3 X& _, B7 e2 u1 y& J
    i=0;
    , N7 z( m  L' ?9 H; r' m3 `( Cwhile(ch[i]!='\0')
    0 S8 ?1 P8 W, D' ]$ s( J. J( |% l{if((ch[i]>='A')&&(ch[i]<='Z')); Z+ S2 S9 F  c
        tran[i]=26+64-ch[i]+1+64;
    8 w  `" f' X/ F4 |, G5 qelse if((ch[i]>='a')&&(ch[i]<='z'))' O7 p2 B0 K* l
       tran[i]=26+96-ch[i]+1+96;; s+ T) s& h) S+ l0 N
    else
    4 g; Q5 q' a, }9 }7 l) d/ Z tran[i]=ch[i];
    ' L) o4 C( B2 T6 R  i++;
    ( u2 L. {" n. d4 v% _}. O$ d( I" T8 g- h+ c$ c+ n. r% o
    n=i;
    5 |7 K. d; _( u7 M: f* oprintf("\n原文是:");; N% ~3 y" Z' P3 H; N; {
    for(i=0;iputchar(tran[i]);, ]8 Y; j! m; {7 l" k
    }+ s) h# I* A2 l! K
    7.13
    & H4 E  i! e% I- i! C0 s# d) Y1 Tmain()# h3 {) [5 U- a6 d. O% r
      {4 V3 M7 h; \4 P5 S8 v
      char s1[80],s2[40];
    . X0 v" f4 `: L- }1 {  int i=0,j=0;
    9 c2 z; w: \! x/ L3 F" z$ {  printf("\n请输入字符串1:");  d7 h7 P% v. G+ T5 q- a9 C
      scanf("%s",s1);1 j% z& G2 l, K1 r+ }, k' G! |
      printf("\n请输入字符串2:");5 Y) x2 E( ~+ @3 L+ _3 H
      scanf("%s",s2);4 V7 y+ }, i) a! M! G3 B
      while(s1[i]!='\0')3 @, H8 h: h: w
        i++;
    # s. i) f& Z: y. m4 owhile(s2[j]!='\0')
    . z  n; `# l! b  b; q. ~3 m  s1[i++]=s2[j++];$ K- P0 R2 {( p
    s1[i]='\0';# b1 b  L: n# ~& w$ {+ b& I. o) c/ \
    printf("\n连接后字符串为:%s",s1);
    8 }6 h' [4 E6 Q. W: `. I) G  }" Q0 @2 K8 M  O; G

    - p* w. S  M- R2 s5 ~# x( |3 Y0 C3 g
    7.14* b$ G6 R/ ^- U9 j! i
    #include
    ! M8 y3 e: p# gmain()
    & }4 m5 \5 e0 V0 x- g{int i,resu;
    ) A6 A4 i* v4 L# N char s1[100],s2[100];. }+ B4 I: C- M7 s0 S( t4 L
    printf("请输入字符串1:\n");, N1 \7 Y6 q  S# |8 F
    gets(s1);0 b0 c: F, N$ O* K" b# p, {/ j
    printf("\n 请输入字符串2:\n");
    : u3 s* q4 G2 y; i! T& j* d( z# x gets(s2);; w+ i5 H' H5 \
    i=0;
    ! N; g* P! d5 q& ]8 J while((s1[i]==s2[i]) && (s1[i]!='\0'))i++;- J; Z$ V: j5 ^( x2 G' n; I
    if(s1[i]=='\0' && s2[i]=='\0')resu=0;
    * p6 k2 g" j7 W4 C  { else
    5 L1 G# D) Y  z9 ^: \ resu=s1[i]-s2[i];) B6 o2 x+ \! F! i* x3 z
    printf(" %s与%s比较结果是%d",s1,s2,resu);
    ) q# c! o; R8 V5 _}
    , L2 T: l5 ^$ M7.15
    2 o% d# Z: s& s#include; B! T1 \' b6 U& v
    main()& C* h$ {8 ^7 ~5 M3 g, H+ q2 y
      {
    : z/ f3 v" C. e- d! F" }) t) s  H  char from[80],to[80];/ A+ s. g0 _1 M$ R
      int i;
    * q1 y- V8 Y. i, T0 C$ U" V- E  printf("请输入字符串");( ?& j. \2 m$ g7 ~, O* i
      scanf("%s",from);
    5 o" Y- i% R7 S  for(i=0;i<=strlen(from);i++)/ H6 ?0 _7 {  W+ K! p# I# S
       to[i]=from[i];
    9 e, P" f. ?" l  printf("复制字符串为:%s\n",to);
    ; C8 T/ C: O9 V* v: D$ U  A- Q1 a  }" j4 T9 R- P7 w( y  e) x
    : @0 V. Y2 H$ T9 E

    $ P# \2 F7 j, Y+ b! p$ s第八章 函数
    $ R2 J2 l0 E8 X5 I3 [! [8.1(最小公倍数=u*v/最大公约数.)
    7 l4 m$ T8 G* f( F( Vhcf(u,v)
    ' X0 V% D+ W! G3 s0 ?* h6 f& ^int u,v;
    , S# g: T- m+ O3 a0 h(int a,b,t,r;. c# |1 o# Q' k, }  G4 h
    if(u>v)' T3 `, j( x  J; _( p
      {t=u;u=v;v=t;}
    , m1 k* @% R& P' C a=u;b=v;5 p/ u% a3 |4 L) X
    while((r=b%a)!=0)
    ) C' ^! e8 D8 \9 @1 M   {b=a;a=r;}
    1 \  q( f" l9 _! T: B  return(a);8 M4 x- K# y% W; n/ N
      }
    + ~4 k/ M! _9 ? lcd(u,v,h)
    1 U/ e% X/ J. y. c1 o  |   int u,v,h;
    0 c! s" {& g6 I {int u,v,h,l;
      J# r% P$ Q: Q scanf("%d,%d",&u,&v);
    - ^8 U# e' L+ b# h6 J h=hcf(u,v);
    0 E" g7 U1 {0 f/ G: w printf("H.C.F=%d\n",h);/ b! g' j# H7 f3 g% I! L
    l=lcd(u,v,h);
    : P6 z% M% t" i- R9 x printf("L.C.d=%d\n",l);
    * Q8 D6 |3 j9 O: T* D }
    5 }: P! E3 a  K' r) a4 G; C  {return(u*v/h);}" K% n1 ]. A- j4 [+ w
    main()
    ) X8 Z+ [6 }% R {int u,v,h,l;
    5 A$ [' _- H' u' p! P scanf("%d,%d",&u,&v);
    ; h6 G5 D& F% s: h) y' Z h=hcf(u,v);. t2 E  U: q& T, @3 i3 u
    printf("H.C.F=%d\n",h);  ~6 U0 V3 l3 ?" T2 ]3 K
    l=lcd(u,v,h);
    * w5 w1 F4 r' f; o1 E) } printf("L.C.D=%d\n",l);/ N( e0 c) d4 y" d( v5 {4 k
    }: p$ I* h. ]4 ]" q( T6 H

    5 X( [* Q2 P0 K4 B2 i/ s' e" `. T% Z2 V- Z8 m5 ~3 o0 _3 q

    6 M5 g; d/ w; w; \" L& b8.2求方程根
    , b- H- r. @2 S& H& U) t#include
    3 i7 e) [, S. t' r5 b  z, Xfloat x1,x2,disc,p,q;
    6 ~5 J3 G, Z! Z. p/ V" u( ~/ ?( e9 Egreater_than_zero(a,b)
    , J" M# O( L% v; e: B% f1 x( Pfloat a,b;
    , _3 N+ t2 q4 u; F1 p- ^{2 E( c/ f9 A+ p4 ?7 `" ]% A
    x1=(-b+sqrt(disc))/(2*a);  H" C$ q8 j1 i% Z" b$ ~
    x2=(-b-sqrt(disc))/(2*a);, d, t( Y- W2 N; w' \' d% P. o
    }) `) U5 S* F" ~1 J: \: v; W
    equal_to_zero(a,b)
    7 a# b" h* `; L4 T% }1 @float a,b;4 K. M( G8 w& Z, @
    {x1=x2=(-b)/(2*a);}# l7 {5 b6 x4 }+ |
    smaller_than_zero(a,b)' I3 C2 e: c) {+ y8 i- t5 v( H
    float a,b;
    + W0 `% \& w  Q+ m( j{p=-b/(2*a);: {2 b: r' u! M8 z! A! \
    q=sqrt(disc)/(2*a);
    1 s  Q/ V1 K7 l}
    0 z  H/ p: r+ `' n  a/ f0 omain()
    5 C* M0 K8 Q) c" @4 V& C! b3 f{3 I) ?0 ?5 ~* V7 l) U
    float a,b,c;
    3 h3 c( }: B( Z  S+ x$ R; Xprintf("\n输入方程的系数a,b,c:\n");
    * H0 l8 }. @1 fscanf("%f,%f,%f",&a,&b,&c);
    / w0 S. I% e; h* L, d$ d2 q" A0 @printf("\n 方程是:%5.2f*x*x+%5.2f*x+%5.2f=0\n",a,b,c);6 g4 }! p, s/ l2 r4 a* x; Q3 _
    disc=b*b-4*a*c;
    1 s* X5 r8 X$ c. F. z; b3 P7 L. yprintf("方程的解是:\n");3 S0 a  p! x4 d6 [+ x
    if(disc>0)" h+ i& M& o0 S: G3 U. H* |0 Y
    {great_than_zero(a,b);
    " T$ p2 ^0 p( J  W2 E' kprintf("X1=%5.2f\tX2=%5.2f\n\n",x1,x2);* F- W* N- ~  `0 i5 K+ v* O
    }
    5 N7 }5 _% i, B) zelse if(disc==0)
    $ I0 x- R8 _: c, p. V {
    0 G8 h2 G+ t7 a  ^' }zero(a,b);* P! m: c/ g8 I  a2 O  K% i
    printf("X1=%5.2f\tX2=%5.2f\n\n",x1,x2);4 T* h  y" a: F' }& ^
    }" d0 N; b; K7 w- R7 K% V6 E
    else1 j  l. K/ v1 m% L+ W
    {
    $ ?) c! Z' [( R* i# N) h small_than_zero(a,b,c);! O( q4 s/ a7 a7 o4 r
    printf("X1=%5.2f+%5.2fi\tX2=%5.2f-%2.2fi\n",p,q,p,q);
    9 C% |3 X& W1 ]) y }7 `& g# u- J2 N3 x) U- a
    }+ A+ f! `' k3 `/ p
    8.3素数1 x3 m4 m. \: c5 _# B
    #include"math.h"
    / a4 q9 b; r) zmain()
    5 F# y0 ^% t6 Y8 u+ Y7 L, ]{int number;# G# Q4 j4 v; k
    scanf("%d",&number);! K' I# v' S5 A7 X4 b  o! w3 m% N
    if(prime(number))' c; c' Q4 _7 B; |5 B
       printf("yes");
    # d( E  i0 G6 z" h( G else
    % y2 V; y: D0 {' _. |6 ]6 r   printf("no");
    8 h* h' G: s6 m& N}3 W$ G7 q, N: t: B6 v6 Y; F
    int prime(number)
    : H) C" Z. z  X  |int number;
    ) O8 [7 \3 X+ W{int flag=1,n;
    0 J7 k' j. O& I for(n=2;n   if(number%n==0)/ L6 C9 z: S4 V8 O0 S: `
         flag=0;
    ( m" r( r6 K$ c return(flag);
    - s- J2 `5 z7 C}' ^5 v4 S0 k/ [
    ! V3 Q# p1 ^. L4 |4 s/ B: s
    ! ?) G" ~0 Y! E) N

    9 O4 n% i- t! s8.4
    8 M) U; G, l9 F4 `& D, Z# m  L#define N 3
    $ n4 i7 y( ^6 q) k) ?int array[N][N];
    . [: l' E' \1 o6 L% u5 Cconvert(array)% q4 p: ^- k/ F( q7 P+ X
    int array[3][3];
      M8 `5 M2 C! e { int i,j,t;
    5 V- r' }0 ]6 T+ W  for(i=0;i for(j=i+1;j { t=array[i][j];! _2 G8 v/ }) l
       array[i][j]=array[j][i];' ~4 Q$ `- |% G1 r7 n2 W
       array[j][i]=t;6 i, f5 H2 A; D: z, v/ g
    }$ n& n1 t: j+ u9 A& B, |
    }& o" C8 Y/ L7 p5 [8 }; O
    main()
    , L7 X( S' O8 l; [( \4 R* A{
    . ^, G  L; m+ M4 n+ ~" m int i,j;0 G" A2 S; h+ r
    printf("输入数组元素:\n");
    6 m& O9 G8 i" X% I for(i=0;i for(j=0;j   scanf("%d",&array[i][j];  X4 N2 W# T& Z9 ]$ A3 Q, j
    printf("\n数组是:\n");
    4 Z0 V8 G0 E1 o6 ufor(i=0;i { for(j=0;j   printf("%5d",array[i][j]);
    4 X$ y# E9 y8 o: V* d- _/ l  O) M  printf("\n");: C5 y! J% t6 y; E  C
    }
    6 v4 G% U2 e' [  [) t% p, d convert(array);
    9 O+ C7 a! [% }6 j' l. f$ u/ K printf("转置数组是:\n");
    9 x. \2 H! w: R5 J  y for(i=0;i { for(j=0;j   printf("%5d",array[i][j]);
    : G" p" V5 d! O8 H   printf("\n");6 K3 v6 q% [6 u. H' w
    }
    ( |" f0 S9 Q" A8 X}1 l% b3 {$ [/ u+ l! G9 h) l0 f

    3 A2 D' x2 d* d; c& v- b9 K
    # `$ L, \7 }; D5 P6 F4 M- @3 J3 i" Y- L+ r( U
    8.5. w; w, T( u( l3 p  P! {6 W* Y2 h
    main()7 T$ y& g0 ]6 T! M7 m2 y! o9 A, E
    {1 m" J( c+ P/ G7 N; D% r+ o/ \7 ^
    char str[100];
    5 P/ c, i% D, p1 Q0 t+ o  printf("输入字符串:\n");
      N' ?6 ?; a  m* c: L% b7 l  scanf("%s",str);! w4 ?# e6 S! p- `5 J; G" z. k
      inverse(str);
    . Y  Z' [; X# q1 h6 O' j2 V  printf("转换后的字符串是: %s\n",str);) S6 j3 t6 o4 c; m
    }
    5 V* T5 J( I! ]) F/ Vinverse(str)
    & L0 ~& I4 C3 y. Tchar str[];
    . [# a" g: G3 A4 {{
    . ?8 _5 }! a, E' `' J+ c char t;
    1 r) H: a3 C8 j: [5 f! W int i,j;
    9 _8 m& j6 k8 N9 ~* Y; o5 O for(i=0,j=strlen(str);i {
    : N( ]) D- }( n; y t=str[i];; F; L8 M/ x, N( X" N1 s
    str[i]=str[i-1];
    $ ]* _4 H% s$ z7 [ str[i-1]=t;' D, `/ f6 O2 W( b( {/ W0 F
    }3 u. p& R4 x, C4 M4 V* u4 U
    }3 t% o' ~3 W* |- ]$ @

    6 V: t$ i5 q$ ~% A$ }
    9 d! Z$ p/ k. v& [% ]8 \; w* m- N) L1 x* L; L% a+ f' J
    8.6
    " g- \5 {0 O" b. U/ Z! l  U4 Gchar concatenate(string1,string2,string);
    & a; W1 H2 Y. \+ c+ ]char string1[],string2[],string[];  r6 U6 e% R- e2 M! W0 W
    {
    7 S: V; x, @' W+ jint i,j;5 I2 @3 u7 l3 U* Y5 _
    for(i=0;string1[i]!='\0';i++)
    # Y$ V0 ~1 H1 y7 M9 J% c) X3 P& x  string[i]=string1[i];6 Q) L* Z, n; p6 o/ r% D1 z/ s& [  K
    for(j=0;string2[j]!='\0';j++)
    + o& ~% \% @3 [ string[i+j]=string2[j];1 _7 p# V$ M8 d
    string[i+j]='\0';, f" k% J/ r, q+ j4 }; j9 Z
    }
    + n" c. R* p, O" N: i) Amain()
    : s$ i/ {6 A" p0 l! N* B. H; k/ a{
    7 j3 {, @/ S$ q3 m char s1[100],s2[100],s[100];) Q; f" I0 [! s0 u1 s7 p/ A
    printf("\n输入字符串1:\n");5 K. v. v' i% ?0 T- b
    scanf("%s",s1);0 @6 c4 G  Y' F  H0 ~
    printf("输入字符串2:\n");% a5 |! S9 Y. F5 Y- [  Z' N7 U3 \4 J$ c
    scanf("%s",s2);, a( T( y9 y. X! m; L! J
    concatenate(s1,s2,s);
    ; ~$ ^  Z& J5 t4 B printf("连接后的字符串:%s\n",s);
    : S3 N( a4 [* G& l- m}" S( _+ G1 n7 ?1 E3 P- u" F, x
    . F+ S1 p  ?  u  p3 X0 n) b
    - @  H) Z7 V( G' E' f* o
    8.8
    ' B% Z0 S6 i* ?5 i0 i" ~main()
    ! L3 w  `% A6 I/ O" p6 D{! }. G% _$ _9 @
    char str[80];5 p# s" \& R. m8 t1 ?4 A7 u  T* P
    printf("请输入含有四个数字的字符串:\n");) {" ]. ~; q6 a
    scanf("%s",str);) I1 N: i# b& H7 F! s3 w0 u
    insert(str);! Z/ `) s& O9 B$ Q5 E
    }6 G' P! {6 S; p. `# ^0 e* m7 O! m) p
    insert(str)4 H& O; t  q7 Y: F1 Y& y* E
       char str[];
    % B% N4 @( q6 U( ~! Y{) U0 c6 Q3 F! x; ^3 D
    int i;  k! a. g- H7 R( N
    for(i=strlen(str);i>0;i--)
    0 Y' Z7 {4 A5 B0 g3 k { str[2*i]=str[i];2 K% M9 ?( c( A; X0 G
       str[2*i-1]=' ';
    / ]1 G' t+ M8 X3 s% Z# }% P/ q# w }
    5 n0 r/ \9 b2 Q8 x printf("\n 结果是:\n    %s",str);8 p  t9 C8 l0 \# x0 B/ |
    }: _" y5 R* C3 ^! S
    2 z) ]7 A+ p( \6 e1 T, U* O/ Q7 p

    + S& ]$ w) h$ M1 B2 v: b# V& h( N: o: a( o! \2 v. V
    8.9
    - v- f, j: w- j+ M. X#include"math.h"* x& i* {9 J/ Z$ x
    int alph,digit,space,others;6 M8 _- ^/ s) n7 Z# X: X' I
    main()# C+ A) ]$ w+ o
    {char text[80];0 K& S! _0 g3 Q
    gets(text);. d5 n: j9 A! m
    alph=0,digit=0,space=0,others=0;
    1 D* L! Z- G0 L3 L6 V) t count(text);
    7 n% h/ g9 R, }" } printf("\nalph=%d,digit=%d,space=%d,others=%d\n",alph,digit,space,others);
    ; t+ B2 w3 p# a4 |' @! A8 H}
    9 |1 q0 w5 r0 n" N" E+ r& Ycount(str)
    / E+ R+ b, t7 |7 Q2 S1 q5 gchar str[];  P# Q7 v7 x, c$ Q
    {int i;$ z, _! O% F; f: I, U; S+ r
    for(i=0;str[i]!='\0';i++), v/ Y2 Q8 V( h9 [# R) `- n
       if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))
      n- i6 B0 W: p     alph++;
    . W% i2 j; E2 h' J- n& `: @   else if(str[i]>='0'&&str[i]<='9'): Q3 G4 C. S$ d/ T# q/ \9 f5 u4 A
         digit++;( S9 u3 r6 T9 R4 I
       else if(strcmp(str[i],' ')==0)
    * T) u" W8 F1 w7 ^: ~( f     space++;
    " R& V6 b+ @( T% z   else
    8 h3 K5 }7 n7 B     others++;
    2 O. S% P+ d" {* u1 m/ l; P}) [5 I# ]0 K. q' J

    2 U; c4 F7 i) D5 e! j% C
    2 O9 L. _+ y! s& Q8.10& k) j8 v- c, R  v) B/ ]
    int alphabetic(c);
    : w2 ~! w" b9 V7 D4 N" Qchar c;
    # N0 p) M2 Z+ {. S( z{& _# _2 n  w! {( G' a3 K: Z
      if((c>='a' && c<='z'||(c>='A' && c<='Z'))$ L" D1 s0 |& Y
    return(1);* E& U7 W$ W: ]$ N
      else
    ) c! w8 [  V+ Z% f0 w- d: |% | return(0);9 ~4 n% o* g; d1 V
    }* j. \; B% q7 R- W. C! A

    7 {, J8 }( N7 }! Y# O: G0 c' `  |int longest (string)  a% j7 V3 F" L* o9 _+ \
    char string[];0 y+ E" X- T7 T# s5 p0 L/ a
    {
    . T) L8 C6 }0 U& ^* c int len=0,i,length=0,flag=1,place,point;% l3 d8 n: s( t' k9 r
    for(i=0;i<=strlen(string);i++)
    " n7 N: O+ r; Q) l1 @, S   if(alphabctic(string[i]))5 v, X; N  Q9 Y, E- p# V  I+ X1 W
    if(flag)
    ( j# o8 g: T4 ?& z {' E" @8 b. Q9 X; t: [- n
    point=i;3 U- s0 _5 n4 j. u+ Q3 h8 c$ Y
    flag=0;
    7 A3 L9 n: p& J3 j) B: f }
    7 m. Y8 h/ ^* \/ Q1 J2 T- y else( x0 v9 `! R% o& ?/ A5 k! k# k$ U. j
       len++;6 k' g, d) x9 r
    else% t+ X8 r& @  Z: \% ^0 X
    { flag=1;
      \% {2 q! |) m+ V6 g3 Y  if len>length)
    ( ?+ Y3 n( Q* G/ x# k  {length=len;8 M& p' c/ k& |: U: V. d. }- n# w/ v
       place=point;! p: E3 ^9 G( n# e$ m$ H/ m
       len=0;
    , T7 |) Z, ~- s: u   }( R' g, C; K2 B/ X9 {2 Q
    }. I3 Q3 O; V! j, |3 z
         return(place);! R- ^/ ~) z4 ]9 S
      }
    ; u. T, p: l! z* _2 ]5 r/ H8 gmain()
    # e# I7 }! R8 \# z{' _2 m$ G2 _1 ]9 R- }! U3 u; J9 P, ^& P
    int i;) H5 J$ f9 N; K: N, J
    char line[100];
    - T: U+ Y" u" j; ]6 Nprintf("输入一行文本\n");
    + v6 d. g' J1 M& L  {gets(line);. j8 ^. v: z, p& Y
    printf("\n最长的单词是:");5 h( C- z, e. P, \' Z8 Z- L, g
    for(i=longest(line);alphabctic(line[i]);i++)
    ' j9 I+ b4 o, H8 f/ W printf("%c",line[i];* e% E, {. \; W5 B* Y; v
    printf("\n");
    ! ?$ s9 U7 \! i1 q" C9 \}( f# p! Z9 Y' A7 K. |' `

    0 \- l6 Q  @5 W+ I9 T9 B( a+ k8 {. m
    8 ^3 W/ @$ B  r; S7 g
    4 R4 _& u. v0 f7 K4 x+ ^8.11
    : a/ l& A6 E9 q1 j#include
    ; ~* t: z. {6 o' U! L0 L
    9 J5 L8 Q' e( i8 @#define N 103 H. \; Q5 ^2 |
    char str[N];. g4 N% g) ~0 r5 v# A" G0 o9 W
    main()1 I2 I6 o4 L& [) L+ X
    {& b4 ^; n1 @& C8 r3 s' }
    int i,flag;
    ' o7 d  l$ B2 O6 P+ `. g# l4 |% N) efor(flag=1;flag==1;)
    " d) b) n' C4 f0 n8 D+ }2 q, K1 j2 \7 {" f{$ |; W% w# L( j5 x
    printf("\n输入字符串,长度为10:\n");! Q- p# [$ D* T1 |+ I& R$ |
    scanf("%s",&str);* G9 ?9 W: B; ?+ b  D6 L4 ]
    if(strlen(str)>N)
    * @. @" ~3 {: |8 U, _/ R" `$ [4 l0 V printf("超过长度,请重输!");4 x6 a6 `; Z9 C3 q" O# D0 m9 t
    else
    8 L- f; A9 C# i flag=0;& }0 Q( r  \3 ~
    }
    8 v1 [" s: Y% L  q; D1 psort(str);" L4 U5 ^* \; r$ e3 f! b; y
    printf("\n 排序结果:");& c. H# A3 G1 b- c( e8 `. E  ^+ L2 l
    for(i=0;i  printf("%c",str[i]);
    2 T, L. q5 W9 G% t" u}
    ! x' y6 e$ \  \$ \sort(str)
    2 X: I! X2 ^( m% _. dchar str[N];
    * S/ f  j. x2 d1 e6 S/ ?; `{
    2 ?  l1 x7 l% O! P+ @: H4 r$ Wint i,j;* g( e1 T3 ?$ J2 O# J) E+ G
    char t;
    & ]1 h( l' M; vfor(j=1;j for(i=0;(i  if(str[i]>str[i+1])
    - F" [9 U5 s& L7 \! Q  { t=str[i];/ ]3 z" G3 H, L8 |' I- x1 }
        str[i]=str[i+1];7 l! B# A" h* F" @8 i7 l
        str[i+1]=t;& h  j# ?+ H/ U; n2 Y5 ~) H
      }
    " R3 m, o, d* l) `% m  _! _# K}
    ' H/ S/ d" u1 X/ L8 a8.12
      P* D1 c0 n- J, b#include
    - Z; y1 }% I) u. k#include
    / ]3 w7 S2 a) L' gfloat solut(a,b,c,d)
    , ]- W- d# H  K9 m! M0 C5 \float a,b,c,d;
    ) a9 m0 s2 \3 V{float x=1,x0,f,f1;2 I: Z* {; f5 i6 l' Y9 [; g% e
    do9 T9 G8 A1 O' m/ c# d9 b. i- `
       {x0=x;) M$ v% k  j  e8 p
        f=((a*x0+b)*x0+c)*x0+d;; X8 O2 q" m+ }! y  \5 g: \
        f1=(3*a*x0+2*b)*x0+c;
    . S# V$ m% ]' N) y# ?- m    x=x0-f/f1;
    ! [' J. k" }+ |: _! h1 i    }
    3 H( r" G" O! D1 l& W while(fabs(x-x0)>=1e-5);+ T; T% i( F8 G8 c
    return(x);
    8 t5 W3 n* J& L& b1 c- @: P1 l& S, ]}
    1 u8 _) i2 A& |* S2 Fmain()
    8 \' b' H+ s: I{float a,b,c,d;
    ! M8 a9 f- [# ~4 h5 B) i scanf("%f,%f,%f,%f",&a,&b,&c,&d);9 v" ?' G$ h( o! Q' F  i% }' F' W- k
    printf("x=%10.7f\n",solut(a,b,c,d));
      @, e, x+ ~: e% i# S. j2 O/ x}
    ) B+ e+ N; I/ ?5 o$ y* x6 m8.13$ {8 @# L  {" D) ?
    #include2 z- [0 F/ S) E0 z) }
    main()
    % w" Y- C' E4 f8 t" }' f5 d{int x,n;+ [- t6 J' `# X2 j3 K
    float p();
    1 U, R: Y4 H- ? scanf("%d,%d",&n,&x);
    + }0 Q- M; v: T2 q printf("P%d(%d)=%10.2f\n",n,x,p(n,x));3 ]8 \& X1 x# J2 F' [$ h; ?+ I% h: ?6 r
    }
    # @7 W; d- ~' p! Ufloat p(tn,tx)
    6 P% Y% D9 ^# A$ ]; Gint tn,tx;
    4 h5 U5 |* \5 s7 V{if(tn==0)7 {4 G" x* _2 y; t9 ^$ k
       return(1);. @' i2 I7 q6 @  E7 |% r6 x
    else if(tn==1)
    0 z9 r. P7 y, J& e   return(tx);; G2 W7 C/ U/ D# [9 n2 Q
    else
    7 ]& y/ t5 d+ y, U5 Z. @   return(((2*tn-1)*tx*p((tn-1),tx)-(tn-1)*p((tn-2),tx))/tn);
    , A- b# c; L3 i, i}
    6 t0 R  j! m3 {& R/ }8 r8.14
    5 {7 e4 L( n% Z* d7 j# F3 a#include "stdio.h"
    " a7 c! C# l6 a4 ^5 s$ i#define N 10( m$ k* u. |9 y7 m
    #define M 5
    + W3 N$ f/ Q  I, U! n! mfloat score[N][M];
    3 M  k1 g. `. p  s0 r+ c. gfloat a_stu[N],a_cor[M];
    8 n. K% R6 L: h) T2 f  tmain()
    ! ~, d: U& Q- p5 }{int i,j,r,c;1 M9 J1 m8 j# O. f9 ^1 I- d: {
    float h;+ a  f( N( B: {0 K: @7 z2 k& L
    float s_diff();  j* u- Y- S. q7 |' I& h' ~+ \# ]% E
    float highest();* O6 W" `- C! z6 i# C
    r=0;
    2 C6 I, m3 s2 u+ B3 L7 M, R* X, a c=1;
    , o" G8 q) z0 x. N input_stu();8 i. u7 ^$ W% ]0 v- x
    avr_stu();
    . w) r* ?. r+ v avr_cor();
    / C' z! l8 E  E9 q  k; x* a printf("\n  number  class  1  2  3  4  5  avr");
    # M  F7 W. `# Y( Y: Q for(i=0;i   {printf("\nNO%2d",i+1);& W% t1 j4 `! c
        for(j=0;j      printf("%8.2f",score[i][j]);
    5 L) A4 F  N% g% U/ ?5 ]1 o    printf("%8.2f",a_stu[i]);
    1 L0 `$ D) |( I! ^0 w; O" D  Y+ t    }
    % q' I( u7 B- _0 x$ E7 j printf("\nclassavr");: Z+ d+ h. X" I
    for(j=0;j   printf("%8.2f",a_cor[j]);
    3 G, y' q! N2 Z* g) j h=highest(&r,&c);# m5 S. e7 F( @3 h
    printf("\n\n%8.2f    %d    %d\n",h,r,c);
    ! t) J1 s  I; V& u# I printf("\n   %8.2f\n",s_diff());
    - @' N& h. c. h. G}
    ( Q) E2 J4 d! ?input_stu()
    5 O! a- i1 d. V8 r{int i,j;
    / J+ U+ r; l5 f' m* ^; f2 x float x;; _. ?9 {: B3 _  I, \5 ~* G
    for(i=0;i   {for(j=0;j      {scanf("%f",&x);0 r$ X8 X+ f, c2 M
           score[i][j]=x;3 A* P& ]5 X# o- s$ Q, P6 P% S
          }. n% |$ k, ]: V
        }
    3 c) K7 P  Q! H, t' @}: l4 y1 g7 W8 g) t! y, ~
    avr_stu()
    # j, W, ^* _) S) ~; T2 S/ g( `{int i,j;
    . H, a- m( |; F$ ]! \. @& \- T3 U float s;
    1 N" T& z5 g, M5 x% o" x/ l for(i=0;i   {for(j=0,s=0;j      s+=score[i][j];
    ' m5 c) m  g6 `& M: @# q    a_stu[i]=s/5.0;
    8 ~( G1 ~! T6 B* j$ H& q0 }/ y   }
    ( q4 a2 m8 `# S}
    $ Y0 `. {* ]# o2 H  w, K2 Uavr_cor()% g5 d$ s) a! H, Y  f: ^& Q/ X3 w
    {int i,j;
    ; q7 I: U. h8 p4 u8 F float s;
    , h% `6 Q1 ?1 V# r# u for(j=0;j   {for(i=0,s=0;i      s+=score[i][j];- |. K0 M! r, n8 p9 g
        a_cor[j]=s/(float)N;
    1 k' ~4 M& C7 s/ a0 C   }
    % ^& N5 U4 i) K8 {& Z/ l  e3 }}
    1 q* U8 Z) H8 ^2 E; p& Pfloat highest(r,c)
    0 ]4 \, y' ]7 {int *r,*c;
    # \5 |  h! P" B0 B{float high;  z2 q4 D. P! H) {7 `
    int i,j;( d) N# S7 Z3 _. q# ]  k
    high=score[0][0];
    " B. s% K, ~' {. e1 @5 e. |  c for(i=0;i   for(j=0;j     if(score[i][j]>high). x- G3 L* J& F) e) k9 U( r
           {high=score[i][j];
    * n2 Z# g) |/ ~  b' \        *r=i+1;
    5 S! u  ?# M+ b        *c=j+1;2 Z: ?- ?* @2 T, A; D
            }. {- v; F9 Z; L! w: o7 W
    return(high);
    * z& B8 Y. U  c" F}% o, L" ]( z% Q
    float s_diff()6 t! p% u1 B9 y9 b2 A. p; H4 t
    {int i,j;
    ; r5 \) U. ?1 m: S) G float sumx=0.0,sumxn=0.0;
      B% i' h3 C' { for(i=0;i   {sumx+=a_stu[i]*a_stu[i];
    1 p$ J3 |: ^) X$ q    sumxn+=a_stu[i];
    1 }; b: V! ?" r. Q   }! J: b& C  v7 S" l7 Y6 ?/ j
    return(sumx/N-(sumxn/N)*(sumxn/N));
    2 o5 ?5 J# G$ ]$ k}# u1 [9 _  Q3 n  U" f" r
    8.15, C2 y( Y7 t7 B, r  w- z
    #include
    & l& ?' S) a2 f6 I" m* \#define N 10
    - S3 u4 ?$ ?9 G+ V2 t, A' e  Q2 Lvoid input_e(num,name)5 E$ h: ~& V- O) B9 W- l
    int num[];
    ; b/ p1 C2 B) v7 D" Vchar name[N][8];
    3 w( o( }2 W  f# y{int i;  n5 H" F; Q* D! E6 I8 X; p
    for(i=0;i   {scanf("%d",&num[i]);
    ' b- D8 G& E! v, Y6 m    gets(name[i]);
    : b7 `3 @) t' |1 ?  ?' K5 R, l0 @   }% ?& O9 Y  m1 X
    }
    , H# k$ Y3 h& ?, [; B. J% Zvoid sort(num,name)4 `# v9 d! R7 f
    int num[];: C! t% F2 J% u7 S* K; ^
    char name[N][8];! V3 a3 m: u9 l( Y; H8 G- G
    {int i,j,min,temp1;% [% E, l8 p& ]1 e! d' [! Q' z
    char temp2[8];
    9 W# I8 s8 d% P/ v. m, T, Q for(i=0;i   {min=i;4 _- x3 d! @8 ]9 K
        for(j=i;j      if(num[min]>num[j])min=j;  Z0 y" ^) _+ d- V, A
        temp1=num[i];; q# _8 r+ v& d- L
        num[i]=num[min];; h/ i( H+ t3 f8 u# h& y( Z
        num[min]=temp1;. r' F7 A0 G1 V6 `: M2 @' @
        strcpy(temp2,name[i]);! ^7 J3 y7 l0 D6 {# c2 ~" }+ P
        strcpy(name[i],name[min]);" }; z5 a" I4 @* o2 R( T
        strcpy(name[min],temp2);
    9 B4 Q7 ^/ c. Z2 O7 U   }3 v% h1 w5 Y  P* G! k+ p( V
    for(i=0;i   printf("\n%5d%10s",num[i],name[i]);. E4 s0 H; t. P. T/ S
    }& @6 Y. v4 d1 d
    void search(n,num,name)
    " ?, V! x* J( Q& v4 u9 |; Oint n,num[];
    4 ~2 W2 S3 }0 [4 J5 z5 e2 `9 h& qchar name[N][8];" X: L! O7 O0 C8 }. ^# B% D
    {int top,bott,min,loca;
    6 |7 o# @4 s' e) i$ ] loca=0;
    2 \/ k! ~' i+ D0 d8 @ top=0;
    , f8 t8 V8 p7 B% ] bott=N-1;7 U/ _; W1 O' N  y) L9 P' C/ Z
    if((nnum[N-1]))+ P" ?* ?; U" C; C; Y+ R3 X$ Q
       loca=-1;
    . z- Y, g& @8 \" D while((loca==0)&&(top<=bott))
    / B9 d8 w3 y6 E1 {   {min=(bott+top)/2;
    * C) A& z: Q2 {) l# J  ]    if(n==num[min])* Y: A3 q6 |" ~1 ]
          {loca=min;2 Q! }+ y  U$ J2 S3 ~6 |
           printf("number=%d,name=%s\n",n,name[loca]);
    # D9 h8 D2 ]- x4 e! j7 e      }+ y# K4 g' z- K" ^+ G
        else if(n      bott=min-1;
    ( D5 ]0 u$ |6 w9 M8 R% E    else  T" W& G3 O. p. N2 _
          top=min+1;, D4 V6 }. N7 R/ y! u+ `/ W, r/ `' H
        }! o. r. O+ X9 ?* y; o
    if(loca==0||loca==-1)3 S2 i' B$ b  A, a9 a
       printf("number=%d is not in table\n",n);
    & o4 L9 P9 y) [. u) k5 w. \}
      ~% N/ D$ c( [! Y6 K9 W2 h' H( qmain()
    3 ]: x  z7 n1 Z& J: E/ N{int num[N],number,flag,c,n;
    $ {: Z+ [: z7 g" S7 ~. m0 c char name[N][8];2 Y$ [$ {! s0 S  \! U: A
    input_e(num,name);
    3 ~: A. o& n8 n/ n2 i" y$ e% K sort(num,name);  D9 s, {6 M8 V- X! M' j5 d9 g
    for(flag=1;flag;)7 t1 _3 T$ T  V& J1 T1 _/ x1 Z
       {scanf("%d",&number);
    2 o2 G- J+ X) B0 \) l$ S& R# @9 K    search(number,num,name);
    ; k2 R/ E5 o2 M* j    printf("continue?Y/N!");
    $ L4 U% f1 a1 F    c=getchar();
    : C( W) [  L9 _9 g5 n    if(c=='N'||c=='n')
    * D1 h; D, E- C  ?8 Q2 ]- \" D      flag=0;
    $ ]+ I$ m/ Y. u' ~) A   }) ]. Q- d4 C/ j, r( q9 r
    }
    * L8 I  i' ]& J% ?) H4 F+ u8 q8 g
    8.16
    9 B7 @% K" j" L1 u) |0 R  t" F6 c9 Y#include
    2 p" ?6 i4 f* u1 L4 r1 U, o6 U#define MAX 1000+ x  V7 e3 U2 Y* r. v& |
    main()
      Z. ?1 N; r% ]; D. w) @{ int c,i,flag,flag1;9 s5 N/ c6 |7 G9 k  {
      char t[MAX];5 j; a" q2 E; k3 ?1 c
    i=0;
    ' s2 C# U2 t7 a8 d7 n flag=0;0 F) i7 u2 a, f  h$ y8 T4 z
    flag1=1;: W/ U) e- T0 I# R
    printf("\n输入十六进制数:");! r: O5 ~6 n2 n' \  B
    while((c=getchar())!='\0'&&i { if c>='0' && c<='9'||c>='a'&&c<='f'||c>='A'&&c<='F')0 H$ B6 W. g: W: O% _+ F0 q8 j* X
       {flag=1;+ ]- E" ^$ G8 H5 u% Q
        t[i++]=c;, C1 v$ o( }3 C- u) |! L
       }
    2 @; w1 W/ N7 U% ~0 A& ~( q   else if(flag)5 e5 i8 |' K6 h, O, `/ r
    {6 |- e% T4 Q0 s7 X# X* x+ j
    t[i]='\0';2 J. \2 a8 @- t( I) l2 Q6 }% I
    printf("\n 十进制数%d\n",htoi(t));) c$ a, I; g* h( J, b
    printf("继续吗?");
    - A# h5 E4 f! m: W c=getchar();1 h7 W' @- x1 {0 l3 q" ?7 P
    if(c=='N'||c=='n')+ @& E% g0 m3 }0 x1 a) a- M1 T
      flag1=0;& O$ t( N! l6 N0 O& w+ j$ }
    else, i, k, I: C. g5 D
    {flag=0;# e% b' h4 M/ {  ^. e
      i=0;! |# y5 f, a$ a, z. j! v0 w# |
      printf("\n 输入十六进制数:");# y* L7 L1 P3 }* R9 ~# }
    }
    $ ?5 ^4 T4 N- o# E! g" O}( U# U8 g5 M) c  S& j
    }' F4 v- @/ O0 l1 g* Q; b8 W( L( Y
    }; e. Z& c4 J0 J
    htoi(s)
    5 g% l3 O/ O0 N( `/ U3 Gchar s[];0 s) C! C7 T3 t" M
    { int i,n;$ V0 O. c; I" R; K: \
      n=0;- u6 Z) T. t2 G9 G/ T
      for(i=0;s[i]!='\0';i++)4 C, V0 S7 X$ A) X4 V8 G& f
      {if(s[i]>='0'&&s[i]<='9')
    + Z9 T: l0 s; M8 u2 S  g- x n=n*16+s[i]-'0';" b  Q9 T1 p& }* P
       if(s[i]>='a'&&s[i]<='f')2 S$ {( i+ t' q" p6 }
    n=n*16+s[i]-'a'+10;
    6 Q5 o  O2 [# |7 H   if(s[i]>='A'&&s[i]<='F')( G7 l- Q  q; n. L5 v
    n=n*16+s[i]-'A'+10;, [1 m  c; E% B
       }# Y9 E5 [9 U2 I: d: E: S
       return(n);
    4 s: W( C+ h% U% l$ {) O! Q3 @! J}
    1 X+ y8 D. W+ j- [
    * x& |0 k* y$ E7 k! K9 g/ E& J0 J" `1 k3 m% \- i1 T- ?

    & T) i! v1 m7 ]" N: t, Z$ K8.17
    * G) E4 F; q+ ~8 C. w#include
    ) _& S/ y& ^* K4 uvoid counvert(n)  Z# v+ d. F# V, Y: n' ?6 [; L
    int n;6 p* [+ z  t  R0 \' E4 u0 n
    { int i;
    ( G, b0 J" s) z4 `' X' _  f if((i=n/10)!=0)
    ) J: a+ I& ?( c9 h) s3 e( A  convert(i);' J, ]$ t" Q& e
    putchar(n%10+'0');* B7 P( W2 |0 C' G6 O
    }
    7 k- H. q5 b6 k  h! l  f( p" tmain()1 p6 C7 r8 N9 D/ x; f
    { int number;& o9 b, s) t: M8 F  ^
      printf("\n 输入整数:");, R+ ^! m! ]8 o7 M& `
      scanf("%d",&number);5 f. W. e% K# q" l+ t- [  m! {6 B# ^
      printf("\n 输出是: ");
    9 w) [4 \0 K3 P  I+ k/ m. P  if(number<0)
    : o% \6 y* }: c* Z+ _  { putchar('-');$ z0 w# R$ K& b; U4 g
        number=-number;
    1 H, c; k  G# F# a1 V; o+ C& h* \  }
    " D0 G* l  q- Bconvert(number);2 [; ^( t% V5 Z) q% K
    }
    : i8 C3 y5 O" b5 I" c" ^) N9 C4 }8 d" E8 h9 K9 X
    # @! z$ N9 b" |) Z/ @1 A2 M3 g
    2 c  I, R) B2 q, L# M
    8.18
    & V$ J+ j. X) w# g# Y& w5 O( rmain()
    + N* z( `8 k" `3 {; T! @{5 ^7 A; `0 O% f8 g5 w) K
      int year,month,day;* j) f5 m) y% D1 r& b
      int days;8 Q, n/ V! X7 |1 V  O
      printf("\n 请输入日期(年,月,日)\n");1 A6 a( {0 b# J$ k; u
      scanf("%d,%d,%d",&year,&month,&day);
    . f4 N/ M- M/ n/ }  printf("\n %d年%d月%d日",year,month,day);. p# c+ \& |7 {# @. b1 W8 x
      days=sum_day(month,day);! N9 `9 t# ^+ T" m* h4 ~; {
      if(leap(year)&&month>=3)
    % Z9 Y; p* Q6 s3 K/ j: t$ |: F( N    days=days+1;$ v- ?* K6 |) C- e: C( G! I* h
      printf("是该年的%d天.\n",days);
    " P( x0 y8 [$ ^' a6 g }) I& Y! t- t6 L% ?+ y8 ~& G
    static int day_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}
    * B6 z+ g1 H# v- y1 n& B# t7 T. t- [ int(sum_day(month,day)
    3 T7 P7 w/ D7 o int month,day;; {7 T2 i" [! I
      {
    / G1 @; k! W# U2 r  int i;
    ' G* O* f5 A9 r5 M  for(i=1;i    day+=day_tab[i];
    9 h, r4 C; @* q7 g  I6 A  p  return(day);
    * ?. _' h* g1 a2 d, D  }
    / n9 N2 I! ?/ c' s; Z int leap(year)
    + h) v# }) `4 ?9 G% @. g5 ` int year;! ~' u5 U% T2 ?6 \
        {
    : m  v5 f" O! ~* F; O   int leap;
    % r+ x9 z/ v3 t( M7 h   leap=year%4==0&&year%100!=0||year%400==0;
    5 E+ b: l7 p" a0 J" @5 P) W   return(leap);
    6 C6 P5 ]5 i+ X4 q; b1 z' Z   }
    3 b- X! k4 v9 q. |5 [第九章 编译预处理  s. _  s6 w! q7 n
    9.1. _$ L3 e" u; P+ ]
    #define SWAP(a,b) t=b;b=a;a=t: F8 T7 E  w1 j6 G: l0 a
    main()
    8 f: F  n4 ~4 c3 b/ T{
    8 O- J7 M+ H" t* l+ uint a,b,t;4 V( B* m3 F) A+ a( n
    printf("请输入两个整数 a,b:");
    + p5 k0 r& s4 l. ^- n& l& Jscanf("%d,%d",&a,&b);
    " Q6 V7 {4 C2 j6 l& A' ISWAP(a,b);
    ( ]( q$ M5 h0 x8 Y) _" D. y" xprintf("交换结果为:a=%d,b=%d\n",a,b);% ^2 }. z! `1 m" b* u+ l: l$ C
    }
    2 `* h9 G" g- n9 q6 _+ _- U
    4 l: R: h  M6 o/ q& t8 F8 G& F( D5 U( g7 O% p& g3 L7 K$ p. y( \
    9.2
    9 v- E- k7 v3 E4 y& g8 w#define SURPLUS(a,b) ((a)%(b))
      X  t6 g+ |- r1 h$ t" H, S+ N1 G1 dmain(): i! Y, D& ?( }3 S/ S1 ]- U! @
    {7 p% h" K0 K( U% A& F5 P; t; t
    int a,b;
    ! p3 d0 r1 o" {& @" X* r: C( _. s printf(" 请输入两个整数 a,b:");
    # w2 y9 m' P' _6 K$ i scanf("%d,%d",&a,&b);
    & V7 N' i3 Z. T$ h5 T' p& Nprintf("a,b相除的余数为:%d\n",SURPLUS(a,b));4 \4 w) E2 V, m; v
    }
      F" O. x. q' S4 z4 r* ^7 v
    # n" k! K1 d! `1 [- s
    # }0 s# i3 n5 [- e# v2 j# Q' n9.3
    % N, O, {" e" Y! s% t#include; _+ v6 [6 K+ w8 q( T' l& u# k: O. x
    #defin S(a,b,c) ((a+b+c)/2)
    1 M( Q: f- y+ F7 {#define AREA(a,b,c) (sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(s(a,b,c)-
    * C  X, t. @* Y/ [c)))( @" B0 k( c$ H6 D  b& b5 O$ @
    main()
    " V, e+ Z0 Q" R! h) D; _! b/ H/ i {
    + q. r: L, M& k& g3 w$ Q float a,b,c;% L( k3 v9 z* V' k
      printf("请输入三角形的三条边:");" @& G3 j8 D; x9 ^" \
      scanf("%f,%f,%f",&a,&b,&c);
    . }: v' H7 w' y& P; @4 y3 `( l  if(a+b>c && a+c>b && b+c>a)
    0 s1 d* I. z4 {- I" M8 Y   printf("其面积为:%8.2f.\n",AREA(a,b,c));8 l- A2 W9 ]7 k9 C
      else2 j! w* T7 V& P9 i: i2 o, x; j
       printf("不能构成三角形!");
    ! U" m2 x) h7 g- x  B }8 ~4 j3 R" v3 n# X0 A6 E
    ' |0 `* \7 o; L% I: z1 O/ m
    # R1 L0 y" L3 K9 j: E# G

    3 _' [* \) A' M$ D$ w+ }. s! q9.4, S% ~' `3 z! S, V" K/ z1 |
    #define LEAP_YEAR(y) (y%4==0) && (y%100!=0)||(y%400==0)/ C6 G; U5 U- R; l! ]) ]& s
    main()
    % J" q% P; N& ~, ^* f {9 S5 e' d, d. ?) b
    int year;
    . t2 U) e8 r# W0 V printf("\n请输入某一年:");7 `% U" {0 w7 J5 Q7 h: ~+ y# S
    scanf("%d",&year);
    ! W5 O0 h7 V3 b. F+ }9 J7 v. O+ u if(LEAP_YEAR(year))% M- f/ r2 B! ~- `$ u; i- i" M2 ]
      printf("%d  是闰年.\n",year);3 c/ o) A8 \% W9 E. V
    else9 `; p; _6 Y5 {+ Y
      printf("%d  不是闰年.\n",year);1 A9 v: C* F; q9 E- V$ K
    }3 O$ @/ U) T( q$ {! @$ s
    : i3 }/ \  `, \' ?8 m: W8 T) _. R5 \
    3 c6 [) z- k6 I

    6 u1 _) _' ^# _7 ^9.5解:展开后:+ M: R. S7 Y# a5 q
    printf("&#118alue=%format\t",x);
    % e6 q, h" y, uprintf("&#118alue=%format\t",x);putchar('\n');5 {( I2 \5 j: o$ a8 g1 I
    printf("&#118alue=%format\t");printf("&#118alue=%format\t",x2);putchar('\n');
    1 @+ U  Y( h5 G输出结果:- T( Z# u; J' k
    &#118alue=5.000000ormat &#118alue=5.000000ormat
    $ C+ O( u3 X# j&#118alue=3.000000ormat &#118alue=8.000000ormat+ T6 w; Y0 S8 W
    & O' H1 v# U' B/ U2 N

    - e  @* Z, X, M- O+ S+ B9 j% S- q9.89 c. u, }1 L5 b* Q; @: F
    main()
    9 V4 b% S" i, M$ s' y/ s, v  {! Q% S* \; M. q' x7 d" w! M* R6 Z
      int a,b,c;
    % q) F, b0 M. ?8 }* F  j" F+ d  printf("请输入三个整数:");3 r+ k2 d5 G( n
      scanf("%d,%d,%d",&a,&b,&c);7 [  {7 F, l( j( B7 R) K% Y2 Z
      printf("三个之中最大值为:%d\n",max(a,b,c));2 I1 D  Q+ W1 l
      }* L9 j8 N% O; j
    max(x,y,z)3 a! Z- G5 Y3 ]5 a( `+ V
    int x,y,z;' A, q9 h+ t* L9 |1 r
       {/ x, O: C" x* }5 M; i% f2 q5 m- H
       int t;5 n7 z! G+ c8 N5 d. G6 F
       t=(x>y? x:y);
    - V* T2 r# f$ S0 A   return(t>z? t:z);
    ! h9 i/ {6 }3 ?& R* ~* M   }& w: D0 \0 z4 E7 U4 ~
    7 M8 F0 M* G# y3 d5 _$ @

    1 N. k. o' x; e* {! k9 m
    7 h! p: R) g9 x+ h2 r9 K' O! Q/ o9 K9.10
    . D5 x6 B/ ~- e+ M$ I5 {#include( ~8 t! ^5 S' }' E7 T
    #define MAX 80, H- ?% i3 D' |# L
    #define CHANGE 1
    : H" J  _6 }, \4 c6 j3 o1 W( I2 Amain()+ d1 _7 i# J6 ?7 Q5 u
    {$ u" ~8 s  p: T' o1 f: x
    char str[MAX];
    2 i1 K9 q, r# ? int i;( ^! ^( ^: }! O( W% e  J% B* V0 X7 G
    printf("请输入文本行:\n");
    $ i  v6 ]& l% R5 A' t% y4 J scanf("%s",str);; ~7 \# {# v$ G! @0 L
    #if(CHANGE)& P% V& k7 @/ v/ R+ h
      {4 m$ m/ A# K, v, Q/ Y/ S
      for (i=0;i  {9 U1 l, o, s5 S0 U% I& O" P+ E
      if(str[i]!='\0'
    / h' W, F6 ~0 D  J( Z. ~   if(str[i]>='a' && str[i]<'z' || str[i]>='A'&&str[i]<'Z')
    ( k4 m4 C; [8 V4 G- @    str[i]+=1;8 Z- o( P  }( _5 h8 N$ c
       else if(str[i]=='z' || str[i]=='Z')5 O% Q0 ]: D  h9 m
        str[i]-=25;
    $ \) x: W9 e. Q& T1 i/ d  }
    / A) I2 w! {& Y8 W( @3 h}
    6 }; t2 `6 V3 i) w. ^#endif( y2 \1 o6 F; W) p; f
    printf("输出电码为:\n%s",str);2 p( O" g% `: J* B5 D) h0 h
    }0 a+ J4 I0 M# ~+ @" q+ c4 l
    第十章  指针( `9 _! |9 w# H& I/ q
    10.1
    ! {5 O- ?2 I' J( k) Bmain()7 M6 [' ?8 p: ]1 m; j% K
    {int n1,n2,n3;$ J0 {& R* ?0 P& u0 P. s' |
    int *p1,*p2,*p3;
    ) J, i6 d! m: h: D: u scanf("%d,%d,%d",&n1,&n2,&n3);
    ) X. t/ w$ Q; ?, k: e p1=&n1;( [& J; @% `- O/ C8 z  d  g$ w
    p2=&n2;0 \, W$ O  f+ J2 \( b. S
    p3=&n3;/ z% R, [, N' V3 ]. S
    if(n1>n2)swap(p1,p2);& G/ I& P8 {, K4 O2 [
    if(n1>n3)swap(p1,p3);
    ; M7 E$ Z/ K- F3 B$ q1 n if(n2>n3)swap(p2,p3);
    , |9 t7 _1 V* ]- h; }, u printf("%d,%d,%d\n",n1,n2,n3);3 `7 f; b8 P1 g7 v
    }2 K  i" m7 T$ ?& G
    swap(p1,p2)
    ; G$ x  L% D6 @int *p1,*p2;% R- u1 ~% I& g
    {int p;9 g+ R, @; }$ s2 L
    p=*p1;*p1=*p2;*p2=p;
    9 K) {: }9 E* G- p3 s}. M) S- g; m' E
    10.2, V/ L0 c) R& o9 x
    main()
    * s+ C! ?! z+ `! R; Y+ o{char *str1[20],*str2[20],*str3[20];! N3 C) |: G5 Y" Y# u8 q
    char swap();9 W3 f6 l* C) \# `% T8 _
    scanf("%s",str1);3 @" `  r1 S5 y4 _8 M; }) p
    scanf("%s",str2);& U) W) k6 Y3 c9 n
    scanf("%s",str3);
    6 z0 @1 S9 R1 T9 N2 a+ }$ e if(strcmp(str1,str2)>0)swap(str1,str2);* U. W- A( l5 P& }3 j$ P
    if(strcmp(str1,str3)>0)swap(str1,str3);
    7 _% y) ?. T8 ~, Z if(strcmp(str2,str3)>0)swap(str2,str3);. v  m  f' P, x, l& {
    printf("%s\n%s\n%s\n",str1,str2,str3);, c5 Q" H: C+ q- S! J
    }
    ; L" p! R+ u3 j9 J4 R2 {) Jchar swap(p1,p2)
    ; I; f& r' y& L( r% cchar *p1,*p2;0 w( R+ R2 S" G6 u" D9 S$ j* p' c7 y
    {char *p[20];5 E& m4 r, H" D' P+ j
    strcpy(p,p1);
    ' A/ }$ a. M" T9 G; A0 ]7 e4 q; F strcpy(p1,p2);. J7 |  g* g7 {- ?* Q0 a4 r- Z
    strcpy(p2,p);) N; B' b+ r* p6 f+ u
    }, I: e2 F$ y8 e, Y4 E# h
    10.3
    ( n( A" x' s3 z9 b# T  R8 L+ a* wmain()
    ) p& S2 y. f" O; _{int number[10];' _0 R9 P/ r  u$ B0 s: H
    input(number);0 Y% _6 i) }' x& y. w4 h
    max_min_&#118alue(number);
    : f; b- Z" i4 l* F! \ output(number);$ U4 w8 f2 X2 I1 Z2 A
    }) g/ D8 w( a  u' r1 u- s
    input(number)6 w/ L! ^- Y- T# I& D
    int number[10];
    4 A9 F6 O1 y! D5 X* z4 |{int i;
    6 K0 A. c8 L! C for(i=0;i<10;i++)
    . Y9 _! E: |; U6 p: q4 f) w* M0 o   scanf("%d",&number[i]);
    & j/ R0 ?5 ^. ~5 F7 N5 }}. E3 r5 S% c* y3 e4 H
    max_min_&#118alue(number)" g$ W0 Y7 i! R/ R7 ?% v
    int number[10];
    ' Q# q  a% Q3 q+ d! g# N{int *max,*min;5 b' _9 q" m! ~* d
    int *p,*end;3 c2 M" U! s* o7 `! E* F, w
    end=number+10;, s. |) s7 F  Z/ G' s$ N" x* P4 b( u
    max=min=number;
    2 r* a( _9 m4 u) L. @$ p for(p=number+1;p   if(*p>*max)max=p;
    ' [' C! {8 ?5 f+ \" C   else if(*p<*min)min=p;
    7 h" }% y: _( A9 V3 G4 q *p=number[0];
    + B& V8 ]4 C, c$ F+ H6 V8 ` number[0]=*min;7 }6 U5 r% G* _: F4 m
    *min=*p;- D. y# A* X7 [  F
    *p=number[9];+ i9 E  L0 X$ ^
    number[9]=*max;1 T9 Y" ?; g  H9 A
    *max=*p;
    # e; Q) ^$ T% V6 {* S3 b' S9 h4 H return;
    2 |) B" o, R8 F7 \) g5 G. p}! ~7 [3 B; X# S; D
    output(number)9 ^( }; _0 s2 K- f" G6 F  D; F
    int number[10];
    * Y; ^! O6 f  y$ a6 V{int *p;2 P  {: N) ]$ l& B- H
    for(p=number;p   printf("%d,",*p);
    3 ]* ]9 M- l: r0 S6 J* t1 X printf("%d\n",*p);
    3 V$ z: G* ?" f  j; a$ M}! b4 D6 m, H: l: {0 d+ t
    10.4
    $ ]" T7 b: E/ m6 \/ Lmain()- x, `( y$ O$ s8 q3 u- B
    {int number[20],n,m,i;
    3 r4 {9 o3 @3 V scanf("%d",&n);
    # B; T0 U/ a9 z# I( f scanf("%d",&m);, }+ X4 [# T- j+ O) ~0 A
    for(i=0;i   scanf("%d",&number[i]);+ Y8 @/ R+ k3 n+ W9 P
    move(number,n,m);1 F7 R5 K0 `& v' @9 V' b  N
    for(i=0;i   printf("%8d",number[i]);* a# k4 `, Q& c9 [& H, i
    }; Y% @! G4 W( x. d! G
    move(array,n,m); c& B% I6 q  q
    int array[20],n,m;) b3 U2 _' t' P9 K' h( V
    {int *p,end;/ V1 q# \/ _  N/ A; }4 n4 |- X# N
    end=*(array+n-1);
    , p6 k5 R: E$ q: r# f3 a for(p=array+n-1;p>array;p--)* U- `. A: R  B/ r0 S
       *p=*(p-1);! U7 S" c( ^  T% {1 b
    *array=end;
    7 _; k/ ~- D+ V. e: X m--;
    ) z. m" L1 E: v3 Z' W6 D$ f if(m>0)move(array,n,m);
    ) h* h" F* r6 V. N8 u}
      c) r& f. ?2 Z. T/ o, K" |8 L8 p10.5
    5 v9 Y0 }  h& e#define nmax 50- \) K/ d9 z9 `% ]) P
    main()
    ; S) n4 L$ N& y: b) O  ^! t% B{int i,k,m,n,num[nmax],*p;( H; R1 V; l9 C2 h. f6 S
    scanf("%d",&n);
    + c! M" `3 P7 |5 r: S2 Y p=num;
    : T1 ?+ g0 \% x; c  @! ?/ {0 M% W for(i=0;i   *(p+i)=i+1;' J: A7 i5 R. v' f0 o
    i=k=m=0;
    2 G: u6 C4 K$ s% r( H while(m   {if(*(p+i)!=0)k++;
    0 R0 u8 g) n( E/ D6 P) V8 D3 B8 Z    if(k==3)
    & V. E2 j+ Y1 r) H4 }$ y" X( E      {*(p+i)=0;, ~% j1 B) h4 L: L% r: \2 }
           k=0;& E1 A' C$ h9 u! R( W& ]
           m++;
    4 o, Y" Q) ~* _& A      }
    & X& Y  m1 o# ^    i++;: }, N& G4 Z+ L
        if(i==n)i=0;
    - ?  c0 X4 W. y1 w    }* j$ k' q" \  c# w
    while(*p==0)p++;
    . R/ d/ y5 e- ~" S. M printf("%d",*p);. ?' v+ X3 R) r& o1 ?& y! a
    }' G* f) c' V4 J& T3 t8 f
    10.6
    / Y2 E$ u3 s6 S% k5 }7 E& Zmain()
    . J( Q, q/ W: U{int len;
    1 I: N+ j9 I) R" b: v0 D7 j char *str[20];
    - B' u1 f; b$ Q. k0 B scanf("%s",str);( \8 I0 _, Q" Q0 z9 c
    len=length(str);
    / s- m3 _5 S- b! ?+ [) T  p5 q printf("\nlen=%d\n",len);; j6 Y- H, f" I# n6 i
    }
    ( C- P4 i! Q8 Glength(p)2 [/ }5 h1 \% W5 O
    char *p;
    - z/ G% O; R+ Y3 W% p9 P) m: \{int n=0;. X/ X- l# c$ @! |4 x
    while(*p!='\0')- Q: n$ I! N  q1 T- K: N
       {n++;p++;}. T7 S0 R" x! g6 `. x! [. W
    return(n);
    0 e5 {8 {1 _5 Y' F}
    , ?/ N% c% S* Q10.7& F% Z) w$ S9 l$ e* ^) Z! Q
    main()
    9 n" J( k8 E+ M: y6 q* J" a{int m;
    / S% y/ J1 W% ~$ O" X" j char *str1[20],*str2[20];
    9 y: @- N! t/ m: K0 f& t scanf("%s",str1);+ d3 c: M4 `: b6 L1 t% [9 ^3 _
    scanf("%d",&m);
    ) W8 ]* {6 s7 K5 ^! E! B if(strlen(str1)   printf("error");' K+ e) w" J* k- ~( e* N
    else; a7 u9 K/ K$ ^$ V; x4 R$ j/ U
       {copystr(str1,str2,m);
    6 g# m6 I$ H: ~* {6 G    printf("%s",str2);1 Q( Y* V# R% n% B  i+ T; u
       }  S% P2 n. |! n1 K' w$ a! n
    }
    7 ~! W- Q! Z' a/ }copystr(p1,p2,m)
    8 C/ U3 C2 [! z4 Y, w0 V% Mchar *p1,*p2;* I% c, }9 K0 O/ `7 S$ j
    int m;0 f) R7 P+ ?9 y
    {int n=0;
    " `7 s- E8 t6 R while(n   {n++;p1++;}8 c9 J; h- g  ?, K1 Z
    while(*p1!='\0')
    0 m: ~" ~  u5 h& ]! i   {*p2=*p1;
    2 y+ J8 ]* P1 p- m' v    p1++;
    # ]: l9 q" `& ]$ T. u  b    p2++;' P4 K* z- g. L
       }
    8 X( Q) V. C) X& t9 Q8 ?3 u- D *p2='\0';" o) x# z* e1 Y7 T2 H; M
    }$ l1 P* E7 n% [6 \4 X, m
    10.8
    " S  K& \1 O/ a  U* e; h7 I2 H#include"stdio.h", W) h: J( t) p/ V6 V( t8 C5 M
    main()- F4 i2 C6 P" g3 }% _9 c: F% g' W
    {int cle=0,sle=0,di=0,wsp=0,ot=0,i;+ R& b/ W9 O* ~" J
    char *p,s[20];
    . _# ~  e0 p, O2 T" K for(i=0;i<20;i++)s[i]=0;
    5 D1 h2 P- C% _! Y i=0;9 L8 S' q8 v' n
    while((s[i]=getchar())!='\n')i++;
    % @: e1 k6 w- J6 ~7 J5 I3 ] p=s;
    / @+ ]- P8 W. n! w: G" \ while(*p!='\n')
    + M) w% u- b& |   {if(*p>='a'&&*p<='z')
    & N9 E! D9 K: d1 X( E+ e7 p- s      ++sle;
    7 R9 A/ z1 S2 f. {; H+ f  j    else if(*p>='A'&&*p<='Z')
    $ W; Y; f/ G6 W" @      ++cle;
    : w5 y9 K6 c8 `& ^5 u3 ]8 I; F    else if(*p==' ')
    $ }6 N. r, h$ R5 z      ++wsp;9 O& I3 t" C& a8 b
        else if(*p>='0'&&*p<='9')% T) n, P* M3 F9 C/ X
          ++di;
    : ~7 |( \7 P1 x; C. [* e8 w, v- ?    else" d1 \! p9 p% c
          ++ot;( _4 K! u! v$ I, L1 i7 @
        p++;
    - O4 k$ Y* z. }' c/ E/ T3 k   }, \; T1 ]7 ]7 E) L! ]
    printf("sle=%d,cle=%d,wsp=%d,di=%d,ot=%d\n",sle,cle,wsp,di,ot);
    2 \" D( a$ ?, }  k6 [* B}/ L( c2 U9 U  x6 X
    10.94 q( W$ Z) r  k* E0 @8 F
    main()
    2 U8 I# f& ?% x4 U% w  y{int a[3][3],*p,i;. E  w# m" [2 |! s8 `; Y8 q
    for(i=0;i<3;i++)
    , ^% D! S, W) H/ m& L$ S5 F   scanf("%d,%d,%d",a[i][0],a[i][1],a[i][2]);
    3 i; u/ K7 O! z9 o0 R3 ~ p=a;# \1 g! P0 T- N
    move(p);! b/ b3 V2 \# X' O- d; y8 o# ~
    for(i=0;i<3;i++)5 K2 J* O, y. o; z% ?
       printf("%d  %d  %d\n",a[i][0],a[i][1],a[i][2]);
    $ g4 a6 ]% ^  E}  b8 d. M1 Z9 D$ ~6 J1 M
    move(pointer)# J' ?6 Q: D9 O
    int *pointer;/ v# {1 r0 y, o8 n
    {int i,j,t;% l2 ~5 M4 q. f. b! \
    for(i=0;i<2;i++)- g$ G* Q! \3 y0 {! z1 s
    for(j=i+1;j<3;j++)
    : X* w1 h# X) K/ ~# C/ Z& I   {t=*(pointer+3*i+j);
    6 L, w# F9 t7 `/ ]$ b. z    *(pointer+3*i+j)=*(pointer+3*j+i);
    7 D; Q) t" j9 e3 a# }3 x5 H    *(pointer+3*j+i)=t;
    8 T* {& @9 x4 b6 {+ P9 O$ x$ B   }3 M% |5 d& [: |
    }" ]. e! D5 a8 n- z, U0 K/ Z
    10.10
    : F9 g/ _. f( \7 ^* K  Smain()
    ' m& s& A; p- [# t2 e: l{int a[5][5],*p,i,j;
    6 C: }5 Q5 n1 N% H. n' W3 U for(i=0;i<5;i++)+ o  b; T& ~5 K$ T" C: g
    for(j=0;j<5;j++)
    7 r2 o3 o9 B2 G8 g   scanf("%d",&a[i][j]);" E3 y# j3 n7 M
    p=a;
    * U2 ]" c$ r& {! J$ {' Y0 g change(p);6 m, J; ]- Y; U& D' A6 [1 {
    for(i=0;i<5;i++)" i# w* `- C' q( ]4 {/ i
       {printf("\n");* C; f9 F8 |5 h. O% e
        for(j=0;j<5;j++)/ x# y+ g4 Q* G9 _( G
          printf("%8d",a[i][j]);& `9 o( @2 o3 c- ]; Q
        }
    $ s4 G/ e. I: r}2 E, {9 z. z3 Q7 H/ u: H. W
    change(p)
    % n* ]8 d! J: s5 g( Rint *p;
    ' w: M5 R/ L& h7 c{int i,j,change;
    : c. _; S& F$ C" p. g int *pmax,*pmin;' @  `6 o, q. ~, ^# g7 V
    pmax=p;% I! o! D# }5 y$ l3 c( T
    pmin=p;
    * ~# {; P( W! v: m& F& f; H" ?, f" T for(i=0;i<5;i++)) E# c0 {& }+ p. z
       for(j=0;j<5;j++)
    * N9 H9 J) b% B4 X. t) g, n) j8 f     {if(*pmax<*(p+5*i+j))pmax=p+5*i+j;. n& I- W' n; |6 `
          if(*pmin>*(p+5*i+j))pmin=p+5*i+j;6 [; P2 }9 Q# c/ v% B
         }
    ! w3 l, X0 b0 R6 y change=*(p+12);
    9 ?' v6 Y0 X- E9 J( I# k *(p+12)=*pmax;
    ) r3 B. h/ u& {6 q8 Q *pmax=change;; [7 k- H4 p% f
    change=*p;
      u3 d+ I6 u- ?0 x *p=*pmin;
    ( r' r. i2 \6 `: n4 o8 ^9 H/ r! } *pmin=change;6 E) G/ n4 ~- R# r7 ^4 f, p
    pmin=p+1;
    6 x( t. s; G- G/ p6 g- P- ^ for(i=0;i<5;i++); \3 W% J3 ^1 y% ]& ^4 k
       for(j=0;j<5;j++)9 h/ Q9 j) }7 G$ I+ Y3 A. y0 o
         if(((p+5*i+j)!=p)&&(*pmin>*(p+5*i+j)))pmin=p+5*i+j;! x# t3 `) U& F/ r$ f
    change=*(p+4);
    , `5 g0 h8 S5 Y3 _  X3 j *(p+4)=*pmin;3 G: ~, v+ U) T
    *pmin=change;
    : g9 D& ]7 H- i. o3 L4 g& \. [ pmin=p+1;- e( Q  \5 h. l, `4 y2 d
    for(i=0;i<5;i++)8 T# G$ y6 Q0 r
       for(j=0;j<5;j++): \3 k6 d% ^5 D* S6 P" ]8 I% G( ~/ {
         if(((p+5*i+j)!=(p+4))&&((p+5*i+j)!=p)&&(*pmin>*(p+5*i+j)))
    : P9 d& O/ V3 o2 s7 h* b4 y% g        pmin=p+5*i+j;
    - U- k9 o# O0 v2 {3 }0 y2 v2 C% {0 K change=*(p+20);: J* D7 _/ h, n: Q4 r) Q
    *(p+20)=*pmin;. m. z4 b- \% E1 M' y' \
    *pmin=change;4 c$ \4 L; v/ m! R. E) v7 o
    pmin=p+1;; G- v9 R5 ?1 }& u3 V, d1 s
    for(i=0;i<5;i++)- l: T8 m/ o; b- v2 W6 U
       for(j=0;j<5;j++)" d! K6 f, w! Q( T1 Z
         if(((p+5*i+j)!=p)&&((p+5*i+j)!=(p+4))&&((p+5*i+j)!=(p+20))
    ! o) h) M- a4 J  e1 Z            &&(*pmin>*(p+5*i+j)))pmin=p+5*i+j;( j. U- y2 ]: x2 T6 y7 n' M
    change=*(p+24);
    ' u: x* ~2 H4 H *(p+24)=*pmin;
    ' Z+ q- \( x' M) h# [ *pmin=change;
    * d+ Z) R5 D* Q}% |$ D; y( U* F! n+ Q$ W
    10.111 h' q) N# H' \6 m2 C
    main()- a( ?" g0 P4 u+ |0 s/ B+ I
    {int i;
    + w' T& P0 A$ g0 m char *p,str[10][10];
    1 {: _: C1 r4 r) M for(i=0;i<10;i++)3 D0 ^+ t$ i8 Z
       scanf("%s",str[i]);
    ; W4 p9 Q3 g' @! z$ a) i p=str;7 z+ h: e) ~  {: j! S
    sort(p);
    ! m5 w5 U; n" v6 _3 K for(i=0;i<10;i++)
    . |& `9 e* m1 z9 b   printf("%s\n",str[i]);) l+ h! q5 u3 L
    }( c' e$ b3 k( `: o* n' n: T
    sort(p)
    ( k* E; E, f  Z3 [2 |: Bchar *p;
    * k! b( i6 b% a$ @: e! w{int i,j;
    7 v$ X. H7 f' n' V6 f, d char s[10],*smax,*smin;
    1 k4 L  a- r# K; ` for(i=0;i<10;i++)1 j: i! e2 P" h& t
       {smax=p+10*i;9 }- G3 c/ ~- A4 {0 {6 N
        for(j=i+1;j<10;j++)" V) P7 u* b8 R" k- y
          {smin=p+10*j;" v* S/ S# ]" X' O
           if(strcmp(smax,smin)>0)
    0 p3 Y8 R7 K$ X% I) w         {strcpy(s,smin);% D5 r1 G% v$ W) ]9 k
              strcpy(smin,smax);1 p% S9 h! A: c9 M3 n! d7 A& n2 x( }: S
              strcpy(smax,s);
    / z; }& ~5 \6 q7 w- ]4 {- d9 X# q         }: U2 t* u! B) c) D2 X" t) m# o1 Y
           }
    7 v6 ~- ]7 V6 z" a8 X$ o) y    }  Y: @+ P$ P7 a3 j* I+ v; K8 l
    }2 l5 U; l3 V& J8 J  o8 R; c
    10.12
    8 I! N3 L# I( ]3 m% \#define MAX 20
    3 Y8 A8 x" M/ k" l, ^5 n$ k( gmain()7 a  a' v2 \. o( B, \8 v: t) y
    {int i;
    ' {, c$ c3 h0 p! C3 l1 Q* ~ char *pstr[10],str[10][MAX];
    ; E" K0 q1 o" f3 ~1 n! E& ] for(i=0;i<10;i++)
    - B" ?2 ^: q$ \! N   pstr[i]=str[i];
    + D6 B! A) d- x% I. ` for(i=0;i<10;i++)
    4 u9 H. u, Q0 B' Z   scanf("%s",pstr[i]);
    9 A5 G7 k# a8 P  F( }" I* w sort(pstr);- d! f; w5 f8 t
    for(i=0;i<10;i++)$ K7 y$ Y: v& z# q$ }9 v
       printf("%s\n",pstr[i]);* l, k2 _4 _3 k* w( K
    }
    7 T( M6 N7 b) v6 L" n) rsort(pstr)
    : ^# |8 Z( d; X$ M8 \char *pstr[10];
    5 e% J5 \! i; h( Y{int i,j;
    * ?' Z7 M( j0 u  B8 Y+ m( _/ u* i char *p;# C6 v% s8 v: ?4 i" p
    for(i=0;i<10;i++)
    : o* Q# F# |5 c# D/ C0 d3 ~+ F   {for(j=i+1;j<10;j++)
      J6 C) r$ ?" L( P9 S0 f' J( k3 s      {if(strcmp(*(pstr+i),*(pstr+j))>0)% t  p$ l3 Q4 N, f4 ^
             {p=*(pstr+i);6 m! p4 p* A! v/ }: K+ ?
              *(pstr+i)=*(pstr+j);
    ' {7 }8 ?$ R  J: R: l- ~; Z! _          *(pstr+j)=p;7 T/ ?& v0 r9 M
              }
    5 t2 ^, I) r3 [8 \       }
    9 }# i3 ^$ t; P0 L    }: W7 y. P; c6 n0 L0 X5 C* e, r4 a5 r
    }
    * F, |. f' r2 ?9 i; ~10.13
    * r  {' r% {" ~0 C#include"math.h"
    0 {2 B. ?% |3 @' s( o+ Mmain()
    0 U' U; Y2 W/ I3 K8 X4 {{int n=20;
    2 C6 |) T( ?4 V, O5 Q6 e5 Y4 ?2 d float a,b,a1,b1,a2,b2,c,(*p)(),jiff();
    1 G, S" }, \( y" J5 |* ^" n scanf("%f,%f",&a,&b);
    5 I6 f( [7 O) K( ? scanf("%f,%f",&a1,&b1);' k( U3 C4 N4 z4 }4 x# W# f7 ]
    scanf("%f,%f",&a2,&b2);
    1 s* a# K- m3 J- ^7 T6 Z p=sin;
    ) Q+ U0 b3 `% H8 q8 V c=jiff(a,b,n,p);
    & q/ ~5 _1 v* G) p' c printf("sin=%f\n",c);
    # j% n  ~5 t$ k- R! q0 j p=cos;! J! J5 [( m6 g0 H8 |8 ^. b
    c=jiff(a1,b1,n,p);
    $ V! W! ^! w9 k* w: ?  I printf("cos=%f\n",c);! a. {& a5 r# s
    p=exp;  w9 R" W. a- H
    c=jiff(a2,b2,n,p);
    2 f7 X* j* @* l- O2 ?' d printf("exp=%f\n",c);$ a- q9 z, b7 N( p( e7 |8 p
    }" z. i! s0 a# M1 y- N- A& `
    float jiff(a,b,n,p)
      e+ W4 b! G6 N( a4 c" d1 N$ Xfloat a,b,(*p)();# e( I; D2 B$ T5 ]
    int n;& D% O! D" i2 z) }
    {int i;7 o3 S+ }5 y% R0 c; X: M- {
    float x,f,h,area;' S- V4 `8 G7 @
    h=(b-a)/n;
    7 X3 p' X8 g: r( K5 F- U x=a;+ N: J$ B9 Z! b3 K8 k. j' m
    area=0;
    5 X. ^+ L  I5 n. Z for(i=1;i<=n;i++)
    ' v7 ^: v* K: |   {x=x+h;/ `4 n) f* u% M& r0 s
        area=area+(*p)(x)*h;/ Z- M6 ?+ q7 [* {6 E3 u: Y( g$ W
        }
    . p5 G* W, ^% d/ }' |' x  Z9 | return(area);/ Y, E  B6 Z7 B% X
    }9 Y+ m# j* o9 v4 Z
    10.14
    , u8 ^0 y" T" ^7 c3 {! _0 }main()
    2 y6 E0 }2 y; d* N{int i,n,num[20];
    % S+ V- R8 d/ \$ { char *p;6 w* _2 K( A" t  f# ]- ~
    scanf("%d",&n);
    ) r& u3 _1 W+ k/ z+ v, i( u for(i=0;i   scanf("%d",&num[i]);: l5 y; }" `: H# p: X0 P
    p=num;  ?0 j, ^% f$ s
    sort(p,n);
    . S5 o- F; i3 F% j: ~ for(i=0;i   printf("%8d",num[i]);
    + X4 F, z3 h. x/ I! s) v}
    & h, g9 l; T# T0 C% w/ bsort(p,m). B7 D/ J/ m, c4 o' Y. x3 L* i$ R! y0 P
    char *p;
    & t8 D% `, r4 Z- T  xint m;# ]4 A% J9 I( g' G  L3 Q
    {int i;$ u- Z3 P' }; B6 ]" j4 W' }. U( ?
    char change,*p1,*p2;  Y- q" _" a! u- c" Q! C2 f( g
    for(i=0;i   {p1=p+i;
    ; |* G9 Z7 s, x' X6 _  M6 x1 j    p2=p+(m-1-i);& f$ f% g2 W" Z8 H
        change=*p1;
    0 M. Z+ ^& f0 Y4 ]7 x* ^    *p1=*p2;+ ~( x- h0 |% A
        *p2=change;4 v' U& M) M0 g; A/ B7 C: l# H6 m
        }, J. E# v& W1 C' w4 {
    }. F2 e# n, X) m0 J8 j& l2 H- I0 t
    10.15
    " _" y/ m& J9 K2 W- j0 t2 P$ h/ @0 Qmain()
    , c+ T$ ^) ^) g. I{int i,j,*pnum,num[4];' f- {2 u9 o5 ~, U: S
    float score[4][5],aver[4],*psco,*pave;! N; B+ o6 B; t' y5 H& U
    char course[5][10],*pcou;2 A9 N- i$ Q0 h: Y) M& W
    pcou=course[0];
    % L$ c  W! G3 f* F/ t9 I1 b, h6 p9 y for(i=0;i<5;i++)
    $ o4 [5 \5 F, Q) s* l# G4 e   scanf("%s",pcou+10*i);
    $ |' R& b) n) f- f4 m printf("number");% \. V2 j  Z2 |+ @3 @
    for(i=0;i<5;i++)
    0 s- r2 I1 X! S% E5 `: L7 Q   printf(",%s",pcou+10*i);' {: n: I- I$ X) X( I: R) R
    printf("\n");3 c. c3 v: r7 `( @: _( I/ _
    psco=score;9 u& U; m2 O$ ?2 A" T" C
    pnum=num;
    5 N) ~1 U( n+ P- J! }+ G4 |5 G/ S for(i=0;i<4;i++)
    ( O& T4 ^, ^% t# v% S   {scanf("%d",pnum+i);
    " E! z0 c6 p% A& P  u    for(j=0;j<5;j++)
    . Z9 L/ C# y. }; n9 Q/ I      scanf(",%f",psco+5*i+j);
    4 h3 p0 {. ~5 b4 A0 M   }  C6 x; I  {: e0 ^
    pave=aver;; j1 E; l, m5 h! U
    printf("\n");
    ! W% y6 W/ q) O8 V avsco(psco,pave);" y+ _: L2 y4 u0 G' R
    avcour1(pcou,psco);( Z* B; P- A* T' y6 ~8 X1 J, G- C
    printf("\n");" i$ \( l; N9 w: }& u
    fali2(pcou,pnum,psco,pave);9 Z3 m3 R& D! }& T* I$ c! R
    printf("\n");
    7 m+ m0 r4 ^& s6 ?/ t2 x2 x good(pcou,pnum,psco,pave);* w- s4 O! ^% k9 q
    }  R2 V: e0 u# `9 k. U1 n
    avsco(psco,pave)
    3 l; G  X; q: N- Ufloat *psco,*pave;
    6 y. @! Z8 J+ q( Y4 t# w- H8 I$ k{int i,j;
    ! d* I+ p1 s' f; l2 z float sum,average;0 L% G6 a2 n8 C7 Q
    for(i=0;i<4;i++)
    : I& Z" `/ P$ O& O3 S   {sum=0;
    ' r% X9 R2 }! W* ^    for(j=0;j<5;j+)" G) u0 I8 }) F
          sum+=(*(psco+5*i+j));
    - F# W( Q# R: c% W# @8 n! q; T    average=sum/5;7 b1 ^, z* T- A1 Z, f) k
        *(pave+i)=average;
    , l7 k. H9 W% l5 Q/ W& f0 @5 @   }
    . H9 n6 t; o4 W5 |! }}/ B% h2 D7 c$ u, N! U
    avcour1(pcou,psco). l6 ]# C0 r3 T$ ^! g
    char *pcou;
    . d, u1 n4 w" k/ u( ?float *psco;
    # N- d" g: C5 C# t" y9 o& ~% ]- `{int i;+ t! k; e0 P$ O; l8 W! l0 `
    float sum,average1;. u) M' ^; L! o7 u6 q- Y- Y
    sum=0;7 {- K  Z7 w, ~
    for(i=0;i<4;i++)0 |" S: l% ?- D/ ]
       sum+=(*(psco+5*i))7 Q! S) P; _! i$ [. n9 e. }1 ]/ A
    average1=sum/4;- F, B# [& Z9 R5 t# n7 _
    printf("%s      %5.2f\n",pcou,average1);+ h' n, w$ @1 T
    }
    ) G' m" h/ b/ g+ D' {0 j( G5 v& ufali2(pcou,pnum,psco,pave)* }; |4 C7 b. A! U9 g; N' S# ~
    char *pcou;
    " q2 G1 g( U0 `1 l5 n) [4 pint *pnum;7 _) L( \8 m2 {$ f  e2 [7 k5 _
    float *psco,*pave;
    : j- R& }( a& D{int i,j,k,label;
    ' c9 q2 p" K" f* K8 U) X" V* p printf("\nnumber\n");
    8 H; N" g( G4 k for(i=0;i<5;i++). _$ o: M+ A$ ]
       printf("%-8s",pcou+10*i);! M) |% U+ V/ Z* a# r( V! C
    printf("\naverage\n");, Q0 F1 p% s; D. d5 A9 L$ h
    for(i=0;i<4;i++)* {& J' a  a6 O$ h# A
       {label=0;
    ! ?3 R5 q8 B$ \" K. N. X" p4 i    for(j=0;j<5;j++); P/ d' }6 X* h2 x
          if(*(psco+5*i+j)<60.0)label++;
    8 j  z" g9 s" k    if(label>=2)# {7 j+ X5 ~# o
          {printf("%-8d",*(pnum+i));1 \6 n1 U) j, @3 @7 `) T& E+ P
           for(k=0;k<5;k++)/ Y, y& l, r- M# }
             printf("%-8.2f",*(psco+5*i+k));2 H- K% ~8 e* j$ k
           printf("%-8.2f",*(pave+i));  m# u" M8 `, m" D6 L$ ^6 K
          }
    1 j3 T2 N8 \( o9 q4 w, x) H# C    }( ]' P; q/ \9 |: L
    }
    * u: q% N' x# A# F" ?8 U8 C: `good(pcou,pnum,psco,pave)
    ! U7 o* A" ^9 i8 J3 k# m# Fchar *pcou;
    . g3 x& A3 @, [3 i( A. yint *pnum;) v: @: C8 x/ L2 D
    float *psco,*pave;7 U! q5 Z: Y! Z  n8 v4 z
    {int i,j,k,label;! D' O* j# P; P
    printf("number");
    + e, \+ D9 o4 q, W( T' u2 { for(i=0;i<5;i++)0 Q: H0 W  f0 d1 X3 V( g- n8 j  z& b
       printf("%-8s",pcou+10*i);
    2 f  ?, o7 l$ `& ]+ f: F# z0 S printf("average");
    2 h' I+ V5 s  P* {' x" U, W for(i=0;i<4;i++)
    9 G- {4 f7 f0 M" I   {label=0;
    & W! p- N6 Z! E0 \# `2 v! f4 M    for(j=0;j<5;j++)
    . K' @. d$ y8 P+ I1 Y! t: N7 D      if(*(psco+5*i+j)>=85.0)label++;7 a) ]1 W" _, L( @
        if((label>=5)||(*(pave+i)>=90))
    9 J8 K! \8 [( p- E9 U' ^' \      {printf("%-8d",*(pnum+i));: |3 A- q& ]5 ]+ M0 k: Q: m
           for(k=0;k<5;k++)
    3 Y3 W) v. \4 S. {) Q& x         printf("%-8.2f",*(psco+5*i+k));8 p$ c, z9 `/ _2 n
           printf("%-8.2f",*(pave+i));) X, Q5 ~5 i9 \- l$ g" R# _
          }
    3 C( G7 k8 x$ z* W0 y* z, @6 |0 s& Q    }4 t- I# |7 j- T( ~) t. F
    }5 Y1 J  ^5 ~  ?2 z% U2 v+ {6 m( q
    10.163 n. ^9 e" y+ q3 A7 h0 K4 T: F; ?
    #include"stdio.h"
      A: ~6 \( H, k/ f* l( Emain()
    8 h% Q  l* ]% ?{char str[50],*pstr;
    # K" Y' k5 K6 x. h int i,j,k,m,e10,digit,ndigit,a[10],*pa;
    5 H+ `- W! ?/ ]( ~- x* ^( j9 K/ K gets(str);( q7 b/ h+ I/ W# z9 e3 w
    pstr=str;
    7 F1 X2 }) R6 v4 m pa=a;
    - r5 l, @' m# R2 S ndigit=0;$ ?" g0 i! U% K& f3 ]- U
    i=j=0;
    * m; e2 j9 J2 {, A5 E+ `& @9 T, G- r* Z while(*(pstr+i)!='\0')4 ], [! D* w/ T* L$ e# t
       {if((*(pstr+i)>='0')&&(*(pstr+i)<='9'))
    ( f$ p+ L7 P/ h- n' e$ F      j++;0 |1 o1 }- C0 w; z# w" A
        else
    $ ~- c+ e, R' z9 J! o4 S      {if(j>0)4 b9 T" E) ^* ]3 b$ V& v
             {digit=*(pstr+i-1)-48;6 V  F. o. J8 s% @
              k=1;
    - ~7 c. s/ [' ~          while(k            {e10=1;
    . C; q) @3 o+ M. f3 i             for(m=1;m<=k;m++)
    # Z) P( P) Z6 {" n) `               e10=e10*10;
    ) {& n  D5 d$ t             digit+=(*(pstr+i-1-k)-48)*e10;
    . p: v" T5 c  c4 F# I, `  ]             k++;
    6 [- ~  |" o" }            }
    2 O: [3 H6 C. c2 v           *pa=digit;* h$ p& D/ u0 d5 W, C
               ndigit++;) z6 e9 k# t  j5 m$ y
               pa++;
    / P6 V% E1 A1 w8 V$ [, l  l           j=0;
    $ q8 w1 p  p  c2 ^  w          }
    1 D1 e6 Z) M0 `9 M* q" |9 i        }2 s( V3 t& v2 g6 L
         i++;
    ) v. ]! A: s7 O4 m( z# T6 e- R4 O     }
    : F3 U0 P& B0 V6 F% ] if(j>0)
    1 }$ [; s( ]% u5 M   {digit=*(pstr+i-1)-48;# o+ S0 ~9 |0 R5 q0 ?5 P; s2 E
        k=1;5 \# j6 i, a3 H2 a3 l( Y% t
        while(k      {e10=1;4 k$ O, [+ z, O' N3 L
           for(m=1;m<=k;m++)
    1 U7 ]) q/ f1 }) C          e10=e10*10;7 E, e  W9 F5 }* e6 f2 p
           digit+=(*(pstr+i-1-k)-48)*e10;
    ) U% E" j7 C, o4 ~2 Y/ E" u       k++;
    : X8 ^. q% x8 g       }
    ; w+ r4 ]0 n# y4 G1 t- A9 g  i     *pa=digit;
    + P' C% [' A+ S1 u9 R     ndigit++;
    + b# k; d2 [8 z5 g/ x: |$ N* ?     j=0;
    6 V5 k' J) l/ Y' V6 V- |. v; h0 P    }   ' ]$ s, F( I4 F5 d
    printf("ndigit=%d\n",ndigit);4 Z! n& b  ^8 w  r  u" R! b( K- W
    j=0;# Q1 t' N. k& {8 E- Y  x
    pa=a;
    * ^2 H  r1 f' E* A# G/ J for(j=0;j   printf("%d",*(pa+j));
    0 }$ }8 Z( v6 T! b% r  U4 |8 j}9 d7 T! y/ [7 x
    10.17
    # U! g1 }: G( I( e; Mmain(): ?) B: n/ t2 y9 {
    {int m;: L  K& ?8 L! B1 D0 a
    char str1[20],str2[20],*p1,*p2;
    ) w# i# w+ d/ ~8 v scanf("%s",str1);
    : D  p9 E( z1 ^# S% L scanf("%s",str2);
    , {) P# Z' U5 \# o0 m' A9 x p1=str1;$ k7 S+ |) H3 |
    p2=str2;
    * t0 Z6 S, b: L" I m=strcmp(p1,p2);
    ; `9 U  g: Y: h# H' E printf("%d\n",m);+ h+ m' I7 |, ?( w* d7 M( W
    }
    5 }- f4 v, e) n( R, N$ f9 `strcmp(p1,p2)
    : T: e/ ?3 N( m5 f% z! Pchar *p1,*p2;
      L  [, @) T$ c8 Q{int i=0;
    & }4 |- b7 t1 g; P while(*(p1+i)==*(p2+i))
    . s2 e" p& k- |' d2 p) d* v   if(*(p+i++)=='\0')return(0);& F2 @5 u; H* y
    return(*(p1+i)-*(p2+i));" k9 z! L1 T# ]2 b* T+ ]$ f# c
    }
    6 n3 V2 s7 e  R6 P10.18
    * o# M6 C2 I9 j7 |) u# v2 B; \main()' K+ N" O& L+ l1 t
    {static char *mname[13]={"illeagl","January","February","March",
    , `  @3 ]" f( V. i   "April","May","June","July","August","September","October",4 g. z7 N0 g3 A& W- u
       "November","December"};
    . b/ q' r& p- y' { int n;% j3 z* X$ M- r4 n; _6 J, u
    scanf("%d",&n);
    8 i  f/ D1 r0 w8 B$ P7 i5 m4 r" m. U7 s7 [ if((n>=1)&&(n<=12))# c+ A3 y, }9 F: [6 d/ \
       printf("%s\n",*(mname+n));
    5 B0 ?9 a" F) j8 c- I6 w else
    / x% U' V: M! m3 ~+ `   printf("error");
    8 J1 X7 M9 f( l7 Z0 [2 b}
    : t2 g& I" q7 L; Z10.20' x$ f! j. h- ^, \6 q
    main()5 D5 y$ [' d8 k; {7 H/ @3 F1 |
    {int i;
    4 V$ {* q! b2 Q5 c char **p,*pstr[5],str[5][10];
    1 |9 X$ R: F5 y" T for(i=0;i<5;i++)
    ) J7 E& L5 K5 A   pstr[i]=str[i];! ~% A( w6 d" b
    for(i=0;i<5;i++)
    . m9 {# V0 n3 b$ F" B3 \   scanf("%s",pstr[i]);
    % Z4 Y- G) a5 J& s% m. P: G+ j7 N; x p=pstr;' _! D- g& v8 l
    sort(p);8 w1 X* d0 }+ h$ N$ \
    for(i=0;i<5;i++)5 C4 L# I3 W- `4 k8 c* z
       printf("%s\n",pstr[i]);0 J5 W- n. z+ z* P) \: R3 F
    }" Y# ]& t* m0 K) m3 m3 i
    sort(p)
    : G) p( n9 E1 g' Ichar **P;
    % u5 }6 x- O2 m3 \! {( \4 v/ {{int i,j;' @. c/ b6 G. X! U' z0 z9 ~# P
    char *pchange;* r6 Q- [1 I5 D3 Y: V/ N
    for(i=0;i<5;i++)0 h' Z3 W8 r- b) a; L
       {for(j=i+1;j<5;j++)
    2 a* v  ?& z5 V& d& v: i      {if(strcmp(*(p+i),*(p+j))>0)( s4 i- n7 `6 Z  k% y, ^: ]2 F
             {pchange=*(p+i);: a4 B- H1 Z0 {
              *(p+i)=*(p+j);
    3 u9 x" w) b0 p" v9 d3 J% ]) T1 N          *(p+j)=pchange;- @" f% [% H- v+ B4 r
             }4 u& }+ ]; @# B9 {9 j/ e
           }
    / t! }' K7 I9 R, {$ l5 J3 r    }
    1 y7 J; q' `/ J9 I1 R}0 S; I% e* q9 m
    10.21  v5 P6 p! Y) z3 g; W; `
    main()# M3 V5 f- B! @1 z, R
    {int i,n,digit[20],**p,*pstr[20];
    ) p7 F) {, F2 s5 k$ {* L7 O scanf("%d",&n);% k$ x: K# i6 I+ J4 z5 |) d  p% E
    for(i=0;i   pstr[i]=&digit[i];
    9 H( |# I% X6 Y9 X- Q for(i=0;i   scanf("%d",pstr[i]);
    ' k6 Y- ]) J# o2 t+ A7 Z! T9 ^) a5 B p=pstr;
    2 D- s5 l: j! r, C% V8 O sort(p,n);
    ' o# s! O% l9 C3 r; e for(i=0;i   printf("%d   ",*pstr[i]);
    2 m4 D1 B7 t, }  m2 B( x}! `8 e( |5 K" U8 c. h' Z
    sort(p,n)
    8 t3 t* y* n2 Xint **p,n;- H+ y  U- L! M
    {int i,j,*pchange;) w: V3 }! Y/ n1 F# j. |
    for(i=0;i   {for(j=i+1;j      {if(**(p+i)>**(p+j))6 G$ o! P. E7 a
             {pchange=*(p+i);" a& q0 N; a3 G! d$ l. [
              *(p+i)=*(p+j);+ t: R: N2 V  q4 |& C
              *(p+j)=pchange;
    + m3 d5 W' |5 {9 J8 d1 w+ r3 M         }
    9 E7 e# t2 ^1 L4 Z3 O      }
    : j8 M) n0 S4 h6 X$ b8 [: [% Q& J    }5 F" Y" P( l& a: t% l" N& S6 W1 |
    }( ^1 [0 |3 H+ c+ t" ]. t, z5 [; N
    第十一章  结构体与共用体& _9 j/ v4 p, g3 q5 Z/ c- O
    11.1
    1 {7 ^" A0 M  q# m& u/ Ostruct
    4 b& X# a' R$ k2 P5 D  {int year;
    1 d8 n3 B- f, }! H, g8 _" X' U3 o   int month;! y( g) W, a7 }4 p3 ~9 J# f
       int day;
    + N9 Q9 Z  W+ I* M4 A4 A  }date;' W' n& m  R1 }8 M) w! g
    main()
    # q8 I0 r7 `1 d/ N; z' P3 ^) H{int days;! B& [: Q0 ]: b3 S- m/ s; Z
    scanf("%d,%d,%d",&date.year,&date.month,&date.day);
    3 H4 M# @: W+ `- p+ \ switch(date.month). W& l* f' X( h% _& @$ v5 V
       {case 1:days=date.day;break;
    6 p& ]. c0 [6 B- ?) u% G/ U    case 2:days=date.day+31;break;
    1 p. V3 e: K( h/ f$ @! {5 A" Q% f( h6 ?    case 3:days=date.day+59;break;
    : H- L0 Z* E# @3 N! B    case 4:days=date.day+90;break;7 C) {9 f( R, Q. q& q! _1 i
        case 5:days=date.day+120;break;% T! c2 I6 G. B! t) W
        case 6:days=date.day+151;break;
    3 ]) ]+ @- c  p( t+ P    case 7:days=date.day+181;break;: n% F7 @! r: o' m" `
        case 8:days=date.day+212;break;
    3 t  o* F# G1 p( ]( O8 l" b    case 9:days=date.day+243;break;
    2 T  V9 R. X* U9 r$ e! F    case 10:days=date.day+273;break;
    & J5 ^- T# N7 f6 G& [) B/ b# f    case 11:days=date.day+304;break;. z# z' o: ~- \1 n
        case 12:days=date.day+334;break;
    * Q# c3 M7 B( F    }8 m4 K" b* b$ u7 U" [9 h
    if((date.year%4==0&&date.year%100!=0||date.year%400==0)
    8 o& H2 Y/ f2 y/ @8 @                          &&date.month>=3)
    - B3 _$ {5 [# h8 q2 S6 M   days+=1;( c3 P" ~# B3 q  R7 K/ o9 q
    printf("days=%d\n",days);% p0 q: ?. m  }& M% i8 ^2 n
    }
    , V" E* Q& B* j, u% k, W) J11.2
    : [' }3 b  D  z  }3 y4 g$ x$ Rstruct dt7 U6 u( D0 G' m# e4 D  N
      {int year;# l% j% l$ V+ w6 c) p' k) c8 p
       int month;
    ; M# N, T& n! j" k0 x5 f0 P   int day;
    8 J* U4 w" g4 L( [  T: [  k6 }  }date;
    : @8 R* }4 N* f9 M) ~+ M' E, D) Jmain()
    / Q& c& W  L. H1 R1 ]+ I: f{3 G9 X$ s7 c6 m8 s4 {9 d, ]
    scanf("%d,%d,%d",&date.year,&date.month,&date.day);
    + b% _9 B) |* S7 c7 y5 Y printf("\n%d\n",days(date.year,date.month,date.day));
    9 b% F% w$ n! e, q: b% r$ {) u! G}. ^* [& Y" Z: H+ s) o3 l
    days(year,month,day)
    6 C9 T/ g; _! Vint year,month,day;5 w* A" M/ D6 [5 Y& A. d& R
    {int daysum=0,i;
    $ _& a2 C, I* s static int daytab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}
    2 b1 J' I6 b( h8 U. _. l for(i=1;i   daysum+=daytab[i];
    6 I% c4 E$ \) G  b5 v6 r' y( I daysum+=day;
    7 X" O: v- w2 O  W- A: w0 H' U  M if((year%4==0&&year%100!=0||year%400==0)&&month>=3)9 d  p1 G' p5 i6 S
       daysum+=1;1 O- Q* `" k* V5 h
    return(daysum);
    : l; N; ^* l$ |3 L( ~+ o) v}
    8 @- f* r) l4 ]6 Q+ P11.3
    4 T- n" y( u5 m2 Y% W2 N4 F11.4
    + z6 O; x- g! [% g' D#define N 5
    $ {1 a( k; q9 c: Y+ l2 j0 w4 J, ostruct student$ C7 c: h4 z1 B6 P2 d' V; Q0 r  r* v
      {char num[6];  T3 k% A/ j+ f8 _, A  E# d
       char name[8];1 `' W  `: `( }' g
       int score[4];
    7 j# L5 t5 j* p! F. n' X   }stu[N];; ?- W" L# w; H; z& f9 `) c* e
    main()
    & q. u- ]: C" e% Q7 y: W" I$ b3 i{0 v/ w3 d, c. y8 _+ ^  c# {
    input(stu);
    ( A1 {7 U/ p/ Y6 i% B print(stu);
    , j/ m: B: w- \1 O6 i; N$ _% j! M}
    " e/ e2 Y6 _( _  q  i* Sinput(stu)
    ; q- X" _! _7 \$ B# cstruct student stu[];0 g/ B0 k2 c5 S: k) d7 K
    {int i,j;
    - ^5 j' U* L$ x' J5 B8 E: |* Z  b$ K for(i=0;i   {printf("number");* `' w4 w" T8 @  L/ _$ p
        scanf("%s",stu[i].num);
    & H/ T2 Z4 z) Z" D( k& M" k) Q    printf("name");
    3 x+ Y) ?# _  i' U9 |    scanf("%s",stu[i].name);( n* Y! ~  ]8 A: ?$ S2 E
        for(j=0;j<3;j++)7 t" ]8 G6 ]" D% |
          {printf("\nscore\n");7 j! w. z* |! r/ `( J7 Z
           scanf("%d",&stu[i].score[j]);
    8 {# m. R" ]7 p' e; M  w& g      }
    5 _  `# h  S4 x( H: N' c! L    printf("\n");
    1 a7 D1 u* ]* Z3 w# P    }5 w+ Z8 Q( T; F! @
    }
    ' J1 J- a0 K5 F( Gprint(stu)$ Q! }2 ~3 k) K" F1 K4 x0 `
    struct student stu[];
      w( J7 ]( O! ^* j. l+ z{int i,j;
    # b! H6 }' }  Q7 E7 u printf("\nnumber   name  score1  score2  score3  \n");6 v3 t6 q$ L3 {9 [( S8 G
    for(i=0;i   {printf("%8s%10s",stu[i].num,stu[i].name);2 M7 _% e# J/ ^. X
        for(j=0;j<3;j++)" |8 f* R/ ?9 O* g7 S2 R4 q2 J
          printf("%7d",stu[i].score[j]);5 v. t% o3 \4 U; M# l9 k
        printf("\n");
    ' ~# O- k6 c/ [   }
    4 v0 d& k8 s& ^' _$ G' j& e% H}4 u" A! l' A7 ~- Y, w
    11.5  A' D- k1 E: N6 Z( A" o' `9 e
    struct student
    + K6 Z9 {% ~) d4 w8 q6 Z" w' d  {char num[6];7 ]5 c* ^( u$ g4 U! d
       char name[8];
    - N' T0 h+ x8 x   int score[4];
    + Q5 A& o; y7 j5 E   float avr;3 R* j+ y0 v! ]: Q
       }stu[5];
    * _1 u* F- e- O- W6 ]8 dmain()1 V( N- f+ q: y# K& b
    {int i,j,max,maxi,sum;
    / M" n, Z) t' E4 @ float average;% S0 ^; z4 J% h8 C' }
    for(i=0;i<5;i++)
    4 X. a1 f8 j  M# ?6 ~: m# r   {printf("number");4 k* [! m* @4 Q3 }, ]' N0 E
        scanf("%s",stu[i].num);
    % ?: G1 c4 U8 m5 E    printf("name");
    2 q3 e- u+ }; h/ T    scanf("%s",stu[i].name);% B- }+ j- @/ O8 U9 v+ e- u
        for(j=0;j<3;j++)) K" \' s! n4 X9 u
          {printf("\nscore\n");
    - {9 e+ B9 p  f+ K0 A* g0 [( _  K       scanf("%d",&stu[i].score[j]);  u) y, @$ Q1 b
          }$ l7 z# ~- R6 o% K$ j& g' ~4 x" v: X
        }4 D0 q) H1 l. Z" P, e
    average=0;
    % l: |! Z; C6 l" G9 V% P; [$ Z- L max=0;
    . z% ?+ @. W5 I: M maxi=0;# L, ~' l# N* m) J
    for(i=0;i<5;i++)' a. u* O! P# p- K# I6 w" k
       {sum=0;& D3 g2 i5 z1 L: ^3 i
        for(j=0;j<3;j++)& }8 A. k  q. S- @+ k
          sum+=stu[i].score[j];
    6 _$ K, I. n& [) k% Y. f. J$ k- J  E    stu[i].avr=sum/3.0;
    % Q+ I0 @/ |% H7 b+ O' I    average+=stu[i].avr;) Z* [7 m0 z. h  m) e
        if(sum>max); M- w3 ~! y$ h: V
          {max=sum;9 k( ~$ A3 K; w( {4 Y5 k
           maxi=i;8 z! [- B7 t# B5 g9 H  X: a2 w
          }
    , [' }% N: t5 P8 G! j" ^, ?    }
    4 W. G( j, x- v6 g6 v& T6 U average/=5;
    ' g3 l8 U7 O; \6 r printf("number   name  score1  score2  score3  average\n");3 Z3 Z7 G( N$ @) |% @2 C
    for(i=0;i<5;i++)
    , P; H1 r. L- b" b% x' h6 w/ h   {printf("%8s%10s",stu[i].num,stu[i].name);2 i" [* U* {/ T' i' a. X5 F
        for(j=0;j<3;j++): u' n8 @7 Y3 M8 A& |; C! j6 t+ I' Z
          printf("%7d",stu[i].score[j]);* A5 H: i4 H+ D& }/ e
        printf("%6.2f\n",stu[i].avr);
    3 L+ I$ M& ^5 O8 y2 H  {! o   }2 ~% D. Y: @3 [/ n# z
    printf("average=%5.2f\n",average);
    $ e4 Q' }' ~' g9 C7 [' E printf("The best student is %s,sum=%d\n",stu[maxi].name,max);5 S1 G) w8 j) y% K6 L
    }7 h6 a0 E! x  {  m8 P( j
    " Q  a: L) _% Z1 y; S; G
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    17

    主题

    3

    听众

    450

    积分

  • TA的每日心情
    奋斗
    2016-7-20 19:32
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    自我介绍
    200 字节以内不支持自定义 Discuz! 代码

    群组西南大学建模组

    群组数学建摸协会

    群组Matlab讨论组

    群组Coldplayers

    群组数学建模培训课堂1

    回复

    使用道具 举报

    linmatsas 实名认证       

    53

    主题

    13

    听众

    3592

    积分

    逍遥游

  • TA的每日心情
    奋斗
    2014-12-2 09:53
  • 签到天数: 54 天

    [LV.5]常住居民I

    自我介绍
    额。。。。世界上最讨厌的事情就是自我介绍。。。

    邮箱绑定达人 新人进步奖 发帖功臣 最具活力勋章

    群组Matlab讨论组

    群组数学建模

    群组小草的客厅

    群组2012数学一考研交流

    群组C 语言讨论组

    回复

    使用道具 举报

    5

    主题

    5

    听众

    912

    积分

    升级  78%

  • TA的每日心情
    开心
    2016-10-15 15:49
  • 签到天数: 13 天

    [LV.3]偶尔看看II

    自我介绍
    本人较内向,但却有浓厚的趣味和好奇心.再之本人叫诚恳和朴实.缺点就是不多愿与他人交流.谢谢!

    群组江苏建模

    群组Coldplayers

    群组Matlab讨论组

    群组南京邮电大学数模协会

    群组西南大学建模组

    回复

    使用道具 举报

    0

    主题

    3

    听众

    11

    积分

    升级  6.32%

    该用户从未签到

    回复

    使用道具 举报

    cmrs1986 实名认证       

    0

    主题

    3

    听众

    43

    积分

    升级  40%

    该用户从未签到

    回复

    使用道具 举报

    defy470        

    4

    主题

    5

    听众

    115

    积分

    升级  7.5%

  • TA的每日心情
    无聊
    2012-7-12 07:29
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    自我介绍
    飞飞
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-9-5 19:23 , Processed in 0.616479 second(s), 87 queries .

    回顶部