QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 9631|回复: 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语言设计谭浩强第三版的课后习题答案
    * w% R( T5 |# T& ]: M1 {/ N& L1.5请参照本章例题,编写一个C程序,输出以下信息:- C/ b, G) ^! M6 d: D8 M5 m( Z
    main()
    ; u* T1 t4 a5 l) ^4 s4 k8 z{
    " \$ H; g+ x( J# ?# F7 jprintf("     ************      \n");
    7 _  U+ q. T5 V% x7 qprintf("\n");
    # ]( N) D& ?  ^* c! `3 g# uprintf("     Very Good!  \n");1 _0 W" I- C1 u! r2 j
    printf("\n");
    - C9 [* L' f( J5 R* D! Pprintf("     ************\n");
    ! o. g+ w+ q/ Y}: [9 J5 {4 @: S$ ]3 I4 c# i/ R* y
    1.6编写一个程序,输入a b c三个值,输出其中最大者。/ x! g: {$ I' L) o% b
    解:main()! ?  o; C/ U1 {
    {int a,b,c,max;: x) j5 O7 ^, H; r1 P9 \+ I: Y
    printf("请输入三个数a,b,c:\n");: V  A1 L; e5 A: _
    scanf("%d,%d,%d",&a,&b,&c);
    4 V" d5 q( d: X6 F$ ^+ d* t' G2 `max=a;
    $ q2 G0 U/ `& u4 P$ xif(maxmax=b;2 n; D" U1 m' ~. \
    if(maxmax=c;
    & w. c+ ~/ e9 _, D8 wprintf("最大数为:%d",max);* @& D- ]: `( Q
    }+ ^0 }0 F8 H" f! O/ X
    第三章6 R; D( m! b% J4 a$ f6 G* V$ p
    3.3 请将下面各数用八进制数和十六进制数表示:
    ) Y: w# l7 v* D9 u6 i8 j# U(1)10  (2)32  (3)75  (4)-617( l' j+ R' W5 k8 g2 H9 ]6 q
    (5)-111 (6)2483 (7)-28654 (8)21003$ E. S  I1 W. [$ K- L8 u- ]  L! n  _4 h. ^
    解:十 八 十六
    * a& h0 Y* [* B* b5 R& J   (10)=(12)=(a)
    $ V: W- g* B5 y+ B    (32)=(40)=209 n: f+ a6 g' \; ~6 O& e1 o7 Y( i
        (75)=(113)=4b$ J& b. Z4 r% W, j. w
        (-617)=(176627)=fd974 r5 K/ Q5 \5 J) M! c4 [6 ?$ g, H. l% c
         -111=177621=ff91* k. ^% q! @6 {: y
         2483=4663=963' c0 F, ]3 y( o7 J
         -28654=110022=90126 j0 {# a( t: {" \
         21003=51013=520b) J3 b- Z2 ?% e/ q! q
    3.5字符常量与字符串常量有什么区别?8 c( A  Y. T6 |! l4 x  H# \3 `  {
    解:字符常量是一个字符,用单引号括起来。字符串常量是由0个或若干个字符7 E- u( G1 N! o5 \4 z! e
    而成,用双引号把它们括起来,存储时自动在字符串最后加一个结束符号'\0'.7 r3 X8 m, V& z& |
    3.6写出以下程序的运行结果:- Y# h6 ~  F2 d# r" j0 T: @
    #include  j* a. b0 e; K' Z' n( p
    void main()
    6 p; r0 p: i; Z8 l/ W{
    4 F* d3 b  }1 }( H+ ?  R+ Q1 H  Wchar c1='a',c2='b',c3='c',c4='\101',c5='\116';; ]  A" o2 N/ E
    printf("a%c b%c\tc%c\tabc\n",c1,c2,c3);
    * g: l5 j; g9 {# V) ^/ B* oprintf("\t\b%c %c\n",c4,c5);1 r6 h4 c- C: a8 S" k
    解:程序的运行结果为:
    5 j2 M; A. K( daabb  cc abc
    5 l4 h/ R, _6 z- |6 b A N
    / R& Z$ C$ }& r/ K% ?: g! \3.7将"China"译成密码.密码规律:用原来的字母后面第4个字母代替原来的字母,! M: s/ X, c# _# P0 Y7 e0 }( S
    例如,字母"A"后面第4个字母是"E",用"E"代替"A".因此,"China"应译为"Glmre".
    % R! Y; [! _5 x9 y" @, k请编一程序,用赋初值的议程使c1,c2,c3,c4,c5分别变成'G','1','m','r','e',并
    $ D* f. ?4 s3 `1 T0 U3 j. \/ B7 d输出.
    " C" D! r" V, U. umain()
    . S; l5 }' G( c: O$ D% |% i{char c1="C",c2="h",c3="i",c4='n',c5='a';
    9 K# Y8 J2 H, \! u( Oc1+=4;0 ^6 M' X* m3 L3 u
    c2+=4;& L: h- L" r  [$ p
    c3+=4;3 A, i% X2 y. y% |
    c4+=4;
    & z+ `, d/ O. V3 X" o" I+ lc5+=4;9 ]0 @* F, t) k' a/ s* H
    printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5);4 D& U) w3 h" H& }# k5 Z+ S7 h, F
    }( |' W5 M& B+ {- x5 ~; y$ c
    3.8例3.6能否改成如下:
    * F' T7 ~, y3 Q! E- U$ p. ~#include& N$ \8 F" t6 H7 Q
    void main()+ S: ]& v& t  n: J
    {/ L. a! w+ H- V6 p
    int c1,c2;(原为 char c1,c2)
    6 V; u0 R9 Q/ gc1=97;# W- _, y6 d% u2 W9 E# l
    c2=98;
    - n  V8 `1 P$ c) X( A2 x/ K4 j$ wprintf("%c%c\n",c1,c2);
    ( E: w+ v/ o' {printf("%d%d\n",c1,c2);
    * E  S5 a; a( s" Y, T}
    4 I" g# }" c2 W( K7 N9 W解:可以.因为在可输出的字符范围内,用整型和字符型作用相同.
    5 p* q# y) O: O" c4 g. n, o6 R" M+ X3.9求下面算术表达式的值." t3 d% i3 R# O6 o& _$ Y0 F
    (1)x+a%3*(int)(x+y)%2/4=2.5(x=2.5,a=7,y=4.7)
    & B3 |- d/ |6 f  U& _(2)(float)(a+b)/2+(int)x%(int)y=3.5(设a=2,b=3,x=3.5,y=2.5); F2 \& l) A: Z, J0 g
    3.10写出下面程序的运行结果:
      P6 j% {" {7 T- s: ~0 Z5 g" Y#include8 I* S* ~1 T7 o4 o
    void main()
    , h  k, O' \% m* R5 a% A4 I{
    % ?0 T% k5 `. W: Fint i,j,m,n;" l3 L' O3 t# `
    i=8;
    ' x% {: H2 m9 `& B$ ^j=10;( K0 F% d! M& V* o5 Q
    m=++i;5 W/ |/ U/ X# _! `# Q; A
    n=j++;
    . L5 m0 b. p. bprintf("%d,%d,%d,%d\n",i,j,m,n);7 Z1 D; J3 X/ ^, _: H
    }; N) k  t+ p0 ^. g+ @0 w- O7 N
    解:结果:   9,11,9,10
    & I/ Z* ^! ]5 L5 ~9 t" d第4章$ D. a* d3 b% h" H
    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'.想得
    ' Y) S7 }$ F! u: r, q4 y$ S3 r到以下的输出格式和结果,请写出程序要求输出的结果如下:" ?% i+ N9 h( K& j4 }
    a= 3  b= 4  c= 5
    3 y) f6 j2 c' ?$ Z5 W- s9 c$ x6 Jx=1.200000,y=2.400000,z=-3.600000
    % `) R3 H# Y6 e% hx+y= 3.60  y+z=-1.20  z+x=-2.40& U$ }. i" Q9 D# @- v3 Y. d
    u= 51274  n=   1287653 o. I2 B  H) D$ p1 \2 N. i% [% i5 n2 B2 a
    c1='a' or 97(ASCII)+ f& V% ?$ o; K( ~5 {- C! W" f) j/ M5 q
    c2='B' or 98(ASCII)' E: k. x0 {! _( Z4 r/ {  ?! ^
    解:
    ' [# h5 u; j9 b/ D% U; Tmain()0 f; B9 ~4 ^0 T4 V
    {
    ( l9 h! @' a; U/ r& z4 mint a,b,c;
    - H9 d, Z3 c# Q8 [' ulong int u,n;  z; C" R+ s5 R
    float x,y,z;9 E: N" W! {" X( |4 p$ t% x1 g( v
    char c1,c2;
    5 E1 r1 f" {6 d- _8 ua=3;b=4;c=5;" p8 e! x+ T  g' ?, q# W, c
    x=1.2;y=2.4;z=-3.6;
    7 d% H1 m2 G3 o" f3 Iu=51274;n=128765;
    ) f# A! ?" h' c9 k) yc1='a';c2='b';) W6 d$ x  m* q% a  j
    printf("\n");8 d7 s. ^2 [  E1 k. o) r
    printf("a=%2d b=%2d c=%2d\n",a,b,c);5 O% x  O; y5 J# n
    printf("x=%8.6f,y=%8.6f,z=%9.6f\n",x,y,z);
    7 ?5 u0 j* F5 V* U" wprintf("x+y=%5.2f  y=z=%5.2f  z+x=%5.2f\n",x+y,y+z,z+x);
    ' U& r, u% W. Q8 x. Z6 l3 n) ^2 zprintf("u=%6ld  n=%9ld\n",u,n);( }9 X2 g# t( G9 H: d5 S
    printf("c1='%c' or %d(ASCII)\n",c1,c2);3 H* m4 V" x! x1 u! c' K3 k$ D
    printf("c2='%c' or %d(ASCII)\n",c2,c2);
    / D) D$ m% c; T: ]}7 O1 {/ \* l8 C0 C! S2 T1 l
    4.5请写出下面程序的输出结果.
    + ]+ ~2 D( J9 h& O, k& p结果:
    , g3 c* W9 W& `4 L+ u# J' m  I; y57
    ! Z; u0 G# l$ U& Q2 k; t7 ~" c  5  7
    9 g  V% \, T7 M) s, x* F67.856400,-789.123962
    ) L' g- x) g3 `- p- B8 \67.856400 ,-789.123962; A5 r/ s* ~8 m
       67.86,-789.12,67.856400,-789.123962,67.856400,-789.123962. J' K& O5 Q" D6 }: l% g
    6.785640e+001,-7.89e+0026 J, k# L7 W9 V" Y% l
    A,65,101,41$ B* z1 j; A7 o- s. p
    1234567,4553207,d687" P$ {( [8 C; J& G2 j5 O# d
    65535,17777,ffff,-1
    - S  @* x" v2 f( gCOMPUTER,  COM
    6 z, w. ]. d% y7 Y4.6用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a',6 g& ~# G' t6 A% i. s' I0 d# U
    问在键盘上如何输入?
    0 e  u2 C# A, P4 E: U9 fmain()
    * W' W$ }  s2 b{
    $ S% Q, k* M6 @+ ~+ C5 Rint a,b;
    9 h3 n5 E! i+ u& M) ufloat x,y;" _3 S5 s4 V) p- d
    char c1,c2;* q: }  k; M0 [+ Z' ^. ]
    scanf("a=%d b=%d,&a,&b);
    ) y2 g9 c4 C! V5 L- J' b$ kscanf(" x=%f y=%e",&x,&y);/ O0 T! U; ^+ }7 [/ o& U% i
    scanf(" c1=%c c2=%c",&c1,&c2);
    ; \: E3 w2 |7 }  y2 K}
    ' ]) Y$ f+ d5 u解:可按如下方式在键盘上输入:: B. g# S2 F+ I6 b
    a=3 b=7
    " A8 V  d. Q: c/ p4 |x=8.5 y=71.82
    ( s9 W4 J% c; U2 K( Sc1=A c2=a
    # c. L- R) J" M说明:在边疆使用一个或多个scnaf函数时,第一个输入行末尾输入的"回车"被第二% a3 I. b0 C- W! p% b# N* w
    个scanf函数吸收,因此在第二\三个scanf函数的双引号后设一个空格以抵消上行
    ; x* Z) O' v, U0 Q8 w/ q入的"回车".如果没有这个空格,按上面输入数据会出错,读者目前对此只留有一( I* I1 `  j7 R  x' x# \
    初步概念即可,以后再进一步深入理解.
    / v6 n$ H4 J; n1 {3 u4.7用下面的scanf函数输入数据使a=10,b=20,c1='A',c2='a',x=1.5,y=-, i) o" X: V( ~4 a* t$ Q" n2 `
    3.75,z=57.8,请问
    ( h7 d5 H5 f5 O7 j  G: M6 ~在键盘上如何输入数据?, [: Y; C% X0 v' K
    scanf("%5d%5d%c%c%f%f%*f %f",&a,&b,&c1,&c2,&y,&z);
    ) s5 v+ O/ r+ l6 ^( @# Q解:
    5 z$ Q% O" ]& b& l3 g* Zmain()
    4 b- H6 ?# [5 H# D9 C{
    : X0 N* g  S1 zint a,b;1 C3 p. c; {* h+ V
    float x,y,z;5 F  q. m/ ]# n
    char c1,c2;
    2 A' L. ]+ {. X- ?scanf("%5d%5d%c%c%f%f",&a,&b,&c1,&c2,&x,&y,&z);
    ! V3 Y2 T# X2 Q7 r}
    ) m7 c" _0 `0 d5 T# p运行时输入:
    8 u4 X. V- @8 a  Z& [9 P- X; D10   20Aa1.5 -3.75 +1.5,67.8
    0 Z7 D/ f- T  z5 @注解:按%5d格式的要求输入a与b时,要先键入三个空格,而后再打入10与20。%*f
    $ v, L/ J) v3 }* i. _8 U5 u* i是用来禁止赋值的。在输入时,对应于%*f的地方,随意打入了一个数1.5,该值不, I8 K4 e1 F) u2 h) r
    会赋给任何变量。  M8 l  R; O9 j6 g! E/ ^' ^
    4.8设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积,5 L1 h: ~7 h0 G9 E7 S5 O
    用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后两位数字.请编
    ) ]+ I2 x+ o) Y; T9 S" V. T# [程.# E! Z1 x+ S3 b6 b2 e
    解:main(). t4 Z1 j9 O, ^
    {$ P3 y. L" Q2 U+ Q% t# x# y, i
    float pi,h,r,l,s,sq,vq,vz;- t0 `- W' k  r% i- Q  v8 i
    pi=3.1415926;
    8 `7 `9 }4 H( F1 Nprintf("请输入圆半径r圆柱高h:\n");
    ' f. H7 m& ~9 B) F, Lscanf("%f,%f",&r,&h);1 x* l2 N3 u9 S* e* x
    l=2*pi*r;/ V! }. q# N4 ~; }
    s=r*r*pi;
    : g$ T3 j4 q6 j3 G' esq=4*pi*r*r;4 A1 ?9 C; }* r% e8 {8 o% H
    vq=4.0/3.0*pi*r*r*r;
    . d$ ^" c6 }( y7 \+ t9 F# }* Mvz=pi*r*r*h;
    - Q* \8 [, \0 ~! rprintf("圆周长为:      =%6.2f\n",l);  C# }# p+ ?6 N+ ^- Q1 b$ r
    printf("圆面积为:      =%6.2f\n",s);
    4 S) T6 t* R8 p; x- H2 R% Sprintf("圆球表面积为:  =%6.2f\n",sq);, r: T" x; ]0 A
    printf("圆球体积为:    =%6.2f\n",vz);
    : P% t; B6 r" n7 ?1 T: z}
    ( l  n0 u6 |: x5 x4.9输入一个华氏温度,要求输出摄氏温度,公式为C=5/9(F-32),输出要有文字说明,
    + \; h, L2 T- Q6 _& {$ Y7 O取两位小数.$ |: v: [& U* i& b7 Q) l6 [
    解: main()3 e# r5 M4 r& J3 K; P0 t
    {& `& P! ]/ M  F: @% d3 h
    float c,f;5 b$ G" e7 ~5 @' |' Z2 S+ E
    printf("请输入一个华氏温度:\n");8 Q! ?. `5 D' J
    scanf("%f",&f);. E$ o5 P8 G( W: D/ j8 I: K4 J, j
    c=(5.0/9.0)*(f-32);
    6 H% p4 X2 ]4 ^printf("摄氏温度为:%5.2f\n",c);( B/ k5 B& l( W% a! i' A4 d7 ?
    }, c8 b) c& Q7 v6 ?* e4 ?2 g) U: I
    第五章 逻辑运算和判断选取结构; o* V: O7 Z: Z' m2 k' s) h" e
    5.4有三个整数a,b,c,由键盘输入,输出其中最大的数.5 r, @+ p1 w* h) i" i
    main()$ n7 z, ~7 N! e( k
    {
    * D! f# u2 v1 m/ |- Nint a,b,c;
    2 p9 _0 S- x2 N: T$ h  Hprintf("请输入三个数:");
    ' H. W; R7 L  Cscanf("%d,%d,%d",&a,&b,&c);  |- M7 v3 C' j( d7 h
    if(a  if(b     printf("max=%d\n",c);
    9 D% e6 b" r  \+ @. w  w. I  else$ |9 P4 F- }! ]4 _7 |
         printf("max=%d\n",b);
    ! t, B& B, |! c% Melse if(a     printf("max=%d\n",c);
    9 i& G# a2 G" a8 P   else& q* {" d4 w! r1 r" X, {! U; N
         printf("max-%d\n",a);
    8 N$ ?# |  f1 u  F: C3 A}
    4 n' @9 b8 O8 C* F方法2:使用条件表达式.; D: F$ b+ A" z: Q2 x9 h  g" w
    main()
    5 Q% M- c# c/ [" c- d, v6 r: n{int a,b,c,termp,max;- p# r9 k2 s" R" q# i. y3 W
    printf("     请输入      A,B,C:    ");! U% x+ h3 a6 y5 @" t8 @5 W2 R
    scanf("%d,%d,%d",&a,&b,&c);
    % T  q! m9 O; H printf("A=%d,B=%d,C=%d\n",a,b,c);0 Z3 N9 B; J, _  [
    temp=(a>b)?a:b;
    9 k* [- G! [1 K  X% ~% s  M; m  b& f max=(temp>c)? temp:c;& f& Q) Z6 v" A
    printf("   A,B,C中最大数是%d,",max);  }" w# a: i  A* a- [
    }6 z2 X8 \6 j# O: B
    5.5 main()+ R- m0 k; E2 n$ i9 s  h# `0 R
    {int x,y;' J) ]. f! M8 [, m
    printf("输入x:");! c" c' B, K6 ~3 w; J6 \0 Y
    scanf("%d",&x);9 Y" C1 \  H  ?- Z( d
    if(x<1)* Z; Y& y2 M* I; S' |2 j
       {y=x;
    5 B5 q& y4 P/ z0 K   printf("X-%d,Y=X=%d  \n",x,y);1 L+ ^+ d3 y! p6 l: k. |
       }4 }" ^5 h' m$ k1 _' D/ L, \- S
    else if(x<10)1 k8 d! G/ h4 Z% Z4 ^! c
       {y=2*x-1;+ k1 I8 {/ T; M" K+ u! C. d
       printf("  X=%d,  Y=2*X-1=%d\n",x,y);
    , F3 A" F! G7 i, A. G! a   }& `0 j5 h9 i% J$ v' F8 d9 O: e
    else3 l4 O; v/ X! k1 {
       {y=3*x-11;. G, E' ?3 K1 a- p
       printf("X=5d, Y=3*x-11=%d  \n",x,y);
    7 W5 D# @- Y" |. }8 L   }; Z* H9 n+ H+ K
    }
    # V, I0 i. {7 _  Q. b(习题5-6:)自己写的已经运行成功!不同的人有不同的算法,这些答案仅供参考!   
    $ B( I7 M8 W3 J1 \2 ]void main()  W( U! ?' }+ }! R9 b
    {
    # |, i7 h$ p3 Y: Tfloat s,i;
    ; _: z) F! H- M# mchar a;! n, g. v9 ^3 K; r* i
    scanf("%f",&s);* _, j; d, _7 {/ V( r% M5 {  V% w
    while(s>100||s<0)6 A! y5 c  ?# W; k" S
    {
    % G$ g" A; a2 u4 t8 Fprintf("输入错误!error!");
    , u) {& A' [1 lscanf("%f",&s);
    - ^( ]3 I1 d+ `& A) @6 ?" e5 s}
    / Q1 g& ]6 b; x  w/ d- t+ v7 A  p! ?: ^i=s/10;
    " b' v& v: c; z* ^  Wswitch((int)i), I  G: P% E. w  C) Q9 y$ T7 G
    {
    3 \5 F: W) {/ |+ |/ zcase 10:
    ! k3 N) e$ L" U- g1 f+ ?case 9: a='A';break;
    / r) K5 B. s6 ~2 k: kcase 8: a='B';break;0 u" ~% z" t9 `& f. _: F7 H
    case 7: a='C';break;
    * I5 U5 o. i; @! A' K0 X! Ecase 6: a='D';break;4 [- l! f& d/ f- J# u
    case 5:1 m" X+ E( l; i+ ~' e9 [2 e
    case 4:1 o0 h% T; |( D0 r
    case 2:( X* Y8 N* `0 \& P1 J* ]
    case 1:8 a$ P) [2 R! U( d* x  W8 `/ a
    case 0: a='E';
    $ k5 B. F0 p, X+ ]7 V& d}8 h. ]# w$ d' J; j( F( I3 O2 @
    printf("%c",a);
    9 \$ Q  ?: h, [" x8 u3 X2 @}
    ) s5 w" w/ ]) W+ i; q$ [) T0 g5.7给一个不多于5位的正整数,要求:1.求它是几位数2.分别打印出每一位数字3.
    % c% u; K0 r) |* P2 ?% E按逆序打印出各位数字.例如原数为321,应输出123./ T5 X5 c, L0 o+ Q
    main()4 z2 j9 t1 I4 C/ v9 S" k5 ]" J
    {+ B- H' G1 h# z
    long int num;, o6 z: M6 o) X4 S( L
    int indiv,ten,hundred,housand,tenthousand,place;
    - F0 s8 n" z. h/ Y! C; U9 u/ S6 [4 G" Z printf("请输入一个整数(0-99999):");8 Z, T4 M6 @; `# W6 P# g* F
    scanf("%ld",&num);! B8 U( i: `6 [
    if(num>9999)3 N9 e; I6 B9 n" Z- R
    place=5;
    & f# r! m, T6 f. F: @+ `4 ?& Gelse if(num>999)% [$ l  }7 g* d! t$ a0 h
    place=4;% O4 H* k, z# \* n. @, V
    else if(num>99)
    ; i  x0 W  o1 L, M place=3;- x6 }+ w8 o, W, i
    else if(num>9)1 [% `5 ~' t' \5 D0 ~
    place=2;
    % r' u3 r+ d: l2 ^1 Eelse place=1;
    - r9 B8 r% z8 D% ?- _1 qprintf("place=%d\n",place);
    1 |# N0 l9 m. x) Vprintf("每位数字为:");
    # I3 j3 y4 p6 c  cten_thousand=num/10000;
    2 W$ A; n( A7 Ethousand=(num-tenthousand*10000)/1000;$ r1 l5 u4 a2 ]* c9 O
    hundred=(num-tenthousand*10000-thousand*1000)/100;* o1 N* ~! Z  e2 c2 I6 f2 Y
    ten=(num-tenthousand*10000-thousand*1000-hundred*100)/10;
    + Y. @8 ^8 ~, I3 ?/ \) m/ w. mindiv=num-tenthousand*10000-thousand*1000-hundred*100-ten*10;$ W( Z( u/ g  U3 g# u3 x
    switch(place), y8 Q- n, `4 C4 Z6 ^" {9 y& w: S
    {case 5:printf("%d,%d,%d,%d,%d",tenthousand,thousand,hundred,ten,indiv);
    3 e, X2 k+ o  `& B' S printf("\n反序数字为:");
    ! L7 I" o4 K9 K8 K, S) M printf("%d%d%d%d%d\n",indiv,ten,hundred,thousand,tenthousand);
    6 @' F; Z! R( h4 K# ]/ k3 L break;. D4 X4 w/ f7 u, [$ _; R8 r
    case 4:printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);
    2 ~9 U0 l7 q6 s5 T- P, k" J& w printf("\n反序数字为:");
    6 \9 v8 q+ a# w' |$ s printf("%d%d%d%d\n",indiv,ten,hundred,thousand);# @4 H4 |; C! W9 \% M3 m( h+ o5 x
    break;+ S4 C+ c" @0 H+ F5 V  X3 j
    case 3:printf("%d,%d,%d\n",hundred,ten,indiv);
    + R' E  }  g/ K0 T! R; Y7 d4 O- j printf("\n反序数字为:");) j( a* D* G1 J) y2 }# r. T
    printf("%d%d%d\n",indiv,ten,hundred);
    & b  l2 H8 R$ G& pcase 2:printf("%d,%d\n",ten,indiv);3 S6 c3 A3 m) a; @# E+ W* C
    printf("\n反序数字为:");
    + U! U. r8 N! D" ^! W$ b5 J" G printf("%d%d\n",indiv,ten);
    ! Q; k4 s6 N) ^4 c. U% lcase 1:printf("%d\n",indiv);
    . c6 f# q3 P5 {+ ]( Y2 x1 [ printf("\n反序数字为:");
    # X5 c8 y+ s/ a; n8 i9 w+ f printf("%d\n",indiv);, q( T7 @# a' `6 p) d2 R
    }" g% W% Y  n5 g% F5 d7 T
    }: ^8 T3 O4 i" K, A! F
    5.8# y- ^8 ?6 ]- {
    1.if语句$ `: t3 z% W' K5 Q: u8 p0 u
    main()- W( |0 A) J8 y5 _2 ^
    {long i;4 w7 L. `; a5 r2 H9 p2 a1 t
    float bonus,bon1,bon2,bon4,bon6,bon10;: `9 B' [# h( J" I. E
    bon1=100000*0.1;0 [3 c* H; ^9 U
    bon2=bon1+100000*0.075;
    . T' P4 q. W: B2 f( B" Y  z  L bon4=bon2+200000*0.05;5 y9 c. O% P2 `2 [/ [
    bon6=bon4+200000*0.03;& X$ |0 {  k0 Y9 P6 s3 o
    bon10=bon6+400000*0.015;
    2 j- f4 Y+ p. I* ?% l( x. C scanf("%ld",&i);
    ! v$ T5 W  S! A2 v  s! e if(i<=1e5)bonus=i*0.1;
    % v# k6 ~, J1 L. H7 h# h7 L) k) J, c else if(i<=2e5)bonus=bon1+(i-100000)*0.075;
    : q0 z: l, y5 L5 @3 K: e* q1 u else if(i<=4e5)bonus=bon2+(i-200000)*0.05;
    $ t* v( C+ r. s else if(i<=6e5)bonus=bon4+(i-400000)*0.03;
    / s. @7 X4 \/ d$ O( U  W else if(i<=1e6)bonus=bon6+(i-600000)*0.015;
    ) P3 T$ u$ K7 Y% ? else bonus=bon10+(i-1000000)*0.01;6 B  L+ e5 x( l; \" X0 \9 {
    printf("bonus=%10.2f",bonus);) k! N5 B" I! u  ]" r8 _6 J8 ~  a
    }
    / t3 M2 J3 p% u* f4 {" y0 F用switch语句编程序3 S* D: `% ^; u& W
    main()/ e, D* D; h1 z
    {long i;
    ( }/ g1 P* s& |3 ]4 S' l$ ~7 z float bonus,bon1,bon2,bon4,bon6,bon10;
    ( I' V% u2 J6 y1 s# l: Z4 F) U int branch;
    * C* g& K* z8 @( \, ^8 p' L5 p bon1=100000*0.1;) E+ G" \5 o# r
    bon2=bon1+100000*0.075;" k% W$ a9 i. V/ G
    bon4=bon2+200000*0.05;, T- e; m0 d4 _) r* M3 v+ q9 p
    bon6=bon4+200000*0.03;+ F/ H; Z0 G% {  k. [# S; Y
    bon10=bon6+400000*0.015;. ~4 c' t- q% q0 h" U' u6 s
    scanf("%ld",&i);5 _# ^8 t& O& r  u0 Z
    branch=i/100000;
      m, }9 q5 Y9 B! i1 g if(branch>10)branch=10;
    + x% l% p! U0 \+ ?# b; f switch(branch)
    ' T/ ?9 ~3 k1 |& ~" ?) r' ~+ H {case 0:bonus=i*0.1;break;
    ! _. s  l# G$ @- z  case 1:bonus=bon1+(i-100000)*0.075;break;
    / H( _, s3 X8 o7 S% q' w; u" T# a  case 2:
    + |, k8 X8 h  j* Q0 r) i  case 3:bonus=bon2+(i-200000)*0.05;break;0 x  @; Y/ I/ `% C) q; ?" `
      case 4:6 S6 |3 ~- j4 |
      case 5:bonus=bon4+(i-400000)*0.03;break;
    ( N$ f; [! ]* T# ~" z  case 6:
    - H! A( d( P! i6 l7 B; x  case 7+ |$ [( k7 x+ O, F; ?& w& F5 v/ r8 d
      case 8:* K: i: V* ~/ U+ u
      case 9:bonus=bon6+(i-600000)*0.015;break;/ N; Z/ d/ ]3 v# T
      case 10:bonus=bon10+(i-1000000)*0.01;
    * v; B% f) m+ h/ u2 M* N% G9 G/ V  }
    - l, P0 |% N/ f7 ]) E4 i3 } printf("bonus=%10.2f",bonus);5 L# I$ I9 @' `" i9 ?) [
    }     " q+ ?4 ?5 h- `$ O* }* K/ `
    5.9 输入四个整数,按大小顺序输出.
    5 |! r! i( X, `' u# Emain()1 X/ W/ m  n& {2 j& J) w) A, ]
      {int t,a,b,c,d;0 N7 D8 T/ ]; J) o, G0 ]
      printf("请输入四个数:");
    # y: a" L5 t% A2 K  scanf("%d,%d,%d,%d",&a,&b,&c,&d);
    5 M3 q: m$ h) ?  T* l1 E& U  printf("\n\n a=%d,b=%d,c=%d,d=%d \n",a,b,c,d);7 F+ E7 }  Y+ q
      if(a>b)7 S; R, S2 f& |+ {( e1 d
    {t=a;a=b;b=t;}5 m  x; L% ~" Z" W7 f5 R8 N' A0 Y# j
      if(a>c)
    $ Z5 l1 ]7 P0 F# r {t=a;a=c;c=t;}
    ' K1 X* d! }, Q. G  if(a>d)! N% G+ x0 O' V2 O
    {t=a;a=d;d=t;}8 V( F) e; V, @* S5 n$ C
      if(b>c); \% o% Z2 v: }$ b
    {t=b;b=c;c=t;}$ q; j6 D7 v2 x% E
      if(b>d)7 `3 S! D, B) H7 p, Y- ~
    {t=b;b=d;d=t;}
    ( Z' G1 K% n  a4 X5 S! O. ]+ v  if(c>d)9 `9 h$ |8 n3 B
    {t=c;c=d;d=t;}
    * ^8 X# c/ C2 Aprintf("\n 排序结果如下: \n");9 p% _( c, Z& x( x8 Z
    printf("   %d  %d  %d  %d \n",a,b,c,d);! m% ?3 A' h( E3 ?0 y
    }* A: J8 J3 {4 i7 X6 T# D; y  `# r4 C
    5.10塔
    * p+ h3 Y8 J/ O- n" O1 xmain(), {# n$ Q6 r" s+ a
    {
    - e: }9 R& ~: l+ iint h=10;) G: _) X+ Y( x) z7 P5 S  T
    float x,y,x0=2,y0=2,d1,d2,d3,d4;
    , a4 ?: T/ L1 `" A1 Sprintf("请输入一个点(x,y):");" W/ e2 P4 F6 ]* L4 c5 d9 [
    scanf("%f,%f",&x,&y);% {9 h, B& }8 C1 s7 e0 |9 s
    d1=(x-x0)*(x-x0)+(y-y0)(y-y0);2 f2 ~7 f0 \9 L/ r
    d2=(x-x0)*(x-x0)+(y+y0)(y+y0);
    ! F! H# u5 x) }7 \7 F5 Ud3=(x+x0)*(x+x0)+(y-y0)*(y-y0);0 c) s3 f. L: ?( o6 b; J
    d4=(x+x0)*(x+x0)+(y+y0)*(y+y0);
    " l- n5 L, y% M7 z; ^7 Z& kif(d1>1 && d2>1 && d3>1 && d4>1)
    8 L: i- G- f( fh=0;
    * s! Z7 b' n* uprintf("该点高度为%d",h);
    % g2 o+ j4 l6 K# P$ D}+ ]9 W6 E4 _$ ^
    第六章 循环语句
    + b) F' w: o. i% _: G) `; i6.1输入两个正数,求最大公约数最小公倍数.
    3 R, X# T3 |+ I7 E8 Bmain()
    ) Y* S6 j# v/ r4 i- R8 j$ P{
    " \7 ^9 j, c: E. \) Sint a,b,num1,num2,temp;) C2 U9 N$ L5 B- A% G( Z
    printf("请输入两个正整数:\n");
    , z7 J7 y1 a& s0 X* V4 I+ p( s- qscanf("%d,%d",&num1,&num2);; T. V5 D* g/ x. @. t4 o- H
    if(num1{
    % n3 d- y  q9 W/ g+ r2 Ntemp=num1;
    + {" ~; K( I" W! q  K4 _* mnum1=num2;5 D' K4 I1 b  w9 c
    num2=temp;
    ! p& e/ q+ n5 ?. R/ F1 C}
    ( _  H+ @: X3 c8 l  Ua=num1,b=num2;8 L, c, Z3 m4 Z! c" Y" P9 ?
    while(b!=0)
    , V$ J" e# E# ~% V; s  {( l) f0 R3 h& U9 z
      temp=a%b;: U( b4 }5 \" S+ W/ }1 g* f
      a=b;
    9 Z) s0 E$ D( t" p/ p! w  b=temp;
    " p9 z# I6 i+ i0 J5 I8 [  }( k5 \# Z/ W& S, I9 ~
    printf("它们的最大公约数为:%d\n",a);+ }1 t' W5 J# T  U/ p
    printf("它们的最小公倍数为:%d\n",num1*num2/2);! k3 b2 J6 O* t. U( @
    }7 [. y8 D/ ]! z8 B! L
    6.2输入一行字符,分别统计出其中英文字母,空格,数字和其它字符的个数.
    / V' D6 h. L7 j: d" i' U( o解:' H" O" l: @- |) ^2 W4 E! e7 t
    #include <     >3 W6 D. Q$ Z$ q2 @/ }
    main()
      j4 F/ `9 r4 Y& p{5 p# b$ Q  F& Y" t7 M
    char c;
    ! ?4 \, q3 p& o' I9 B. kint letters=0,space=0,degit=0,other=0;0 B  z* |: b; J6 [7 N( }* R% n
    printf("请输入一行字符:\n");" }8 x) c+ G) K) F2 ]
    scanf("%c",&c);
    4 ?& m( k6 Y) Wwhile((c=getchar())!='\n')
    8 [0 S6 P1 [: g9 Z9 Q+ S5 b{5 G# E0 \9 H( E8 d  ]7 Q
    if(c>='a'&&c<='z'||c>'A'&&c<='Z')7 W: _- [. X+ J% s: O
    letters++;5 |( U3 V" s  m! p$ n( S% V
    else if(c==' ')4 I, I9 _3 n: h) [5 z
    space++;) w, j! `  C6 ~
    else if(c>='0'&&c<='9')) n3 J  e( ^/ {/ G
    digit++;
    , z+ |. i+ c& @' I8 w' ^6 O+ nelse# \3 L3 ]6 v3 P8 R1 i4 y. J5 t/ c
    other++;4 ^% O2 k' m; E: [! V+ q' G
    }4 @. ]  p( V* s) z, c5 G
    printf("其中:字母数=%d 空格数=%d 数字数=%d 其它字符数=%- X6 d0 r" @' ]) `
    d\n",letters,space,
    / S( p$ d" \' {digit,other);
    ; f6 D% u) B# E( ?; n}
    # U9 g9 c' w# U$ [( L6.3求s(n)=a+aa+aaa+…+aa…a之值,其中工是一个数字.# J4 a7 C" x" s$ y
    解:
    4 g& \: C, t4 Q4 mmain()! a; ^; D  d: I0 @* I, _/ t$ z
    {
    3 k/ ?4 r2 k& Hint a,n,count=1,sn=0,tn=0;# L# k4 _( F' M& l! q# [4 M2 `0 W
    printf("请输入a和n的值:\n");& @" \) r& t$ ?2 Z1 N
    scanf("%d,%d",&a,&n);- p4 Z5 V6 ^: a5 |. }* W" C- I% [( }
    printf("a=%d n=%d \n",a,n);
    ' a! ]" w% k2 q1 {# L) R* y- \' Ywhile(count<=n)/ a1 F) e" j! K' s9 o
    {- V$ c4 ?+ ?1 H' {9 }
    tn=tn+a;
      {: p$ Y. ^3 G/ ~0 \: nsn=sn+tn;- [+ L8 S6 m7 Y/ f3 X" ~
    a=a*10;1 P  T! P* Y. ?6 p4 ]6 U
    ++count;7 N9 @3 b% G) F( ]% S7 Y
    }
      X8 f  {* y# g  \printf("a+aa+aaa+…=%d\n",sn);/ i  G2 ]$ }4 L) x" R' a0 {$ b
    }* J4 q. ]: O8 ^+ _2 i* g( l
    6.4 求1+2!+3!+4!+…+20!.
    6 a: }, r& v% G, W$ Gmain()2 J" V- |! e  f( O; n% A
    {4 h) @1 W' D3 l! \  }) ]
    float n,s=0,t=1;3 x$ B+ d  z' ~  A6 d$ U
    for(n=1;n<=20;n++)! Z1 O& A  e) m, w5 Q' b) k
    {
    % P6 P$ |% }/ O: It=t*n;
    : G0 }" \& p; e$ Zs=s+t;
      D( y# n% C9 L" G% t. Q1 o}
    2 L3 l0 f) v  M6 L" s: O' kprintf("1!+2!+…+20!=%e\n",s);
    7 Z3 ?8 A" y+ y+ x  e# o% }}
    ; R' v% f6 K2 f  F8 H2 k6.5 main()
    $ s3 h5 @- ]5 V# S- m( C# h{) r% Q. m6 h: q3 Z  V. i$ }
    int N1=100,N2=50,N3=10;
      S6 N( E/ d& }4 T9 Z% u% Tfloat k;
      o/ {* u# L  Y( R7 e5 n/ w0 ]float s1=0,s2=0,s3=0;
    ' e: d/ b/ C! u. P/ Kfor(k=1;k<=N1;k++)% t1 u* h3 g2 P7 ]/ n
    {
    ( s$ y: }3 z4 r( n  ds1=s1+k;9 l* U& L9 |% v! w; w
    }( J5 ]# r4 Y+ K/ J5 a6 _/ |( A
    for(k=1;k<=N2;k++)
    + a% j* L3 K2 c0 m9 S7 z! u, g2 t! G4 z{
    - i8 ?' Q( g5 n2 z8 l' n5 i# Rs2=s2+k*k;
    " Q" ?6 P% Z8 a7 U}
    - v7 w* {; z# l4 E' C7 G( Jfor(k=1;k<=N3;k++)
    # ^3 z; J" |: J4 g  P{, ?# ^2 W3 U3 e( z$ k5 ?4 c- N
    s3=s3+1/k;5 J& J2 z8 @- H% x; R& V
    }) |9 x: k  v' w- {* u
    printf("总和=%8.2f\n",s1+s2+s3);
    4 r* V1 N5 B( h2 v  E1 k}/ j# O; j) I! h: F" e
    6.6水仙开花
    # O7 q2 t" _3 P2 B/ u3 H5 M6 bmain()
    3 f) M) u) I3 U: M. r{
    6 X4 a. M; ]. _% J# x) Dint i,j,k,n;9 Z3 f- O' J3 x  k8 o8 T: {
    printf(" '水仙花'数是:");, u, f" s; y" T' m; c# Y
    for(n=100;n<1000;n++)9 U) _" y7 r* O$ \
    {/ n4 T' {% n5 u' K. V
    i=n/100;
    6 q" C5 R2 g2 E8 R8 ]j=n/10-i*10;
    ' Q4 K3 J( W% p) c; Z5 H6 Yk=n%10;
    ) }, Z; o  A4 m! j+ V$ s- j( gif(i*100+j*10+k==i*i*i+j*j*j+k*k*k); K. x8 n0 a5 i, i$ |5 X
    {4 k8 f9 r# g1 @% u3 X. Z) O& V
    printf("%d",n);8 @6 N+ b% y( s8 U0 v% x4 ^- X& J1 L
    }
    7 s: i; @: ?1 }# F}+ \9 R7 n! K3 C% F! A9 N( ^* |& I
    printf("\n");
    ' m) f( e, k0 @$ p5 y  t3 h7 C}9 J' |7 k( x+ [9 `* h' V0 K5 I- L
    6.7完数
      U5 e& m9 w. g5 S, z" d- h+ Zmain()" v% d* L4 q4 o% {% U1 B
    #include M 1000, L: Z5 `$ `+ l% W+ @
    main()
    $ F+ h3 Z; T) c, Y- M0 x1 O4 ~/ c{
    2 F& g9 B7 G/ u7 U3 n. Rint k0,k1,k2,k3,k4,k5,k6,k7,k8,k9;
    5 x) _! K8 O. [' k* hint i,j,n,s;* y; D! }" o/ g% W5 J
    for(j=2;j<=M;j++)4 m2 B- R) U% z9 V% C9 R/ w2 v( ]
    {( M  o9 z" g! M
    n=0;# m# N7 Y, n1 x7 h6 ^% R
    s=j;0 ?3 e' Z5 S- p8 G5 Q% Z
    for(i=1;i {$ l* B. J7 q# ~; b
    if((j%i)==0)0 _) Q- V$ X& }% J2 ^- C4 `
      {: G. u. x( y9 f" \% \! r
        if((j%i)==0)+ b, `: [# B! ^& d7 X
          {
    & t& L" b5 p3 u) M' Q* G& h     n++;1 ^0 H. D5 o9 U4 u6 Y5 R
         s=s-i;. c) s7 {# P+ n/ _4 _
         switch(n)
    % r9 |  q+ O3 x      {" j+ f! F8 n, z5 k( m. F8 P8 f
           case 1:; ]( p) N  W9 j( Z: V
    k0=i;2 v: T; V9 W( E2 E8 K9 ?0 @5 \
    break;: ?/ O+ Y" r: o% V: y# K
    case 2:
    8 Z5 }% A8 }2 o5 e( A( p k1=i;$ N8 {/ t: p1 G5 B' o6 F
    break;
    , J3 J4 w! h4 l case 3:
    , @# f$ Y2 Z5 G/ O7 E0 ^& z8 ^ k2=i;# [! t3 z2 ^/ N4 i- L
    break;
    & d4 X2 h/ ]' s7 Y$ o; L- o& b5 p case 4:
    * Q$ s& d5 S0 b9 b2 @6 @/ [ k3=i;
    6 Y2 A+ K* ]4 `9 I  d* |6 n. z break;
    ! y) U7 i4 x9 S4 T. U case 5:
    ( C2 {, `' t" F- P3 K k4=i;
    % S  n7 p  O# e2 S break;
    ) G% u" d. M. p case 6:
    $ O; k+ `6 s4 _6 }# o& w+ U7 e k5=i;
    0 x1 a) X6 v7 z- F break;. u% b  x$ i1 N5 ]9 R# Z
    case 7:7 _$ |6 T$ X1 @) J
    k6=i;0 ^& \7 a1 U8 h4 p0 ~  W3 ]! ~
    break;
    $ Y3 I( d+ `- g$ s! m* s! h  Z" v/ E case 8:& ?$ c5 c( w' ^- A
    k7=i;; o# l4 k" `: i2 W
    break;
    ! s% Y3 ~. p& Q& |0 O case 9:) ~4 S; k  o7 w# x1 d
    k8=i;
    & a% S8 Y& s7 G3 j break;
    3 `0 F( D& g& U1 y1 J/ x8 f case 10:' j% m& L) F& r+ z5 Q( D
    k9=i;3 b4 M: m- V: f. X
    break;) [+ I2 k6 M, c0 s
    }
      m9 m; m& n! d$ I2 C      }
    / q( Y3 M& G1 C4 u5 `' A/ N8 o- j   }" }0 X; X) `& f1 ]# F9 U4 J3 A
    if(s==0), T- j5 v! z) D. K( v
       {
    , c) E; R5 M: a0 M; e3 Z$ rprintf("%d是一个‘完数’,它的因子是",j);$ N, ]; `7 E' h2 z: X
    if(n>1)8 \1 G7 p& J* J& K, s
      printf("%d,%d",k0,k1);
    6 ?6 `, X9 j1 D7 ^0 c" F* `if(n>2)+ J3 G& h4 h7 l$ j% r* u* g( v
      printf(",%d",k2);
    8 Z& m. l9 {$ d( h3 F8 _# qif(n>3)
    3 ^0 K6 v" P( o  printf(",%d",k3);) |/ D0 a6 @; ^3 J; R
    if(n>4)
    ! V4 w$ u: y6 \  printf(",%d",k4);
    6 ^! w# a& o. I. f9 D6 hif(n>5)9 R: H& E+ d: L2 p" S% Z
      printf(",%d",k5);
    3 G' e# v5 w3 S# s/ Q5 t1 \2 mif(n>6)
    3 y; v* D) n4 q$ g1 j: K& Z  g4 Z  printf(",%d",k6);9 |" r$ l5 {3 N1 F
    if(n>7)
    / W& x# d, U2 F  printf(",%d",k7);
      e/ T* Z# g0 Q6 [0 cif(n>8)
    " q) q4 g* U- z& G  Y1 R" B3 R8 @  printf(",%d",k8);
    - d9 h. h+ j( E* N: V  T: J5 l/ o8 xif(n>9)
    / l, W& G1 l; k% o$ J$ w  printf(",%d",k9);
    $ i4 d2 |7 ?& Bprintf("\n");( x$ Y7 R8 D  l$ |5 I. D
      }
    9 l* [, Q1 o# y, I9 X7 j! F}
    1 p4 F4 T& Q% y+ Q4 N7 f方法二:此题用数组方法更为简单.
    9 \* a2 n2 f% l3 J6 n2 Emain()
    7 b9 c4 P9 a' t. _{8 x# W+ }; t2 J
    static int k[10];. H1 [0 @* M: Y% F
    int i,j,n,s;
    ( E; q/ ^( E3 O7 T3 b5 Cfor(j=2;j<=1000;j++)
    1 [! m7 Z7 n7 R{4 G! D) ]/ c. L
    n=-1;* t- h# l# B" h" B
    s=j;/ ?$ G  n/ o7 x0 a, _
    for(i=1;i{
    & {1 a, D; L7 L; z0 m- ?if((j%i)==0); A, G& f" k; D+ c' U
    {
      `9 L/ j, |2 w1 m# v* w. @- L! Bn++;1 Q7 u0 g5 J" C1 B' G! H
    s=s-i;
    9 a& S/ }, {7 b* G+ qk[n]=i;* R6 ~/ O, }. U
       }4 t0 j. S& B3 B" q, O8 s
      }
    ' d$ r3 I' N. E5 u  {3 }0 Eif(s==0). p. ^6 Y& w5 F* n! T. t, U; t6 U
    {
    ' b$ c8 W% z, v& e0 }printf("%d是一个完数,它的因子是:",j);
    ( ~4 m2 w& H6 N' h1 rfor(i=0;iprintf("%d,",k[i]);6 l4 z2 }4 c$ z3 d+ w
    printf("%d\n",k[n]);
    % V1 q7 E: E. v* \4 W4 C8 x7 |1 U7 c}9 b9 D7 W9 M  |  v/ g9 g
    }) W* c4 g) P' n. m
    6.8 有一个分数序列:2/1,3/2,5/3,8/5……求出这个数列的前20项之和.! u: @9 j7 b7 e6 C0 k1 W! ~( ^
    解: main()
    3 I, U( c" v) ]  l0 U6 \! T; L{
    + [) @/ {  M' lint n,t,number=20;
    0 f8 ]2 w/ [; s9 V. Cfloat a=2,b=1,s=0;1 Y. Q6 z( h% y: l7 |7 T
    for(n=1;n<=number;n++)
    # |; G2 f4 x1 `* M5 y. y{
    5 I3 C# z: m+ y% P7 r( B0 xs=s+a/b;! s/ l% e4 `: @! w  a) k
    t=a,a=a+b,b=t;1 N" |) i+ y, _
    }
    # w' B( z8 U5 _/ xprintf("总和=%9.6f\n",s);
    1 \2 w$ \; r. x+ n4 _# E1 D, Y}
    7 q8 l0 i4 c2 B3 Y- b* [6.9球反弹问题. v9 F% H( M0 `5 y5 r/ _9 ~' ]7 a
    main()
      Z/ Q. a% M. \1 v{
    0 ]! I8 K; z, k* W% E* y+ D, i  S* Ofloat sn=100.0,hn=sn/2;
    : I5 A% A$ m8 V* h# `- J- x( lint n;
    6 A6 ?& O) B  \! x8 G4 \* j3 Gfor(n=2;n<=10;n++)
    2 {1 d( p" j' n{" V/ }/ j* ?5 u8 @/ R/ b
    sn=sn+2*hn;8 l# `  E7 S) r5 A
    hn=hn/2;
    8 a3 ~. v& z, e}$ J/ O; b) ]# o; o- B+ c
    printf("第10次落地时共经过%f米 \n",sn);7 Y1 }: p; s' p7 w2 v
    printf("第10次反弹%f米.\n",hn);& }9 b! G& Y8 B: v3 [( _
    }$ M% h7 U* H# r! ~9 I+ R4 i
    6.10猴子吃桃- U0 |3 P3 t* w$ A3 A6 C7 m
    main()
    % I. H# v7 N/ O0 T{
      p3 t5 F7 L0 y3 L/ o/ pint day,x1,x2;$ N8 B* e; N0 M/ [
    day=9;" T" X1 h/ E+ m5 p
    x2=1;
      e% }* y3 ~) Q; r3 G0 S4 ]3 pwhile(day>0)3 k* \, W8 B' q' s6 I
    {8 J* i0 c1 `+ ?3 _( v
    x1=(x2+1)*2;
    - y4 @0 c7 o7 r/ E6 L/ I9 c* Nx2=x1;
    . k! ]2 @. k8 D, y9 ~day--;
    3 q+ O( N; O2 G1 R3 n0 c}" ~0 o; Z% L3 |8 C: n- B6 M0 z5 K6 v9 ~
    printf("桃子总数=%d\n",x1);
    - `+ u2 J! U- P, m. L$ u8 E}# {5 j+ N/ H9 H* Z: g+ j2 ]

    $ Z3 h$ T# {- k3 L6 t8 T6.12
    & A- D2 i7 h5 L9 H#include"math.h"
    4 P$ Y9 V$ A5 m$ F( {  ~7 o  Umain()
    2 @* U$ O" f: J1 N/ Q{float x,x0,f,f1;
    ' L9 `( Z2 F$ S, D. O% ~ x=1.5;
    8 B2 |/ ?9 @' o6 J do
    1 X" i9 }4 z9 C   {x0=x;6 n) b9 g* p$ o: v* H
        f=((2*x0-4)*x0+3)*x0-6;
    ' {& ]& M, f0 m' A* }' d$ `    f1=(6*x0-8)*x0+3;
    - ?- _7 M; k0 @" q" `    x=x0-f/f1;9 L  |* u$ p' \2 G% r
       }
    ! ?! B1 @; r9 n' e# w" X while(fabs(x-x0)>=1e-5);
    / ]8 T; }: o/ |% p+ w+ ~ printf("x=%6.2f\n",x);
    : t( q& o: K; [}4 P( n9 _, S, f4 R' H

    3 q4 F! S2 k' S! X! c) s2 M& O6.13
    & j3 ~- a" m0 _' h$ H/ U6 W8 U#include"math.h"
    6 ?4 d& L. r. m9 gmain()+ f* u1 j9 g2 X4 v) O! |' u) W0 |% N7 x
    {float x0,x1,x2,fx0,fx1,fx2;
    # n+ T' }  \% Q2 r: e, H" R+ U do
    3 [& h& @9 b/ [2 q, b% s4 Z   {scanf("%f,%f",&x1,&x2);
    / @& a' e+ N. b    fx1=x1*((2*x1-4)*x1+3)-6;! Z# ]" C1 B% a6 D* b! U
        fx2=x2*((2*x2-4)*x2+3)-6;
    ' x2 [; J  r" b8 a& N7 O   }0 J% j! L0 _. n! G
    while(fx1*fx2>0);
    2 f, U# A4 w7 q4 Q, V6 T do
      d4 n- a( D8 E   {x0=(x1+x2)/2;
      V9 j$ p0 ~" {( W( y# L    fx0=x0*((2*x0-4)*x0+3)-6;; |& v  ^9 K0 X0 q- I0 Y8 F7 `
        if((fx0*fx1)<0)# {6 b. A, I. b
          {x2=x0;
    2 I: y; q/ ^, N: v$ d! V' j, b       fx2=fx0;1 R( h! @; l4 z" w$ j
          }) Z# `# u! C3 V+ S: y8 C) f
        else& I+ A5 M  V/ T/ B" a
          {x1=x0;1 ^! i- F! Y: y
           fx1=fx0;
    ! i$ Q1 `( `5 r$ l0 Q3 [( g8 A      }) G$ {& I2 o) t. h% Q& g3 c0 w$ b
        }
    * @6 H" g5 U  Z7 c) ^7 c; M while(fabs(fx0)>=1e-5);+ Y2 q+ z, e2 N
    printf("x0=%6.2f\n",x0);
    1 c8 x( N) o# g, {% S3 {}
    ; j$ p; J& o4 q- H; J) R4 n6.14打印图案. X/ f" ?0 _2 o7 S, Z
    main()
    . ~' ^* k0 z* V  r{int i,j,k;
    , X$ ~5 s* u& z/ H6 Z. W for(i=0;i<=3;i++)
    . I4 P% ~& q' u   {for(j=0;j<=2-i;j++)
    - c* m# ]9 O& X% |+ M! p4 [# f      printf(" ");
    / C' ]7 `# G3 R% s  O    for(k=0;k<=2*i;k++)
    : h" L! d% m+ I8 e( A: W; ^      printf("*");
    ) ~% R+ @- X) X- x2 g    printf("\n");
    + E8 P! P! I- P    }( \5 o9 O: _  s1 w
      for(i=0;i<=2;i++)
    9 Z  e; a$ y5 g5 V  z   {for(j=0;j<=i;j++)% B' s, q1 N  H' h3 K
          printf(" ");
    ! y6 T3 M; l3 V$ J4 a    for(k=0;k<=4-2*i;k++)
    & c2 _( r5 Y4 b* {      printf("*");
    ; P7 W  y9 f% R# k, f    printf("\n");$ f' O8 ~' x/ V/ \+ v( \
        }4 M7 |# E9 F. z$ t0 i1 Y. a
    }
    0 {0 ~. X, D0 N9 n9 z6.15乒乓比赛$ A- A, s( l1 Z7 V
    main()+ ], ^* a, ^' E; N  R  v1 o$ P
    {7 ~/ o( r! `! s+ z$ M' H& O6 P
    char i,j,k;" E8 G! g: V3 t2 t  E% {9 P
    for(i='x';i<='z';i++)! q: R5 a! }' w2 x& M0 Z2 L
    for(j='x';j<='z';j++)
    8 y' \0 B# Z( @' @& F" H {% m) ]* G: }  q9 x
    if(i!=j)
    ( e- Z: L+ H. }for(k='x';k<='z';k++)& N3 e# T+ ~0 J/ \
       {7 E: M! [2 A" a
    if(i!=k&&j!=k)
      r9 [- ~! C6 ^! h' v* A( T    {if(i!='x' && k!='x' && k! ='z')1 q: ?' f1 M% e9 m1 z( e0 n
    printf("顺序为:\na-%c\tb--%c\tc--%c\n",i,j,k);
    9 U& T  h, ~/ u4 m5 G9 B) Z# _- g    }
    5 }" k: q% h/ u; s: w0 |! _2 j1 {   }
    9 G( Z9 L& ?* R, N: `  }) m( m- }) e5 {; b0 I
    }& B- R4 R* a+ c7 k: U) u
    C语言设计谭浩强第三版的课后习题答案
    + M# Y9 W$ q& r" B1 |$ a7.1用筛选法求100之内的素数.: f0 K+ q( y0 H3 `6 [. K
    #include& A" D: k7 j# C
    #define N 101
    ) \$ O. G' e! L' p1 z4 Fmain()8 ~' l4 ?( X. P) g$ r: g9 X
    {int i,j,line,a[N];
    * `) B0 ?# ~. H2 Wfor(i=2;ifor(i=2;ifor(j=i+1;j  {if(a[i]!=0 && a[j]!=0)3 N. O4 V9 c% N% A9 f
          if(a[j]%a[i]==0)1 N2 u' M4 ~. t) d: n# J! [
    a[j]=0;3 G' |2 e% H* I6 s) j1 [" h/ z
    printf("\n");  k7 u( H# j- Z+ v1 B: n$ T2 c# m
    for(i=2,line=0;i{  if(a[i]!=0)
    8 ]# x+ c. G) q; J2 n   {printf("%5d",a[i]);
    7 E: C$ v* \/ j4 z; I line++;
    * Q) p2 d3 s0 H  R7 |$ h% y if(line==10)
    3 R2 H( E& S: F! Q {printf("\n");
    2 R2 B0 t3 J/ I+ Y) T8 v line=0;}
    " P+ t1 V% ?( E3 X+ L   }
    : v+ e% y* G9 E8 w" j  O}- Z- `% n' y5 ~0 S# ~# u. z8 |9 f
    7.2用选择法对10个数排序.
    0 v3 s3 @$ y+ `$ ]. L& G#define N 10% t% ^; A7 ^. A) M. d
    main()7 b" C$ I# M0 H- |" \& P
    { int i,j,min,temp,a[N];
    3 N$ M. r* n1 Y% ]+ ^2 u- hprintf("请输入十个数:\n");
    8 ~( N. \% Z8 g2 efor (i=0;i{   printf("a[%d]=",i);% @5 a- z8 }+ k1 o
        scanf("%d",&a[i]);3 C, C+ {) m% n: ~! u
    }* A$ P2 M2 D- [: J! A' }/ G
    printf("\n");" Z  F5 Z7 ~* ^3 K
    for(i=0;i  printf("%5d",a[i]);
    ) _% j# f: R; I5 g# b. Cprintf("\n");
    9 i: |* {$ R/ a1 z  ^, k- g+ Cfor (i=0;i{  min=i;
    + h/ P, s8 j. P3 v   for(j=i+1;j     if(a[min]>a[j]) min=j;% E6 c4 e$ M$ x9 [5 Q5 c
         temp=a[i];
    . o2 M& v6 t; C) ^; @     a[i]=a[min];
      G+ F8 K/ o/ P! e( i     a[min]=temp;' x! @. l0 ^! l' t. r+ I0 W
    }
    7 k0 q  \1 t- S9 ~# s. d. cprintf("\n排序结果如下:\n");) E$ B9 q# h2 Z
    for(i=0;iprintf("%5d",a[i]);# }+ m0 s7 y9 N( {8 m
    }2 E6 a* U8 Q2 w9 S, t
    7.3对角线和:
      _( u1 w- d$ Omain()& E6 I5 {& H( t, }  ^
    {
      g$ b; @5 ^! u$ pfloat a[3][3],sum=0;2 \" {% C; E9 D' H% n& ~. _1 V9 _
    int i,j;
    8 u/ k! Y8 ?! W  lprintf("请输入矩阵元素:\n");0 {0 l2 _" B- f
    for(i=0;i<3;i++)
    5 D5 `5 U% ]) p9 f& A" `& z- e: U  for(j=0;j<3;j++)
    + N& P6 p5 O7 O( | scanf("%f",&a[i][j]);
    ) S, E; ^9 P  k. h9 N$ x  for(i=0;i<3;i++)) n/ @  S+ H6 _/ K
        sum=sum+a[i][i];
    $ S' C6 q0 Z7 n" `8 O1 R% x    printf("对角元素之和=6.2f",sum);
    " {- S& h0 }0 A3 W}# h# X5 b; f: t; H9 l
    7.4插入数据到数组
    4 Q3 R6 @: ~( X& [9 G1 Y2 l  bmain()
      N  M0 [4 c- o/ }7 J' ~2 C- ?8 g6 d+ ~{int a[11]={1,4,6,9,13,16,19,28,40,100};
    ; ]1 A) B+ v5 o5 S6 s. Y7 vint temp1,temp2,number,end,i,j;
    , ?% S- K2 R& j: q" nprintf("初始数组如下:");
    : d8 n9 i8 L# Efor (i=0;i<10;i++)
    7 p8 M# {# _1 l! p0 Kprintf("%5d",a[i]);
    / V6 Z/ q8 V  k5 }0 U7 Mprintf("\n");$ [$ @2 o& z1 e: k4 Y8 a* {
    printf("输入插入数据:");
    9 u& j: `2 V9 o* ^scanf("%d",&number);
    - {) Q% }# i% K) j; @6 y  Gend=a[9];
    / Q: j( x0 f" C, Q7 uif(number>end)
    5 h4 ]; Z# F: T* R9 ia[10]=number;
    " n7 M+ ]& m! ^) R& U0 Oelse) Y7 P3 u* w% O& @" F- X
    {for(i=0;i<10;i++)" o1 L3 G( A8 n9 C
        {   if(a[i]>number)
    * |; e7 Y& K4 \0 z  I4 E( \ {temp1=a[i];
    6 }/ [& \4 ^0 W6 Q  j3 j' o a[i]=number;
    ' R. Z2 X/ c# o7 @5 K" o/ E for(j=i+1;j<11;j++)6 l0 R7 }% r6 X  {! N% h5 B
    {temp2=a[j];
    3 g* |. p8 j% t/ ^ a[j]=temp1;
    % n% B5 c/ B" u! K4 a temp1=temp2;
    7 o- c8 {& S! x5 ~; n5 ` }
    & y7 A% ~0 |% n2 @0 b break;
    ' y: r0 u- f4 j! B }
    ; ~. s. i2 ^; M: i4 x; o& U& l, h     }
    6 `- n  H- n4 O3 A! E9 M4 [! y }
    8 r% J4 [9 a6 a4 E for(i=0;j<11;i++)
    " c2 U- F. c* E1 f    printf("a%6d",a[i]);5 a4 O. P, M& S" t" \9 a' c+ t
    }; @& K' \% L8 I; T- h9 [5 H+ e
    7.5将一个数组逆序存放。& }( g# _( A7 v4 S+ |$ [0 n
    #define N 5
    # f' x# `( k. g3 r6 a/ {main()0 F2 a9 K; B; A. h$ G8 H" d
    { int a[N]={8,6,5,4,1},i,temp;" e3 \4 w  {  K* ^
    printf("\n 初始数组:\n");
    & n- c/ y9 E5 L: V% Hfor(i=0;iprintf("%4d",a[i]);' Z7 N$ M$ ]/ `& x% ?
    for(i=0;i{  temp=a[i];) K. N2 O, \+ K% Y( U
       a[i]=a[N-i-1];
    ; [$ ?/ X: t" t) |7 k4 ~7 J   a[N-i-1]=temp;9 y2 x6 ]- |2 ~- s6 C+ v( P% I8 A
    }
    & K/ M0 ]) B5 b  b8 Xprintf("\n 交换后的数组:\n");
    6 n: K2 d' l4 p7 L; p1 efor(i=0;i   printf("%4d",a[i]);
      b3 b- i! ^5 d/ Z* t: b}
    & ?) J! T% c6 @' t  r* \. r/ R5 m7.6杨辉三角, w) ^, L; Y2 p* }
    #define N 11
    % m4 q% w% o* o) N3 O; O. B) lmain()
    . l( h' k2 m5 a9 e& i. ^. J{ int i,j,a[N][N];
    , A; t0 J" K# H5 q  for(i=1;i  {a[i][i]=1;
    4 I0 G- D9 f/ c9 }   a[i][1]=1;
    ( _2 d2 |2 E$ d$ w  }
    ' s$ i/ ~: `8 K/ L" s* {  for(i=3;i    for(j=2;j<=i-1;j++)
    : e9 C: L, J  l a[i][j]=a[i01][j-1]+a[i-1][j];; l+ P' |! A  a+ c
       for(i=1;i   {  for(j=1;j<=i;j++): F+ s* I% ^+ ^! H- [1 q8 y
    printf("%6d",a[i][j];+ o* |7 r8 W; r" J% z
    printf("\n");
    " t& ^1 ~# [, l. e4 ^2 B    }
    " K/ ^$ b/ N$ Q2 N) T6 @- f* M    printf("\n");& F: A+ d& X& ^5 s+ ^! X, Z7 D" E/ R3 |
    }1 d1 Y; I" P7 O0 h
    7.8鞍点- M6 Z1 k, S* _! r0 o! N: H
    #define N 10/ P) B% m3 Z3 ~. s! j, d8 C, p
    #define M 10- C7 }7 |& B0 X, D$ w
    main()5 F0 U2 K- L  W7 y3 |% }! H% R, Y
    { int i,j,k,m,n,flag1,flag2,a[N][M],max,maxi,maxj;
    2 \. @9 A7 m6 {6 j3 R2 N printf("\n输入行数n:");9 K8 q. y, ]8 j, b3 S8 h
    scanf("%d",&n);
    $ U% w3 _0 N4 T* d. }$ r printf("\n输入列数m:");
    % {3 }, {4 d, }" p scanf("%d",&m);
    ' N' P, y# @' B+ z% `1 Q
    ; a% i4 @+ l. X8 @( n! t for(i=0;i {  printf("第%d行?\n",i);
    % z  R* v4 h% k: |8 J  V9 i for(j=0;j   scanf("%d",&a[i][j];
    9 a, ]0 A# J" s9 [2 p' E$ m3 l }
    8 }3 s( u% p/ @$ j for(i=0;i {  for(j=0;j      printf("%5d",a[i][j]);4 s9 ]! N- o0 P% `/ T3 k
       pritf("\n");
    " m$ d2 _8 ?, \1 ]/ ~ }+ U: ], M# L) H1 E3 k
    flag2=0;
    8 P, L& m* _# p for(i=0;i {  max=a[i][0];
    & Y' }% |- {/ x for(j=0;j if(a[i][j]>max)
      B' G$ H" U2 K+ z( N, F {  max=a[i][j];
    / L: _: U4 P' a- s% p3 S6 }    maxj=j;. E" A" c% p, A3 O( W
    }
    8 V- F3 j; [: t1 {9 O+ G, r8 @ for (k=0,flag1=1;k   if(max>a[k][max])6 q2 r& |" z5 e( Y! o( O: A4 T
      flag1=0;
    " w& p1 U) \9 ?' y( b if(flag1)4 X  h. \; C1 T: b) M1 B2 ?+ V
    { printf("\n第%d行,第%d列的%d是鞍点\n",i,maxj,max);" `) i; ^: f% q8 T" g6 j( `8 n
       flag2=1;
    2 n1 M& u% _, l  F  \' i }7 S6 E2 Q7 L3 D( w0 y; d* F
    }$ S" H9 m! v5 Y* }1 C4 W0 b
    if(!flag2)  Q+ {0 g& ~& r5 y( a0 }# U' n
       printf("\n 矩阵中无鞍点!  \n");3 x) t3 M, U. e* u1 l
    }
    ! O9 F, i2 R' E' q
    3 Y+ T% g$ l: I: }* q* r8 p9 q7.9变量说明:top,bott:查找区间两端点的下标;loca:查找成功与否的开关变量.# F8 k2 ^8 j& R( D* ~
    #include
    2 H, p& B; l' A, c7 @#define N 15+ w. o# W' N8 l( M  P1 t
    main()
    ; L) x- V8 B* O+ R" i{ int i,j,number,top,bott,min,loca,a[N],flag;
    ( Z8 e) D1 y* _4 U$ \6 I  char c;
    - u# P  y' n7 {8 v; N, G  printf("输入15个数(a[i]>[i-1])\n);
    1 m% A0 j0 ?) |/ A9 y/ o, ?/ T. [  scanf("%d",&a[0]);
    : \/ T3 L) v  G) U; @1 o0 K  i=1;
    # I1 }* g2 d3 f+ [" m  while(i  {  scanf("%d",&a[i]);
    2 n' }! g: d+ f" o. V$ `     if(a[i]>=a[i-1])# G: J3 }: t6 n% G* J4 S/ `2 ?
    i++;$ x% j4 ]* s* S4 ]
    esle
    % H" D4 y  J1 d# n% F& @; V: x {printf("请重输入a[i]");
    9 k; a. B+ G, q# ^$ N' X( t printf("必须大于%d\n",a[i-1]);
    $ K( v( I! Q4 l6 m8 N$ G6 j1 ^ }1 l) m+ C- o5 ?
      }$ k5 T4 @* M( }
      printf("\n");3 Z& T( z0 J6 V( b( f* ~* S: T8 Q
      for(i=0;i      printf("%4d",a[i]);" c2 F: ^/ ?! r+ F
      printf("\n");& K2 T. I3 R. I1 {9 L& U
    " L, P, s  U6 U- @0 @/ _9 d
      flag=1;. W' S1 O# J$ x3 `; E/ J3 D
      while(flag)$ K6 ~& L0 T9 d3 n* C) c
      {/ }) D7 _7 p  r. p$ i! G( ^
    printf("请输入查找数据:");
    5 {# Q3 w+ O$ w4 B  scanf("%d",&number);4 W* c4 i7 R* d* B
      loca=0;
    , j# `  {& |  U6 q  top=0;
    : i$ M" E3 S: E+ T  bott=N-1;
    6 q% u4 M& x. d7 j/ ^8 Z! O  if((numbera[N-1])): d. R9 o, X. j9 _
    loca=-1;/ n0 V: j/ |: J7 v0 H6 X
      while((loca==0)&&(top<=bott)); p) |1 p( m! m! d8 S2 f# O: Y
      { min=(bott+top)/2;
      X: B( W4 I) [: j3 P; \7 Q" M    if(number==a[min])
    & N" `+ R, u) g, D  Z+ Z, }: y    { loca=min;
    ) q5 p0 D, u8 O; ~2 L0 b5 u* Z      printf("%d位于表中第%d个数\n",number,loca+1);* k2 @. P. V6 Y; a
        }  [' f8 z% U7 X  q9 g; D% u- r
        else if(number     bott=min-1;
    : |4 A) @1 Z/ I else
    9 q+ b5 l, J9 w     top=min+1;% v6 p" D4 o3 T6 p: d. I  k1 G
      }
    0 O: c! f2 _* W  if(loca==0||loca==-1)7 D. o" W* P0 K$ W3 {$ Q
        printf("%d不在表中\n",number);
    * G& B; [3 D8 z3 l9 ?3 |  printf("是否继续查找?Y/N!\n");
    / A8 D' _7 `) C) [$ Y  c=getchar();
    ' B# ~* o: U5 B( d- u& s5 }8 j+ M if(c=='N'||c=='n')0 |* D8 ?) M, F
    flag=0;
    ; d. K4 K! d9 J6 F3 t    }
    ; ~5 F5 i' M5 \: v9 k8 ]}
    . R8 f% Q1 U) c2 O
    , r+ \- r% Y, _+ j! }0 p( S7 R7.10
    & H8 E( t+ q1 P! xmain()
    0 v, S/ X. E1 s; m: P+ w{ int i,j,uppn,lown,dign,span,othn;7 `( W! i/ P/ a4 b8 R* T  k
      char text[3][80];0 x+ f# S8 m) V$ \: _5 F
      uppn=lown=dign=span=othn=0;
    1 M  B( }: M+ R3 v  for(i=0;i<3;i++)
    ; d9 l6 E# R, L  {  printf("\n请输入第%d行:\n",i);
    3 z* G% [0 {! q% |. i: I     gets(text[i]);4 C# V$ m% q3 e# S( g" s
         for(j=0;j<80 && text[i][j]!='\0';j++); R/ @$ I: m$ s; J4 x  [! u" t
         {if(text[i][j]>='A' && text[i][j]<='Z')6 d& @+ r" g1 c
    uppn+=1;
    ( s* H- v' l% D) ` else if(text[i][j]>='a' && text[i][j]<='z')" |7 N. j  G* n* n) [4 {/ |' @
    lown+=1;; h; \. J/ a4 |* e
    else if(text[i][j]>='1' && text[i][j]<='9')+ p2 j9 `/ P/ L$ R
    dign+=1;
    8 Z7 e4 A, d, s/ K( B+ R else if(text[i][j]=' ')
    ( _8 L3 [1 J1 _8 A span+=1;  x% C/ J% }: g( @
    else/ }4 y1 j3 Z7 s- o% \
    othn+=1;4 M% j2 S' V8 F, y) W" f/ u: l5 }- c
         }, D3 t- {; c3 n( ?0 A5 p
      }. T* h2 N3 F6 B
      for(i=0;i<3;i++)1 E+ Q; ^1 E! O! l9 x
    printf("%s=n",text[i]);6 g: O. H6 `3 }* g6 |8 K- x
      printf("大写字母数:%d\n",uppn);
    ( n! o8 s9 n. K8 M3 C5 A. e  printf("小写字母数:%d\n",lown);
    % W( G- i, j! M& W3 s! U3 q  printf("数字个数:%d\n",dign);1 ^; E$ E: K' O
      printf("空格个数:%d\n",span);
    ' M2 e! M1 [# ~$ E" n6 L+ l/ c  printf("其它字符:%d\n",othn);
    * r9 B6 f* }( h' F}( ]( r3 U) ^. H9 m$ f
    $ v- N' X* v8 o8 n! U' W) ^) d
      o9 N8 k7 V' U; h( P
    7.113 X4 G8 x! m8 g' M: \3 m
    main()
    , `6 P# Q' d# z$ p# ~* a+ w  {static char a[5]={'*','*','*','*','*'};
    2 v- G- p: o  C9 r8 S8 A$ |9 {   int i,j,k;! E2 J# k' O& V
       char space=' ';. b. ?5 d/ s2 ?* u) B) j3 B. I5 h
      for(i=0;i<=5;i++)
    7 b; I5 i; J- Z8 q   {printf("\n");
    ' ?! A2 U7 i/ X; A0 d    for(j=1;j<=3*i;j++)
    ' l  X" c" Z& v0 E, S printf("%lc",space);2 e& t7 l# ^4 N$ z
        for(k=0;k<=5;k++)
    " i6 P6 Z$ E' K; K9 y; e, g printf("%3c",a[k];8 o2 X/ ]; Z6 G+ [& c# I) H! N
       }. D6 @$ }' W! e8 S. q( ^3 c# l
    }$ j2 j: A/ E. l) V6 B7 T
    7.12
    1 I- x: U7 n9 ]- U+ i5 P7 g0 ]  C#include# A3 x# _8 m8 P6 F/ a1 ^' z0 I
    main()! S9 P6 U& t6 H2 i; L5 S- y
    {int i,n;
    ! _1 \) _, x) a0 @  Q char ch[80],tran[80];9 w- v2 x  l; ?' I' B2 n6 G- @
    printf("请输入字符:");
    ' o% M- K' _( A5 Q3 r" B' [- h gets(ch);
    ) j% }1 m* X) Q* |printf("\n密码是%c",ch);- l; ~& t; \, S' y1 U
    i=0;
    $ I* }3 [! P, O; Mwhile(ch[i]!='\0')$ ]4 _2 I/ W9 ^. I' j3 E
    {if((ch[i]>='A')&&(ch[i]<='Z'))4 n! |) P" j* n6 Y9 W( ~/ e* J
        tran[i]=26+64-ch[i]+1+64;
    ; X& R; i7 k0 S+ y0 _& felse if((ch[i]>='a')&&(ch[i]<='z'))
    ( t" Q5 \3 r0 S7 K: O   tran[i]=26+96-ch[i]+1+96;
    2 g0 L' `5 }/ D$ P" Delse/ M- G- S+ P. f) D
    tran[i]=ch[i];
    + h# K- k$ ]5 i/ t" w  i++;0 O; ~5 x$ W, f& r# B) o" i5 ?  n
    }
    & Z+ n  z/ ^* c) k- Gn=i;" \& V7 U2 L0 L1 ^
    printf("\n原文是:");
    1 J: @' ?7 p3 E0 U) Ffor(i=0;iputchar(tran[i]);
    : D' o5 v. y# d" r. o}
    . S7 @: M* Y, U$ d/ p3 c3 w7.13# C- s& W% k& _; g' I
    main(): n; Q5 C; _4 r
      {* T- V4 W' G5 q' g
      char s1[80],s2[40];
    0 ?# I) F% n0 o8 j  int i=0,j=0;
    - W5 L5 `& s& o, T0 p  printf("\n请输入字符串1:");
    5 A% J5 G+ r" H% z' G  scanf("%s",s1);
    & c8 [' Q0 y* d; C  printf("\n请输入字符串2:");
    5 ]% e+ G; G0 s  B  scanf("%s",s2);& g$ Y* {# n  p
      while(s1[i]!='\0')9 w! D5 W* D- R% i) f3 I
        i++;& C, n5 Z) ~( ^6 R( C
    while(s2[j]!='\0')- X% T! P" {$ ^' t( ]+ L
      s1[i++]=s2[j++];
    $ F( W/ z! W0 F3 d' w/ K7 vs1[i]='\0';
    " p: ]) v7 ^% hprintf("\n连接后字符串为:%s",s1);) y) E+ z8 P% ~3 M
      }
    / d  G5 ?: s- g6 F! z
    : J. L4 V* u/ V% U: N* F9 h9 U: U( a. X3 j2 j
    7.14
    0 d+ w- d7 Z% F9 v; g& u#include5 F2 ^; w0 g' L9 L+ M) h( w
    main()
    . @& f3 J  l/ U{int i,resu;7 U9 M) a4 R  {: V0 }
    char s1[100],s2[100];
    4 v) I% @" u7 r' [2 h+ S, v5 G" f printf("请输入字符串1:\n");' Q$ x1 c" {: t5 }9 r$ t
    gets(s1);
    ( C. @% `% {' w* X2 S  A7 \& ~ printf("\n 请输入字符串2:\n");3 w0 d' d! B- ?0 C7 J
    gets(s2);
    - T* O& F' D6 ^6 P3 x) | i=0;* J6 v4 k0 r3 z* E* r8 `
    while((s1[i]==s2[i]) && (s1[i]!='\0'))i++;
    $ j! G7 {5 v. V; @  { if(s1[i]=='\0' && s2[i]=='\0')resu=0;
    : I9 u7 L, s- |8 |6 t else6 p. s9 x+ l+ ]5 d4 o  O2 w! o9 \
    resu=s1[i]-s2[i];- A1 e1 W- L* z% Z
    printf(" %s与%s比较结果是%d",s1,s2,resu);- o  z2 b5 d( w7 C' ^$ {
    }
    ! o' w( H! U: ^" Z) O3 l7.151 W/ @" _& [. ?4 C4 l! x
    #include, Q2 E7 O( d9 F
    main()1 J# s- C$ z+ L+ ^, y) o
      {9 [! J, S6 R, {4 A7 e' @6 Z
      char from[80],to[80];
    5 S" Z4 |" B; x6 B( B! ^5 I  int i;
    / H- g$ a3 s0 ^  printf("请输入字符串");
    ' i+ z& ^) c# n. `6 Q  scanf("%s",from);+ \! G, o& U( |( c  x1 F' O
      for(i=0;i<=strlen(from);i++)) Z- w  f# S! N
       to[i]=from[i];
    ' W; F7 b4 Z. N  printf("复制字符串为:%s\n",to);
    1 S" `- d$ S$ N7 j, t' b  }6 a4 P# A& C: P1 {0 i- _  B
    : s8 B2 Z! g8 v: F
    5 P9 k5 L, w0 P% o1 `& J9 \! g0 |
    第八章 函数
    # H9 u8 t0 `9 i7 t+ c8.1(最小公倍数=u*v/最大公约数.)
    : c( S" b4 }' T# R. khcf(u,v)
    # c) v! k( R2 u0 g; Yint u,v;9 i* t1 W1 z+ Z  c5 ?! ^
    (int a,b,t,r;- a# T4 l# P9 B( n- w6 e3 w
    if(u>v)5 b" B8 u# `' A
      {t=u;u=v;v=t;}" s. t' D% e2 f+ M2 E( u
    a=u;b=v;3 H! [" C+ B- z! F$ w* w; r
    while((r=b%a)!=0)
    ' B, j6 @1 Q* d6 N& x, p   {b=a;a=r;}- p) N( ~- {# E9 o
      return(a);
    9 d2 b0 u) `- ^0 i& b7 d& V  }) o9 G: y" |  }! A9 Y. i
    lcd(u,v,h)- P0 S9 }4 ~! {5 r6 s3 M
       int u,v,h;
    , }, n0 \( n6 [8 u' E {int u,v,h,l;
    " z- r7 Q5 K: f. B" g scanf("%d,%d",&u,&v);$ w# P; i* C# ~4 p% e$ n
    h=hcf(u,v);
    : b) r# y; l# U" o& F4 X4 S printf("H.C.F=%d\n",h);  r. G! |9 g& a' n- ~( {. I( K: T
    l=lcd(u,v,h);( o+ X1 S  w- V
    printf("L.C.d=%d\n",l);
    , l. O  ?1 T; n7 U }
    * }8 e# \9 o) h& y6 j/ G  {return(u*v/h);}$ n* O% i& F5 i3 r/ x) @3 T
    main()
    8 M4 R4 A0 J: G, P {int u,v,h,l;
    2 Y' v" I# z: m3 c# C scanf("%d,%d",&u,&v);1 h% m% i/ k/ X) j1 Q$ o# @
    h=hcf(u,v);
    4 ]4 r8 Z) U9 ^4 g printf("H.C.F=%d\n",h);* s( W7 X& E9 U2 b: B
    l=lcd(u,v,h);
    ! w4 \3 \$ P4 ?6 m4 ] printf("L.C.D=%d\n",l);* W7 n8 J5 ^/ H5 i# V* ?
    }
    3 `7 d( b( [; t( b5 L- N1 ]" |( s% X7 Z! F  x

    $ z; Z9 {  n3 d' f# _% ]! p1 J( c/ j* X0 o/ F3 R
    8.2求方程根
    1 K! r, l% D* a) s#include- c6 d8 G! z5 s' m7 n7 i/ |
    float x1,x2,disc,p,q;
    8 O4 v! z9 ?+ ogreater_than_zero(a,b)% h5 v5 v& d. B' I8 ^
    float a,b;
    3 t  a! b) H4 m5 E9 c  y. P{: g8 d3 t' k; i1 F0 w
    x1=(-b+sqrt(disc))/(2*a);
    & U1 d4 J& V8 A( ox2=(-b-sqrt(disc))/(2*a);
    7 [" c! `5 P4 b; [}
    ) m' W- x& e( aequal_to_zero(a,b); v$ \$ r& L# |7 C3 M1 m3 Y
    float a,b;* m: d* ]. z: X$ i
    {x1=x2=(-b)/(2*a);}
    9 a4 v' u; M6 u2 n5 \- o2 Jsmaller_than_zero(a,b). O1 u" F8 S: p7 g$ L
    float a,b;) `7 ]* N6 [9 n+ S
    {p=-b/(2*a);
    ; A; [  Z) g- Cq=sqrt(disc)/(2*a);
    * y  U' K0 C! V9 F- S# @}
    - y2 y, g" L5 _2 T* m" ^main()
    % @, p5 M$ i1 `2 S: L  e0 N) w{
    7 ^" ]1 ]* O( Ofloat a,b,c;9 b9 P; C2 \# R5 \0 o8 F
    printf("\n输入方程的系数a,b,c:\n");: L0 e+ H1 m( t: w& ~; q# g' ~* g; m
    scanf("%f,%f,%f",&a,&b,&c);
    8 I: V' b! }; I. a# bprintf("\n 方程是:%5.2f*x*x+%5.2f*x+%5.2f=0\n",a,b,c);1 Y7 j( v3 x: k  d& o1 X
    disc=b*b-4*a*c;9 `% N4 M4 [: b  X8 e: h
    printf("方程的解是:\n");
    " I5 {' @# h/ H& C+ wif(disc>0)
    3 \! ^, \: V2 C$ G{great_than_zero(a,b);
      U4 G% l$ h$ B' \( u2 Mprintf("X1=%5.2f\tX2=%5.2f\n\n",x1,x2);) f7 m6 A! r/ N+ L
    }
    : ^1 H- B3 g& L: i. ielse if(disc==0)8 }) W3 m, |% l# c/ u6 Q
    {
    & ^2 r- S1 }9 o9 z4 rzero(a,b);. M# q# W7 D  V" `% C- H
    printf("X1=%5.2f\tX2=%5.2f\n\n",x1,x2);
    ) P, @0 f4 A2 M }# p9 A0 Y* H" z/ V9 s. Y
    else; D  e' f" o: ~1 @
    {$ W, k! t- u9 C, `, T1 G# D! ^
    small_than_zero(a,b,c);
    0 ]% `* ^6 M( t( F' X; X printf("X1=%5.2f+%5.2fi\tX2=%5.2f-%2.2fi\n",p,q,p,q);# n' `- J: @# V7 \  B- R
    }/ d7 Y+ e8 L  E% Y# q8 W
    }
    * U7 u  ~6 \( A/ z8.3素数$ e  c  w: j, k' B9 x& l
    #include"math.h"; Q" l; s2 R/ ]! c( O& ^
    main(). G; d0 h# \! E( p) j( s4 F- p
    {int number;7 P% ]8 s* l0 K
    scanf("%d",&number);
    % Q4 e" p3 w3 b' D- p8 L7 B, a! a if(prime(number))7 W  @" r6 P8 m: l! ^
       printf("yes");! T2 q" D, ^0 _, J6 q: e) R
    else
    6 l9 a* f' |3 Z2 v   printf("no");8 F, W  N4 u7 ?& [7 o
    }
    2 b# [' U8 d" \% s7 [int prime(number)
    0 v; F3 f9 P+ F2 q* t5 N; Wint number;( u0 v5 \$ n- }9 J; [: ?
    {int flag=1,n;1 G# ]1 U. ~: d# Z
    for(n=2;n   if(number%n==0)$ o& r" K" t* M* g+ V; X; U! u8 e
         flag=0;) K" S, h# ?# l6 A) l8 q
    return(flag);  y- t9 E7 H: i! {/ Y+ {3 X2 S
    }
    - H1 q3 f& J" |& |. l& i2 C8 s. Q+ \: _# O# n% K! I6 W
    - N. t# ?2 ]9 A
    1 `! W! |9 y5 l+ N. U
    8.4
    3 {' `! q8 o: o4 `: x! z) d% M- O#define N 32 p0 x' h" p/ k" ^
    int array[N][N];2 s! ~+ [0 q/ Q5 J! ]5 s
    convert(array)
    1 S& |$ o1 X* n# {  _9 q8 f# Qint array[3][3];
    ; P8 M5 p( b( W& ?. Z( I { int i,j,t;9 a+ I0 s2 ^, O! }9 s
      for(i=0;i for(j=i+1;j { t=array[i][j];
    ' z) p3 U( W8 w2 Q9 b   array[i][j]=array[j][i];' ~- }$ }' ^, l" r
       array[j][i]=t;
    5 n: c5 F: J- [" L7 F3 Y }; `8 A! |5 q# l
    }
    7 y3 `5 b6 K5 Z9 d  ^3 \main()
    : V' |" M# W& y# |3 J, m" z{
    & k. Q+ x2 ?1 I4 O5 o6 K int i,j;
    & c  `. b% A4 b" I' R* }8 E" f$ g7 } printf("输入数组元素:\n");3 T+ w3 I  I. `* z5 E- D2 d2 G* ?+ `
    for(i=0;i for(j=0;j   scanf("%d",&array[i][j];5 m2 x' j% c2 J: s! P( U
    printf("\n数组是:\n");5 }! Z$ `! p9 I6 q  L) i( C
    for(i=0;i { for(j=0;j   printf("%5d",array[i][j]);. W# U) H. G" r
      printf("\n");
    3 e9 S2 k7 O7 V0 Q) m0 Y8 z2 G }. \1 v7 E0 a; K# b; u3 b7 L
    convert(array);. `" C+ f5 u: O
    printf("转置数组是:\n");
    9 v) w' ^2 j7 a- E- G* G for(i=0;i { for(j=0;j   printf("%5d",array[i][j]);; V+ m' x! o% V- F/ D, E
       printf("\n");
    3 U' A0 n7 t7 ~4 K- R2 ` }' I7 g& s  t& Y/ [
    }
    2 V8 U; h, Q. a! i8 R, l, Q  Z! O( Y8 C% e) k
    6 U! A& Z1 n2 n* |

      g; Z4 T/ U. I8.5
    % ~3 Q7 J) p# W; n$ \main(): [" u) |* M. f% t" b  v- k
    {( M/ w: R7 C- Z: k5 L3 H4 {
    char str[100];
    . X& C8 u- e2 ?' _6 Z/ O- n( @" v  printf("输入字符串:\n");
    : x% ^+ O$ i- P% V* W/ N  scanf("%s",str);
      `# O) ~. W9 l: F* P5 \$ C8 z0 H  inverse(str);
    9 `  b1 f" p2 x0 B2 b/ Q  printf("转换后的字符串是: %s\n",str);' B/ {4 z7 `3 d
    }
      w6 [9 L6 q+ o3 K# r. i, ~inverse(str)
    * P  l- w4 B" M$ Y9 i3 q2 lchar str[];' f& N& R$ C5 t% Q( K7 C. z
    {& c1 s. c3 a$ q" H8 X! W
    char t;+ \: V2 C) s0 S, z) K: U0 o0 a
    int i,j;- E2 O1 g' o) Q6 t: E
    for(i=0,j=strlen(str);i {0 Q( u0 X. |* E1 y! J0 q3 q
    t=str[i];
    ! y- i* f) ^/ ~" L7 x7 W( m str[i]=str[i-1];, d0 f' [/ o3 L* ^
    str[i-1]=t;, h3 T4 L9 w) M* s! h& ]5 S" d
    }
    ! D( ~+ [7 W) Y' i3 U! P. ~) ?}: q5 a5 a% L( T  y
    9 h$ O5 t9 A1 o) o/ [( X

    2 d% g1 _3 t) q% K
    " d2 j. C4 a2 s; Z1 B* I- }- _8.6
    * q! x9 H8 ~' U& Uchar concatenate(string1,string2,string);" n1 O5 R2 @* B
    char string1[],string2[],string[];
    . {; ^  v% F: K5 v$ t& c0 k. T, e{' q# Q. B( u/ [
    int i,j;
    5 R9 u- C7 W$ b% D% r+ D. {. Jfor(i=0;string1[i]!='\0';i++)
    ; y. a, S) Q$ P7 s' _: t2 w  string[i]=string1[i];- d! j: L2 K4 T4 g1 i9 y% c
    for(j=0;string2[j]!='\0';j++)9 R2 T6 ?7 ~+ P- E
    string[i+j]=string2[j];' Y# H: b2 Y1 K/ m
    string[i+j]='\0';
    3 p& Z7 i2 X# p& J- n}
    5 H  x) j4 [. Jmain()
    8 n$ v2 P4 Y. f+ z{- R" M5 ]' L* o) N2 `, ~
    char s1[100],s2[100],s[100];
    - ~3 ^$ s8 s8 y6 @+ O printf("\n输入字符串1:\n");0 J3 s* s* E" r& i2 n( B  p" n5 o
    scanf("%s",s1);5 y4 _# }- [9 F- d& h( x8 {( x2 j
    printf("输入字符串2:\n");
    & U2 x- Q; _: W( l, g3 S( a6 B3 z# c scanf("%s",s2);
    3 X! d; z4 j* ~9 t1 r: F4 W5 b1 ^ concatenate(s1,s2,s);
    ' K3 T$ X+ Q) h& p( M, P5 C) o( [ printf("连接后的字符串:%s\n",s);
    9 H8 ]6 k0 I. i  k1 V}6 g. }5 i  T5 E- O: ]: L8 q
    . c. n: L0 v9 I: v

    4 t: K; I: H8 T0 B$ z' b' R8.83 u6 e; V& ?/ S; z
    main()' l3 H. ?% X' Q4 H. e1 u
    {  Y+ x+ d2 O% ^
    char str[80];5 H, g2 C: P, p: x* o
    printf("请输入含有四个数字的字符串:\n");
    % B9 ^0 V' M" r+ Q# f scanf("%s",str);4 z9 O/ U; G/ P; b% Z
    insert(str);
    ; R* f/ d* k2 N% O" b}7 ]% f: a* h, F' Z8 h
    insert(str)
    2 ~9 V5 |& g; G3 M* D3 r$ ^, M   char str[];
    1 s  j7 Y3 O( c1 |{
    6 Z, n# h' z0 I1 j' ] int i;
    + I" R9 S1 {- k, f for(i=strlen(str);i>0;i--)9 |) _; z0 E8 S) m3 q
    { str[2*i]=str[i];
    4 g4 E. P" r1 W9 O4 p' [4 b   str[2*i-1]=' ';( b8 J- o1 J9 E/ F
    }- h/ v% |0 h7 b
    printf("\n 结果是:\n    %s",str);
    $ e# C: y9 `9 Z( U3 m5 y }
    ; _( x9 E( Q& h7 j8 j
    ' G3 @  H2 I, U( a/ a- i1 h$ f/ R! Y* E

    2 [. {! Z; w' e# m) f. K2 \8 s7 D8.9
    * K; T, z3 V6 T9 V#include"math.h"4 N  o  B; t3 o: B3 u/ U2 }" Q# R
    int alph,digit,space,others;
    5 ?0 _7 l" M8 V" m, Imain()1 b0 h4 _) {& K1 |  E
    {char text[80];
    # \0 P0 W8 y( i3 ^ gets(text);  t; g) }1 p& Z- k3 ~, C3 r& W2 t) P
    alph=0,digit=0,space=0,others=0;
    6 D$ C- S7 R: h, O count(text);
    . m; t/ }- P4 q printf("\nalph=%d,digit=%d,space=%d,others=%d\n",alph,digit,space,others);
    6 ?& W$ X3 R" U! u}
    2 ~; B/ D' B/ D5 R% ?2 Gcount(str)& t  I! O. ^- f7 c9 P
    char str[];$ l! i7 u' Z: |! F
    {int i;5 e" [3 ?$ s: ~' d* @6 f- I% z- j
    for(i=0;str[i]!='\0';i++)
    - M3 e; D( b- j: p   if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))9 T$ ?& H, n' P/ Q+ f  \# g
         alph++;
    . N- q6 X/ ~0 ]9 e" H9 r   else if(str[i]>='0'&&str[i]<='9')
    $ \1 o$ Z; f- D! C' v+ u" X# Z     digit++;
    ( y6 E9 V0 c$ [' a   else if(strcmp(str[i],' ')==0)
    ! I# w7 W) A; t( Z+ [+ N" P5 ?     space++;
    3 |( G# H- X) l5 c) }4 q   else
    0 Y! F7 M9 k; b: I8 b. x     others++;
    4 q7 e% j' [* w: r* [}
    " x, y7 ^, X7 w2 ]9 L+ q& X+ N! y' N- u7 y

      s& S% \, G( A( R1 c; O- ?" M8.10; y& m4 h4 f8 A, m
    int alphabetic(c);. W) f* v6 ?6 N+ y8 V% M+ c- ^
    char c;( {3 U* L! s6 k% g
    {
    9 t/ C# K! m* r% ~) f, J  if((c>='a' && c<='z'||(c>='A' && c<='Z'))
    1 d' N5 Z1 G6 Y% E return(1);/ Q, P% b+ e/ Y" q# ?, J( u
      else
    # _9 h( ]) ^" r8 X, @8 h! e8 b return(0);) ^- `4 @' O* `! B5 A$ |
    }
    * Y' `. Q4 q3 O6 ?7 p
    1 F! V& H6 @7 H* W; ]0 iint longest (string)
    % d' U' Y  ~0 c. N2 h' j$ Fchar string[];
    2 E' \0 M6 I2 u) l* @, w{$ \. @, M! O$ b
    int len=0,i,length=0,flag=1,place,point;9 Q% Z6 F! b) Z. q$ H3 \
    for(i=0;i<=strlen(string);i++)- E4 S3 V% X. T! z: D- ^
       if(alphabctic(string[i]))* v: h- I6 k* g3 x* g. m
    if(flag)
    . R9 }6 j1 R( a; x8 w% E0 U- g {
    " \. J$ _( C9 |1 @ point=i;
    5 W4 D- ]: @  O  F5 x/ h flag=0;$ B  h( a5 q5 K( n: i7 I
    }( n# z( r9 D# H% |! [
    else' h0 J  P2 m8 k4 i  G# G( Q
       len++;
    ! d. R/ }8 ]7 n$ E) C5 ^, h3 m else
    ) E* t) J8 p) K3 {1 f. m: D7 C3 }: `8 h { flag=1;
    7 w9 Y" c# o* e0 B  if len>length)
    . a# Y; X" n& z: t  {length=len;3 s4 v6 d9 m. ]% u5 B# x+ E* x
       place=point;
    7 r2 h/ H/ L2 J0 ?. A% E   len=0;3 s0 l/ i) N; b- D, b: V! a9 J
       }2 J( f0 c5 W5 q
    }8 E. M/ j/ f6 n- C9 V4 U2 c
         return(place);. C( x! j  J4 u4 S# k
      }- g9 ?6 y  ?& X9 z* \% c! m( Z
    main()2 @0 _4 ^: d( v% j7 s: C  J. @
    {* N- X" R* w, [3 N7 |3 c! e$ b
    int i;6 b6 t1 h( N; F! P& T: J) V
    char line[100];
    & n9 m, O2 i% T) f1 @printf("输入一行文本\n");0 G! E1 R7 y$ f6 n7 R
    gets(line);* f2 r3 {! n. ]6 H- M, S& E; }# p
    printf("\n最长的单词是:");
    2 d& T: ^# E' z. y# T! jfor(i=longest(line);alphabctic(line[i]);i++)& _3 X5 P1 Z+ n
    printf("%c",line[i];
    7 N! ~9 l$ {& l  e' ]' A- |printf("\n");+ z, C# c! @, Y
    }5 |7 c! ~2 S! C2 g5 m9 I) h
    ! P% Y  f) p8 }

    * ?2 v. O0 ~3 n! P: x
    2 c' T1 f+ B$ t$ Y8.11" }5 c2 t1 R, z" y* l/ {
    #include
    ) p% M% s9 P8 M$ z( C) D8 x2 S, I# N* [  e6 o) X, w! o
    #define N 105 N' Y. v0 c. E
    char str[N];
    " O8 h, ~3 A4 i: Y8 \3 Cmain()1 _: D- |$ a, T7 A
    {
    9 R) a- c2 f% U- C0 f/ A4 W0 Tint i,flag;( L  h0 s& Q) i% @+ ^& ]6 D
    for(flag=1;flag==1;)* d0 A! Y, b% N+ e. B. L/ Z
    {
    : C0 ~0 X1 r, L# y' U. \1 O' h printf("\n输入字符串,长度为10:\n");' i9 i# m: P6 _3 @% ^5 a. c
    scanf("%s",&str);
      O$ p* t1 i, \1 ^0 @ if(strlen(str)>N)$ R6 V( R- A, z+ d
    printf("超过长度,请重输!");
    6 P) {6 F/ O4 q8 { else7 Y+ i5 E* ]8 ]
    flag=0;/ a6 m3 T4 z6 g& Q# x2 V! F
    }; [* H  M3 v( e7 Q! E" D( D) H8 q
    sort(str);
    # ~) U! ]6 w: V* ^" j: O9 cprintf("\n 排序结果:");# e# Z% X/ e7 }: O
    for(i=0;i  printf("%c",str[i]);. M+ l# C9 f7 R; O9 b) W6 v
    }
    2 ]. @( K. R! nsort(str)
    / `* y! p2 L) \char str[N];
    ) U; w- K) U2 k& D7 j# X& b{
    3 ~' [0 Q# u$ r7 s: \1 ]4 L- Rint i,j;  m" F- L- ?& ?
    char t;1 x( e) t1 R- C3 g2 U4 t# f
    for(j=1;j for(i=0;(i  if(str[i]>str[i+1])
    ! o4 U# s% l6 o' r& D  { t=str[i];
    : F8 w. l8 r' n) `& G    str[i]=str[i+1];
    : v  S) t9 }8 i3 X, d- J0 u    str[i+1]=t;
    8 c7 {, P* }+ g* R+ j$ j1 w/ _" x* I  }" J4 Z9 O' o- ?' ?" n% y! h& j
    }( }' {% ?  [: I/ g
    8.12
    . P' [' ^& i5 M) ]6 K#include3 D9 A, Q5 u0 P4 f3 @2 {
    #include1 v3 U, D% k3 `; b6 S- Y
    float solut(a,b,c,d)" S  W6 I' p% d" P; M, T
    float a,b,c,d;* D( M" C4 f3 x3 {5 x. ]$ S
    {float x=1,x0,f,f1;; F1 X! A4 H$ l9 K$ [
    do
    ( Y) j7 I4 h. Y6 a7 I* u" f   {x0=x;. {% c4 [/ g9 n  G2 f
        f=((a*x0+b)*x0+c)*x0+d;3 L; o+ H, `4 C3 G- D3 F3 Y
        f1=(3*a*x0+2*b)*x0+c;0 n$ h& E/ c( j
        x=x0-f/f1;
    9 y" v- q2 W% d! c' n    }7 L' P+ X& t( \- s, U- D. K. G% g  o  Y
    while(fabs(x-x0)>=1e-5);
    ! l1 `- k& a! f; w8 e" ^8 | return(x);1 @; n- J, \8 P1 y
    }
      }" f/ [' O! \* J4 V" Rmain()' w5 Z! J- t) M+ k4 W
    {float a,b,c,d;7 U' g( n) y) Y. e! w+ Q& N3 X; X+ A
    scanf("%f,%f,%f,%f",&a,&b,&c,&d);6 [) A/ ]# R: s
    printf("x=%10.7f\n",solut(a,b,c,d));; F+ |3 V2 z% _+ E, q- y7 V
    }
    , G; H" W5 T* H4 H& t/ i, e( [( |8.13
    7 Z# R, ~) i$ ?/ L5 D#include% A! y* z7 H9 z. V7 B/ O
    main()9 n7 p7 z+ C; h
    {int x,n;
    / J3 ~% g2 T+ j float p();
    0 ?: t! U# G0 \2 R) \ scanf("%d,%d",&n,&x);
    $ p" `3 k# H5 K" P4 R printf("P%d(%d)=%10.2f\n",n,x,p(n,x));: I1 j3 g/ W& d& |2 ^3 C2 D8 ]
    }
    8 A) S9 i5 u) ~3 b% `( S0 Yfloat p(tn,tx)) R% G4 ]: ]1 c8 C- w
    int tn,tx;
    " |* {. c& I! _- T' _5 H; t( O{if(tn==0)
    - G0 C% n9 M* E$ B# _/ O& @   return(1);
    ! b5 Y1 w; n6 y% k  Y' [3 R else if(tn==1)4 K  S+ Q0 _8 Y; {, k
       return(tx);+ s! D: |+ m1 ~! \' h
    else
    ! d% v8 [) r' w2 e; H7 n   return(((2*tn-1)*tx*p((tn-1),tx)-(tn-1)*p((tn-2),tx))/tn);
    ( E7 ?1 E# f. m- V9 {3 T}
    ( Z- y3 f# y/ V8.14
    3 x- K5 A9 M5 g9 L( O! f7 g#include "stdio.h"
    & L( M8 [  P) i+ G. F#define N 10
    , ~; w) ]/ W* T/ ?#define M 5
    6 O, G# X5 K* }8 {' nfloat score[N][M];, e: a  ]. {$ N, D3 W( X8 B
    float a_stu[N],a_cor[M];
    2 ]+ F8 g; [! c- ?/ o( umain()- N9 f7 z, b: I
    {int i,j,r,c;
    6 Q, w3 e" z3 a* I float h;; U) [5 W+ |. f6 G2 j# Y
    float s_diff();- M' W5 ]# ?6 H( ~
    float highest();- B; I; ~) {* a& _6 n! P" `
    r=0;
    : p8 u5 M( q- Y- `; g& | c=1;
    + ^, _7 r8 \) |7 w4 X6 Z( W input_stu();  _: Q6 c( Y/ d4 n% O, f. }
    avr_stu();
    , z1 Y% N. e# s/ C3 M2 E avr_cor();# n) W$ K$ R) W4 v4 O
    printf("\n  number  class  1  2  3  4  5  avr");, N- r/ C  r! ^4 S( A5 a+ I2 F
    for(i=0;i   {printf("\nNO%2d",i+1);
    9 a6 X; r5 X) |/ Z: W) o    for(j=0;j      printf("%8.2f",score[i][j]);9 m* c% m: u8 a/ p
        printf("%8.2f",a_stu[i]);: n: j. P1 _+ v2 G
        }" ?; Z+ c  Z5 Y; O6 E
    printf("\nclassavr");
    6 y3 x+ q" j* G( e, p  V2 A for(j=0;j   printf("%8.2f",a_cor[j]);
    , B& O0 e0 A2 J. [  r7 L' F h=highest(&r,&c);1 d  y& u( T1 r" A
    printf("\n\n%8.2f    %d    %d\n",h,r,c);" _# z/ ~7 E5 U. h
    printf("\n   %8.2f\n",s_diff());) B1 _! T  W$ Z& S8 [. V  {: p& y
    }
    ( R/ j# K! t6 o9 z2 Rinput_stu()4 M; _4 e" h. n. {; h7 Y0 n
    {int i,j;% b$ h! w9 r) Q1 |
    float x;2 l* b6 c, i9 \# A! w4 `
    for(i=0;i   {for(j=0;j      {scanf("%f",&x);' O7 |* t. ^' d7 C" A' }! X: V
           score[i][j]=x;
    ) ~! `; e* `! D! o      }
    * K. d6 H  ?- Y; `4 t    }
    " ?! l: G- O: ]8 h7 U9 L}2 N" ~: z0 _- A+ O! A2 e1 ?7 `2 g
    avr_stu()* B2 N: {; C! A: A5 D/ k8 P
    {int i,j;2 h' Z; M6 \. ^/ ^, J
    float s;, r: Q! {$ M* B$ V4 u5 _6 p
    for(i=0;i   {for(j=0,s=0;j      s+=score[i][j];  e6 p5 [# h; `! P# I$ q
        a_stu[i]=s/5.0;
    ) \- @, o- M5 H   }
    + {+ Y; s5 R7 w0 e8 `3 G9 x3 N' {}
    / L2 J& t- c( p) g  K5 ravr_cor()
    ( }/ ]( e% H+ g. ~' e9 n{int i,j;
    : `" }; f6 J3 v  i. k float s;
    5 \6 ]. `: e+ D' p' E for(j=0;j   {for(i=0,s=0;i      s+=score[i][j];5 v4 e% I( b/ `" A
        a_cor[j]=s/(float)N;
      r# B4 W( O+ f5 Z0 o$ L   }
    / H  G/ @% `  N9 Z+ m0 N! r- e}+ u2 Z- V! y2 g# d
    float highest(r,c)
    + i  K2 i3 D  B; E! Pint *r,*c;
    # h6 T6 t" [4 E+ i: Q  R; d{float high;
    ; i! O6 r( T9 X( q, Y4 O; b int i,j;/ \8 K' }5 l! @. o7 [
    high=score[0][0];3 U0 }& {8 s  X- l6 r* I
    for(i=0;i   for(j=0;j     if(score[i][j]>high). R9 F6 K( g" f8 G
           {high=score[i][j];. X- @& E* d2 S
            *r=i+1;- u. ^8 F. D9 q- ^" B8 i
            *c=j+1;5 Z! `5 i, Y9 A' @
            }
    ; r5 d4 {/ D/ a3 A% ?$ Y return(high);
    4 @" n1 D6 x" o; u' _4 @}
    " W0 w: i# t$ D" Y' k, _# b# ofloat s_diff()
    . e) T$ T6 G. u. F0 r' w{int i,j;
    / |8 @5 N' _8 [0 { float sumx=0.0,sumxn=0.0;
    $ ?0 U  i0 k& ?( X% D) P for(i=0;i   {sumx+=a_stu[i]*a_stu[i];& C, a& i* Y5 [0 N% w" X/ m
        sumxn+=a_stu[i];! F; N, d7 U5 E- }: [
       }# W. j# d, v1 j: K  [( Y
    return(sumx/N-(sumxn/N)*(sumxn/N));( [& e. m% ], x* {
    }
    8 h+ t- P* a  P- |8.15
    + L  O* W+ N( b) O9 M5 @#include
    % N3 j7 Y# ]- _0 T$ q/ G#define N 10
    " J3 z) y) K& P. Ivoid input_e(num,name)
    - R5 P: l, M0 U: x5 rint num[];
    , J7 U" ~7 `  I2 cchar name[N][8];8 s1 d* N% k. O: f; `, H4 M
    {int i;* m- L+ W2 F; ~; \9 u8 h
    for(i=0;i   {scanf("%d",&num[i]);
    $ |) y$ t, G/ Q* p3 X+ K/ T    gets(name[i]);
    6 @+ x/ e2 j9 Y   }3 X' B( v# ?1 y5 S( v
    }
    + n4 v4 C3 v& b3 r3 ]# Z9 ?void sort(num,name)5 t) G) v! K* [9 O4 q6 v/ j
    int num[];/ D7 y: o0 f- w( |
    char name[N][8];
    4 r0 O; l9 i, r{int i,j,min,temp1;
    / J4 }# J9 W) v4 B; I- I char temp2[8];+ q, T8 A- [& n$ y) m: q
    for(i=0;i   {min=i;! Q8 s) o- Q, S: v. v
        for(j=i;j      if(num[min]>num[j])min=j;. L8 ^/ S. j3 l
        temp1=num[i];
    7 ~5 {/ D) F* p* _2 H1 A    num[i]=num[min];
    2 x8 o( w/ T) X* F/ v& L    num[min]=temp1;
    ; m' e& ?/ X  Y4 j4 l  O    strcpy(temp2,name[i]);
    2 t3 a# ~) E% f+ m    strcpy(name[i],name[min]);
    + U  j( M' E! z  m  c# S+ D    strcpy(name[min],temp2);$ p$ [, S) S) z3 Y2 E" i' S: l9 L+ V
       }% n7 l+ T3 j# e5 d2 o
    for(i=0;i   printf("\n%5d%10s",num[i],name[i]);2 J1 y! d, t; u5 K5 U
    }
      q6 O% x3 P0 c) T; R/ R7 [1 dvoid search(n,num,name)5 k. V% g/ C* Z# M7 F
    int n,num[];
    0 O, L# f5 @' l# k& lchar name[N][8];! x5 Q6 T( U: V, p5 I
    {int top,bott,min,loca;/ q# D; F$ p8 X7 m4 M) ~$ e" R
    loca=0;+ c8 u7 s3 r2 r8 [- q7 _
    top=0;! z$ P$ R# u  ?1 K+ G) B9 t
    bott=N-1;# ^0 g1 v. ?; K+ a1 k+ |* n
    if((nnum[N-1]))
    8 a: l3 L. E9 W: f   loca=-1;2 S3 w! J9 |, X0 l- \- T$ _
    while((loca==0)&&(top<=bott))
    1 N% G9 R0 f  {6 ?  B' t( w   {min=(bott+top)/2;
    0 ]9 S" o+ S* d- ~  a4 d    if(n==num[min])
    . j4 W: L: G: F% }3 l$ D      {loca=min;
    # t  ?( n: ~# F8 ]2 R0 m: }       printf("number=%d,name=%s\n",n,name[loca]);# j+ }; D6 G: K4 y( q
          }
    # a7 X* k5 z4 G* \- e  _; v    else if(n      bott=min-1;; ^* i7 }6 D# g/ Y( T8 o. R
        else; o, P" [! b7 ?# A0 j8 z$ M7 e8 X
          top=min+1;
    7 q) Y( R0 o+ l, d  x+ u. A: Y    }
    / O3 t2 Y0 L4 f; h) O if(loca==0||loca==-1)
    2 `: i" {5 @1 {" Z5 |   printf("number=%d is not in table\n",n);
    $ ~/ s% j6 v0 K}
    7 E8 I1 v3 t! d9 w& [6 H0 S! vmain()
    + W9 b! z' t  @6 }1 d{int num[N],number,flag,c,n;
    7 _4 c2 Z0 X3 D9 G$ H char name[N][8];
    ) s5 ~4 A1 M  ~; j% ?; K% w input_e(num,name);
    7 C( G* m; D- r/ e: Q, }6 y! B8 v sort(num,name);) d& {( R3 [! U8 B9 t
    for(flag=1;flag;)4 M, \3 p: u- h- V2 O  p  _/ I
       {scanf("%d",&number);
    1 _* v5 _  h+ a0 Z% u    search(number,num,name);" E7 d+ Z& \- q6 d! z2 B
        printf("continue?Y/N!");3 k1 M+ x% W% H1 L
        c=getchar();
    0 T) [/ ^" Y4 A! e9 W    if(c=='N'||c=='n')
    8 M4 y( [! x7 ]8 M2 L& ~' Y      flag=0;
    3 N. ~3 `1 J3 o) o4 A. ?6 n   }
    . H+ r; ?9 _4 u9 ^+ K$ [}" _7 e' m* r) K, G5 V7 Z

    ) ~" [5 t# {/ p0 ]! ~8.16
    5 J1 _$ I- Q8 y#include: @! e$ H  m4 k) k# n5 }( d
    #define MAX 1000! I6 {' Y! A+ {# }# s
    main()
    9 t4 M) s/ H. C' O3 t$ }$ i{ int c,i,flag,flag1;) m, A/ H* P: z7 I1 d2 H1 m
      char t[MAX];7 G7 z# D5 E3 p) t9 ^
    i=0;
    ) H8 d2 T0 {) j0 p flag=0;' ]0 v5 W9 k/ Z% m' z+ D7 ]
    flag1=1;
    ' p9 y1 i) h( q2 J9 P printf("\n输入十六进制数:");
    , X* q# ?+ m& p# X  ] while((c=getchar())!='\0'&&i { if c>='0' && c<='9'||c>='a'&&c<='f'||c>='A'&&c<='F')! \' r) Q1 u7 ?6 t2 v& R
       {flag=1;  c9 d: y* f/ R6 E. k$ @- \# _. y3 s! m
        t[i++]=c;9 }6 b  O( o5 c) j' e- L' {6 f
       }4 Q0 g% h) ~! b1 {' g7 d0 h
       else if(flag)
    7 O& c2 H0 ?+ k1 m {: i- ~: q  W) E7 o; b) w
    t[i]='\0';
    - D, ]  M' H8 t2 m1 v4 E printf("\n 十进制数%d\n",htoi(t));
    & u0 o  e% A1 v9 t, g3 K printf("继续吗?");
    4 r5 D. U5 u$ @. U/ c; B8 d c=getchar();/ B/ D2 s  o! c' h& O
    if(c=='N'||c=='n'). p$ n9 T. z- L% z) y/ y
      flag1=0;
    8 a7 _( t% D% g* C else) |* M% Z+ N9 r8 a
    {flag=0;- o$ P- \( b' |6 A' x
      i=0;" J6 ]5 m; }* K% Q5 ?
      printf("\n 输入十六进制数:");: @( S  |7 w; ~# n/ \
    }' c( S4 x7 a7 d" Z
    }1 R/ _7 B3 m9 _; N
    }7 T% ~& f# g7 E2 w) |3 }1 Q
    }% J* Q* b8 B- @6 d% e. g. N
    htoi(s)5 ~2 G  ]. c; k% o8 `( [- i5 _
    char s[];
    # E* c: [+ c5 K$ p0 N! m: C6 ]{ int i,n;
    8 \2 p/ G! Q: C+ Q1 u0 R  n=0;
    $ {0 j* x9 T+ S9 K/ y" w1 O- f: n  for(i=0;s[i]!='\0';i++)
      x+ b) F6 X; F  {if(s[i]>='0'&&s[i]<='9')
    0 |1 f) O8 e6 Y8 C' T* W& u  V5 d n=n*16+s[i]-'0';
    * k6 m* _4 M- b" @5 C/ Z   if(s[i]>='a'&&s[i]<='f')$ `" W* t0 _% Z
    n=n*16+s[i]-'a'+10;# y8 B  Y) P2 F
       if(s[i]>='A'&&s[i]<='F')
    ) a' d6 A! _. C n=n*16+s[i]-'A'+10;
    % y. w. s( O; V2 g4 O, z$ b$ l* \1 ]   }
    8 G4 ]- u8 f9 Z8 Q& m1 `( f   return(n);$ l" @% U* W' n( n8 |! w, n
    }$ Y& ^" p( U- p2 f* W) E

    * @! ?) z' R" z( i7 L* N* b
    % ~8 ^6 Y- q/ V+ n# [! R5 P$ `9 K0 y2 ?7 B; l, {: T! u
    8.17
    ; X; Z. ?+ T2 N6 c2 i, R* x; b#include! B/ t) C% e5 B
    void counvert(n)' [- Z) _5 n2 b5 }: J2 g
    int n;+ W, }* r$ N& L8 Y5 F/ V5 `/ Z
    { int i;1 [: d$ H3 D3 A  Y, _* i$ k  M) V
    if((i=n/10)!=0)
    % [  z, M5 W. S3 g. S( a# j7 o, M  convert(i);& e! m3 R0 C2 u$ u3 _
    putchar(n%10+'0');
    5 J- s' U8 {  p; c}
    , G9 w( Z3 P0 Y! a' X( nmain()% Q+ Y+ A4 b/ u. y3 B  g5 K# z
    { int number;$ T7 ?5 ]' {& v1 X3 I. Q
      printf("\n 输入整数:");. d$ W7 @! |6 A( k/ B9 m* b& i% A! z
      scanf("%d",&number);
    # x2 Z4 E5 {/ }3 u4 I0 f  printf("\n 输出是: ");1 b+ t. g: q/ X0 L+ F3 C7 X. }9 J
      if(number<0)
    7 W( k& K5 L0 _, z  { putchar('-');0 y- Q# U# J, p6 {5 b) v
        number=-number;
      s4 r7 m. e, K( a3 l  }" w! Q) I9 ~6 F$ G# n4 O
    convert(number);
    ; `0 w7 I/ w& h  U}+ @- n2 F0 F; o& f- t# T! F

    2 q3 ?3 a6 _, B. G8 _: U. x- n/ L6 y2 u8 n( U$ Q) }
    / m8 e$ [1 r; Z
    8.18
    - ~# |& x2 d5 j9 x+ e7 Z+ O; W' gmain()6 j- ?8 j) c. i8 ~
    {
      j( j: B& D7 f5 }# u  int year,month,day;
    7 E$ K  s+ }! O4 S  int days;9 \. J4 H7 A7 H
      printf("\n 请输入日期(年,月,日)\n");
    # r& `. m. A; H  scanf("%d,%d,%d",&year,&month,&day);& Z) l( K- w* z7 J) i2 @+ ?
      printf("\n %d年%d月%d日",year,month,day);' d' o- G0 b# m) `% ]7 ~3 S5 B& R
      days=sum_day(month,day);
    + ], Y, R) K- d! }  if(leap(year)&&month>=3)
    3 x6 p% s7 A- }+ N7 L    days=days+1;0 D! W' }. ~8 p8 a  H9 C
      printf("是该年的%d天.\n",days);  R% ^& n- Q' B2 L+ A
    }
    ! F; {! m( G. G, y static int day_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}' o$ O8 \9 a7 h' n9 M5 p3 V$ m) u
    int(sum_day(month,day)' z+ A8 E# P! q) k- M& q# t0 k
    int month,day;1 ?8 K) {7 @6 o% J  n
      {, W5 ?* I* w0 F% f' a' U- [
      int i;
    / B  b0 M" P5 m0 }  for(i=1;i    day+=day_tab[i];
    % [- j2 N8 c' I  F  return(day);9 O- e, N; S% l* \+ B3 G
      }0 }0 t' H: l0 J" S% S! m& G' J
    int leap(year)0 w1 ?6 U9 t) M! b% U/ k2 x
    int year;) u+ S. |  L. s0 w
        {5 L7 E  Q" H0 W& O: }( y
       int leap;: h' w- z( s- O% c1 c1 G/ o
       leap=year%4==0&&year%100!=0||year%400==0;, Z* G' D6 u! ^3 [5 N8 s2 @  Q
       return(leap);
    ; Z- K/ P) x% `/ g, c   }( c# ^5 u) r' X
    第九章 编译预处理& k6 c' f  G8 A5 R
    9.1( r' }* w6 m6 Y, p9 @
    #define SWAP(a,b) t=b;b=a;a=t# c2 Y4 ^* i! Z, l: U2 K
    main()
    3 u4 E$ U& E- S, `8 c. ]3 L{1 q7 ?# N5 X# A. ?6 m2 ?/ e
    int a,b,t;
    3 P; D5 p3 m$ N7 \3 m2 h3 \printf("请输入两个整数 a,b:");
    4 E6 q+ ]2 G3 |7 W2 Yscanf("%d,%d",&a,&b);
    8 N) C8 |  a8 X7 k* W& vSWAP(a,b);8 e! c% a, P# o8 Y. v% d4 x& `
    printf("交换结果为:a=%d,b=%d\n",a,b);0 \* {  v8 i- y" P: R4 I  J6 z
    } ! \1 d, ?# Q2 f! i, H: ^
    : B% t+ e/ }" u/ H1 c# g
    % s9 }. e$ _$ G, v
    9.26 a" E7 c) q1 z' R
    #define SURPLUS(a,b) ((a)%(b))
    - x" M6 q$ F! j- \- }4 emain()
    0 U( {7 r( k: |1 h0 S) e9 ?& e2 o( P6 P {/ @. M4 N# r5 l  y
    int a,b;- C2 n3 Z8 v. n, w
    printf(" 请输入两个整数 a,b:");
    . O4 t! p4 Q" D8 x scanf("%d,%d",&a,&b);
    1 `! E0 G3 v$ z4 W% K0 [" X8 b  Bprintf("a,b相除的余数为:%d\n",SURPLUS(a,b));
    . D6 Y1 z1 s% M0 p& \* W2 H }  Q6 @* ~9 R; l: F4 s7 @
    . m2 G% }( ^. y' e" x1 h! |, x$ E
    $ G3 G  R' K0 H) o2 W8 Z% M# h
    9.3
    : |! W& X5 S/ w0 O/ f0 y#include
    0 w! ^2 d- d  W0 U: W8 u  q#defin S(a,b,c) ((a+b+c)/2)
    . p5 h, ~* R  t* M; ]#define AREA(a,b,c) (sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(s(a,b,c)-/ B1 t% s4 E  s) p7 R: D: [
    c)))
    * ^* ]% a' z9 m8 k( i/ U& gmain()" U" E0 U; @3 m4 k
    {+ f  M& N, g! ], Q% e/ X6 ]
    float a,b,c;
    3 q3 c& _3 |+ s  printf("请输入三角形的三条边:");) w4 x4 c3 v& V! q- N' F9 Q
      scanf("%f,%f,%f",&a,&b,&c);5 Z. c& _  V1 U2 v: J
      if(a+b>c && a+c>b && b+c>a)# i4 U7 O# |4 b/ P- [% G' }" l
       printf("其面积为:%8.2f.\n",AREA(a,b,c));7 h- q, ^" d/ S& `( E
      else8 |1 k! f, l$ J/ z1 R
       printf("不能构成三角形!");9 m# G- u/ r( D
    }
    0 H5 F' H3 q9 R. R. o0 u  ?- a) e' g. c/ X
    0 E, N7 C- I" h* {7 A

    / Y' V  r# S4 T, w  n9 V- r9.4
    # b; i+ a" g* t, S5 c) B' J# r7 f! N#define LEAP_YEAR(y) (y%4==0) && (y%100!=0)||(y%400==0)/ z1 f' Z2 h, c. W/ }3 J# D) B
    main()! k7 N$ b, B( h8 x
    {
    $ c3 q- y6 N8 _( M5 [! b! s int year;
    + \" x- ?8 ]1 [( _; g printf("\n请输入某一年:");0 t+ W$ r& P* Y7 h+ g1 R
    scanf("%d",&year);
    , j. a5 P- b; Q* Z, F8 n0 C if(LEAP_YEAR(year))
    + b: @7 e" H5 \9 g  printf("%d  是闰年.\n",year);
    / I: x& f) ^5 D  X' K' | else
    3 K  C  y" o3 B" Y/ L. y6 x  printf("%d  不是闰年.\n",year);
    6 i0 n0 Z3 `/ M: Q' K }& M! s- S  W  a. v! o5 _

    - t7 n( R) }; i7 Q) j* f. Y. I" P) _  d* V
    9 I+ a9 t+ w/ |+ l. {
    9.5解:展开后:
    # v7 k* f% G& Xprintf("&#118alue=%format\t",x);
    5 {6 a; [( x+ M7 b; wprintf("&#118alue=%format\t",x);putchar('\n');
    ! s9 }: l% ]4 C8 E8 gprintf("&#118alue=%format\t");printf("&#118alue=%format\t",x2);putchar('\n');2 {" t- N. k& k) C! m
    输出结果:/ H8 w. [0 [! x. m
    &#118alue=5.000000ormat &#118alue=5.000000ormat0 ^. h' w7 x) Y' u+ G. [% y
    &#118alue=3.000000ormat &#118alue=8.000000ormat' I# C6 e8 V+ w$ c) J
    , o3 Y  l. d/ }$ u8 J
    7 b, z2 l( c- z* p" W- P
    9.8# h# ~8 ~; _. O6 k, r
    main()
    , b# b) g' W: c' k  {
    ! U) ~, g% l- x8 h" R' A  int a,b,c;% [, W( z( f! B+ m- q6 r! Q
      printf("请输入三个整数:");
    : v0 A) \* C9 }8 ?- y6 U  scanf("%d,%d,%d",&a,&b,&c);+ R5 I1 L2 ?  u4 F' [4 h/ R+ P0 _) b
      printf("三个之中最大值为:%d\n",max(a,b,c));2 U; _: i% L# I2 _8 \
      }
    ! J! l: u( G. {) d9 j' E max(x,y,z)0 S3 N$ ?8 g# b9 r6 }
    int x,y,z;# t. @' H9 D4 e: o
       {
    # v/ m7 p! Z6 }! c: v2 r   int t;- F- D# g3 ~# Z  i1 j7 ^" r
       t=(x>y? x:y);6 k; r  Q9 @0 ]5 s, D, r0 J
       return(t>z? t:z);
    8 o# X% W6 q9 N6 E" i7 v   }
    3 D" D2 j) p* R
    5 f9 z  I4 a8 d/ h8 T) i2 v0 F5 c4 s+ n& O; e
    7 e2 h3 e. Y% j1 d$ z  ]" @# @
    9.10' Z  S! R6 T1 b# h: D% Q
    #include8 C7 ?- h* z# t5 b7 A
    #define MAX 80
    & Y3 A) o$ v# L% V5 c5 d#define CHANGE 1$ l$ r9 L) W' S. j! N' c& `
    main()& F* s. O7 q) j8 _" i5 u+ r$ u
    {
    % k0 D0 t. e; G) Q3 U# I char str[MAX];) W& d4 N5 L$ e. P$ N1 g- b8 G
    int i;
    . [. x* u8 D- h. w printf("请输入文本行:\n");
    # z% B1 n9 A4 E+ s1 ^: S scanf("%s",str);
    $ f- d* \" v+ t" g3 ?; y2 j #if(CHANGE)
    + K' G  H' _! e" O* c2 L3 b1 n  {
    4 h- `' E+ l8 a# e" q  for (i=0;i  {
    7 j# H: i4 h, r2 ~& ]/ B- y  if(str[i]!='\0'
    9 Z/ ?9 v2 Z# d; B& x* r4 {: B* A' P   if(str[i]>='a' && str[i]<'z' || str[i]>='A'&&str[i]<'Z')# [9 j! F. a2 c. S( Q' G
        str[i]+=1;1 N3 C& N$ T) ^& H; r
       else if(str[i]=='z' || str[i]=='Z')
    & T" }. w' F$ `& [3 x/ {5 W. Q" N    str[i]-=25;2 B. v. M$ T$ d( c
      }
    - }" N+ I1 l# h6 K}7 P  h" J2 R, M  L1 c+ w  t
    #endif
    ; g2 o  `) E' m2 e: {& `' w. Xprintf("输出电码为:\n%s",str);
    9 y, P6 b& f" ~6 n8 @8 Y}
    3 G. F9 o# Q5 q. \第十章  指针4 h/ w! [. h+ \2 p
    10.16 ~' b" h+ \( `, @; {& ]
    main()
    3 u: v, u+ }" R9 w& E/ C2 _& Y{int n1,n2,n3;6 _! K# ~& V* W# X7 O
    int *p1,*p2,*p3;
    7 K( c) _7 F$ H5 `" W1 P- I+ k scanf("%d,%d,%d",&n1,&n2,&n3);
    2 e. ~7 E8 c8 v8 ]1 t& {" b9 L p1=&n1;
    ( H! C3 C  F2 d6 | p2=&n2;# u; E3 r  t- {4 [! e+ s
    p3=&n3;# Q4 \8 S1 R7 U( l$ C# B
    if(n1>n2)swap(p1,p2);# k: H+ ]! I) t" |
    if(n1>n3)swap(p1,p3);
    5 _5 n0 A9 H( v1 r# o4 C# ^ if(n2>n3)swap(p2,p3);4 s7 C/ x/ i- B
    printf("%d,%d,%d\n",n1,n2,n3);$ f6 M' J8 O0 ~' |
    }
    ' u5 y4 D% e9 @; Z7 D+ Kswap(p1,p2)9 r: Q/ P8 r- I
    int *p1,*p2;2 Z) Q2 C$ B; Z/ S# T: H2 H" \
    {int p;
    2 ?2 v/ l5 Z8 {( G! ?9 _1 A5 r p=*p1;*p1=*p2;*p2=p;
    - J  N: Z$ Z9 g8 j$ r/ O}# q, S* b, D( n' g" a7 Z. J- y) K7 Z
    10.2
    * c- d7 k" Y4 ^# h; Z$ c; Bmain()
    - g2 U4 i0 b0 D3 X0 g- l3 q{char *str1[20],*str2[20],*str3[20];6 g; t( W# J6 d) V0 p$ Z6 K
    char swap();
    3 I4 c" w3 q* T4 L, n scanf("%s",str1);! o4 z3 V# j( n4 H/ c
    scanf("%s",str2);& t2 n3 N9 A3 ^  ^: G0 j! \
    scanf("%s",str3);4 T3 n* O( ]1 F; a. y- W
    if(strcmp(str1,str2)>0)swap(str1,str2);
    $ J# n1 E/ T6 O- z6 F. f5 ?3 r2 J if(strcmp(str1,str3)>0)swap(str1,str3);
    % `  b- D+ [' \ if(strcmp(str2,str3)>0)swap(str2,str3);9 D9 O' z$ R& s) M0 k
    printf("%s\n%s\n%s\n",str1,str2,str3);" s, ]0 l: A# i$ J4 e
    }) f6 E% H2 q, y0 M1 O! u
    char swap(p1,p2)
    5 j/ u! l% |3 q5 e+ x& Mchar *p1,*p2;* V: `/ ]" p: Q! W
    {char *p[20];; K: C2 J$ W7 ^) B/ U9 j3 G, j
    strcpy(p,p1);, D' x1 M- `$ y5 s9 L+ B
    strcpy(p1,p2);5 U5 K+ m0 t4 _) \' q
    strcpy(p2,p);0 T4 m2 c7 ?; ~( D7 z7 {" f
    }+ g  w7 d$ n7 @9 t7 r- Q2 T7 O
    10.3, y  z7 ?% C8 |8 o
    main()8 H0 W4 }# p; \% K' P7 T- J8 G5 W
    {int number[10];' w) k8 p4 e6 o' f* S8 [
    input(number);, r9 x, L: g- l8 \, I7 \3 w
    max_min_&#118alue(number);
    : k7 d/ k" O% R9 H) ~. T output(number);' y5 h# W. P- a5 v/ a$ o; U
    }
    - |% O! ]. W5 `/ G, f* p- z( R3 Kinput(number)4 R" {1 Q8 V$ O
    int number[10];
    * y' b9 G/ @4 u& A; T{int i;- ]( P0 |, o. `
    for(i=0;i<10;i++)) h3 U; m& r$ ]3 m& [$ B
       scanf("%d",&number[i]);
    " X6 k" }0 \# V- `}0 h* V( R- t+ d1 b3 S. T- A( H
    max_min_&#118alue(number)
    ( D, [. z  D" {) E9 M( nint number[10];
    7 W7 O; A# y& @3 ~4 m% v* o{int *max,*min;5 R' _3 W" `7 [5 a# M0 y" @  f9 G1 l
    int *p,*end;; Y' W8 T; L% U- k1 f$ j# m
    end=number+10;$ W3 T) }9 J4 j) {  ?2 l! F: \) h
    max=min=number;
    1 [* M0 ?8 I% h3 j1 j9 } for(p=number+1;p   if(*p>*max)max=p;
    - D' O: A9 G; u% w8 m) c   else if(*p<*min)min=p;. H+ l* x! p, J; |& y; J( ]
    *p=number[0];
    " W) X5 ]* z6 p' `3 ~, M% \ number[0]=*min;+ D: q( |( M/ ?; @& B
    *min=*p;
    : r6 M: t. D; L9 c2 @ *p=number[9];: u/ x* c0 V0 C" ~6 ~: C
    number[9]=*max;  t6 f# w9 `# O& f
    *max=*p;7 E; O7 ?+ v4 h  L: ~% G8 b0 D
    return;/ b% x+ d4 D! i
    }
    4 H  A# J$ g& t! J8 noutput(number); ~# |4 b, ]  N: Q
    int number[10];2 u: B/ B; h) {; O1 g1 U
    {int *p;$ N" E+ c* S% p  C, O: v8 h
    for(p=number;p   printf("%d,",*p);4 F- d) G( @8 l; e1 U+ n
    printf("%d\n",*p);
    ! \. F  S: U, P/ f; }3 g' K6 o2 y}* ^& }1 p7 r* |+ n' w3 ^4 d- P
    10.4
    $ z+ N3 y7 k) @; L9 j" |) d+ nmain()% _& e/ g% ]& t4 Z& Z
    {int number[20],n,m,i;
    0 ]- ?0 [$ c  F$ } scanf("%d",&n);
    $ s4 e. t4 E8 l: }( J; C- m) y scanf("%d",&m);, T; j% X" y6 V# o
    for(i=0;i   scanf("%d",&number[i]);* o. \3 G; ]! R
    move(number,n,m);; m! Z+ |2 A+ y8 C- D' S6 l6 L
    for(i=0;i   printf("%8d",number[i]);2 h' T$ r: K! r( s  G+ h1 X* ?
    }, a1 q  Q8 I7 @
    move(array,n,m)5 P/ l; S  X3 A* `
    int array[20],n,m;. L" R: x9 o( d. D- D1 E
    {int *p,end;9 p( ^4 \% p6 f8 W
    end=*(array+n-1);% b  t  l2 i1 H1 [+ Q- H
    for(p=array+n-1;p>array;p--)
    * Z. e$ M& M( |" o" R1 F! h   *p=*(p-1);1 L( i$ J( `' f; I6 E5 d
    *array=end;% Q$ s% _3 ~! d1 @) }: ?# k
    m--;4 i/ W+ v) |% \+ J1 i  k+ r4 x; T
    if(m>0)move(array,n,m);8 P. i5 \* U8 {% M2 o5 V
    }/ D: c, @2 D; E9 a8 ]
    10.5
    3 g$ q9 f' ~9 [( N' ]3 Z: V7 x#define nmax 50% o1 `$ t( O9 d) V0 n5 i
    main()
    ' R# s, W+ W4 q- w3 r. _7 G{int i,k,m,n,num[nmax],*p;& e# k  l& i8 e3 M
    scanf("%d",&n);
    * P5 Z) O" G& M) o& `8 f/ K p=num;
    ! x# f7 X1 h( u- r) ]( p2 @$ e for(i=0;i   *(p+i)=i+1;. B8 k- A8 f$ k  d
    i=k=m=0;0 ~. l' S$ v$ P+ v0 F
    while(m   {if(*(p+i)!=0)k++;
    + t  |$ \+ }$ }& U) t    if(k==3)' l5 m1 n  D2 ]2 z- I; I0 r
          {*(p+i)=0;) Q; A( m$ A4 g% u  A9 w6 c3 y+ Z
           k=0;
    / K, [( ~4 j, M8 P       m++;
    : F" _# u- T1 p7 ]" a; I9 H0 p# @      }
    $ A# ~" N2 I: Z2 A- A. T  @( u) ~% z    i++;
    & l) T! q; y3 o, O' H    if(i==n)i=0;7 d- T8 o" r$ W* y# x$ Z
        }
    9 V: ^( {8 x$ w9 M6 }' u. Q while(*p==0)p++;9 R' K( k3 F( E  n, u' r9 n8 h
    printf("%d",*p);* i) j7 i# q9 M# z( }( q
    }
    * c' l) N1 @  U9 ]  Z10.6
    ) Y5 g1 d, E/ W) ?5 D" J! B9 fmain()
    0 c% i, N/ a) x, d{int len;5 i) I* x& ^; u5 M( _
    char *str[20];& q9 a. k- A9 q" C& W* m# H& ~
    scanf("%s",str);- a1 d. e" q% o! a
    len=length(str);
    9 H7 v, C3 G0 q/ h- d9 Z printf("\nlen=%d\n",len);
    : ^& Y. e9 r# t" u: v, q2 B2 S0 ~}
    7 _; a! L2 U8 z- i! E1 L: `( |) V2 ~length(p)
    & n/ X# n6 G7 Gchar *p;
    ' T$ E. T' d1 @8 k# k% f{int n=0;* ]. G; q' e6 }5 O" k1 O& @6 `) J# @
    while(*p!='\0')" P: ^  h/ t- H! ^& d
       {n++;p++;}: I  f5 N7 U+ T  ?/ j, X
    return(n);
    4 j2 `& A2 I- X3 [- z# \}, Q& c  Y; q( T4 Z* H/ o7 \
    10.70 S. i1 W7 s6 i$ Y& c: M
    main()/ f* z  N( s1 G0 J
    {int m;2 l! t; a+ F' j: v+ S
    char *str1[20],*str2[20];
    " J; |: e, J. C2 m1 Z4 @- Q2 \. I scanf("%s",str1);
    4 N* Q" v# r. | scanf("%d",&m);
    + p, r! I; C2 [. O  [ if(strlen(str1)   printf("error");. N# `* {" G! l
    else
    5 g& |& M% k) a/ U& k) y   {copystr(str1,str2,m);
    5 W! d' w6 S0 c    printf("%s",str2);( Q7 W4 q8 ^6 S4 s% a. U! ~
       }
    6 r* t3 w5 X. I6 P4 r) S}* h  K9 \: U$ ?- ~, {2 y
    copystr(p1,p2,m)
    6 A/ }) w- E# r0 m: \5 R: schar *p1,*p2;( N! o6 T; v) L6 B
    int m;& a1 F5 t: }, L, m' _: E9 v
    {int n=0;
    $ I: {7 k! h8 \ while(n   {n++;p1++;}
    5 C& V1 q7 H: U2 p- t; a( n while(*p1!='\0')
    $ h7 W# e1 n/ L- U   {*p2=*p1;( \2 m9 ~9 J/ ~3 b) ~) W
        p1++;7 ]; `! i9 F, B  X# s$ T
        p2++;
    ( v6 S8 q4 ~9 T1 }  J   }
    5 f' M- m) _9 [2 A/ a *p2='\0';9 n4 K3 f" p2 u4 F
    }
    ( R% h+ M2 S" a/ k/ G- x0 t10.8
    ! H; R+ Y- @$ ?1 p* w) w#include"stdio.h"
    0 S5 m2 b5 t0 z5 p9 kmain()) v- Y$ Y  k) h. e
    {int cle=0,sle=0,di=0,wsp=0,ot=0,i;) u& e8 f$ p+ r; w) Q
    char *p,s[20];
    # P4 z5 s6 K. G9 G for(i=0;i<20;i++)s[i]=0;
    8 y  M( B$ j* V! W& L i=0;
    6 J1 I% i- ^7 u while((s[i]=getchar())!='\n')i++;
    / f: S/ s$ x" P# k p=s;
    ! e/ K8 n+ g' j! H9 u6 u while(*p!='\n')% a/ a8 z! J$ f# P* v
       {if(*p>='a'&&*p<='z')
    4 g: S5 C4 \9 N) p% h- g  M1 U2 W$ h      ++sle;
    2 f' l: B. u9 @7 i' L8 o8 i! n    else if(*p>='A'&&*p<='Z')+ J- u' b# G" \1 n! q5 X  ?" C' ]
          ++cle;& h" F( a6 P2 J. y
        else if(*p==' ')$ ^! N: v* z1 P8 }5 y6 T
          ++wsp;4 G& P+ A2 F9 ?+ `
        else if(*p>='0'&&*p<='9')
    ) D' r* W- }  G9 Y      ++di;5 T8 A* b9 D: q8 R4 h& t
        else
    * }% B9 y* E% X. K3 k0 K      ++ot;" n( M& z2 L7 p# \7 {. N
        p++;
    2 F+ h2 D  l  ~( Q) A! |   }/ D3 F9 r+ m8 Y* C# B) V2 c
    printf("sle=%d,cle=%d,wsp=%d,di=%d,ot=%d\n",sle,cle,wsp,di,ot);# e& Y, `3 I, Z: G
    }! ?) m: h6 G% Z! p
    10.9
    8 }8 m! q* I6 a, q( Qmain()$ z+ s7 q0 C; {5 L3 m; f' }2 Q/ O
    {int a[3][3],*p,i;
    0 Y4 x( Z0 z: J  ? for(i=0;i<3;i++)
    2 K8 b0 w7 [) K6 F+ H0 w: c* P   scanf("%d,%d,%d",a[i][0],a[i][1],a[i][2]);
    + y1 k8 B1 O: d  p) v p=a;
    ) U& C; J+ c% V$ w% `3 q, \4 K' ^3 H- B9 v; } move(p);
    $ T/ M0 k4 l9 s for(i=0;i<3;i++)
    4 S% U* x! e' Y5 ~   printf("%d  %d  %d\n",a[i][0],a[i][1],a[i][2]);
    : j& k$ h5 a0 t. Q' K}
    . G  p- G4 ~: E' @8 Umove(pointer)- s8 r1 I! o/ q6 O0 c- F7 A4 v) r& Q4 i
    int *pointer;
    8 w/ ~2 {& @; `: ]6 a: ?{int i,j,t;0 i  r/ M. I4 _' z
    for(i=0;i<2;i++): \+ W% T( I5 i  _2 Y  Z
    for(j=i+1;j<3;j++)7 P% L$ }9 F5 L0 o) u! H( k. X
       {t=*(pointer+3*i+j);
    . V& i6 O, c3 q, N' J# }( f- Q0 I    *(pointer+3*i+j)=*(pointer+3*j+i);
    4 D/ i% ?/ q% J9 s/ \1 B' t0 [: q    *(pointer+3*j+i)=t;  `- F2 u  r. x0 X* X  }2 P
       }
    ) [# C4 v+ H# r' ]1 M, N4 A+ O}3 w7 X' Y) l7 D6 f" U3 X
    10.10
    " U. _! {0 |* n6 G- rmain()
    # e% h9 ~) l. f( I% U$ G{int a[5][5],*p,i,j;
    $ ~+ |! J& l2 N: U for(i=0;i<5;i++)6 a6 g7 o5 s( r& R9 o
    for(j=0;j<5;j++)& p7 r2 o) _$ v, ~* }
       scanf("%d",&a[i][j]);; _- S. l7 k9 b, m' A, c7 }
    p=a;
    7 ?" Y* Q! c; h' V change(p);
    " |7 H9 z/ x/ s1 m0 S) ^4 m3 d for(i=0;i<5;i++)
    1 X* d( a2 C: K: M   {printf("\n");% E, k! ]' ^0 m- g$ s) R4 J6 g: C
        for(j=0;j<5;j++)
    - M- x) _! H" S. H6 Q0 B% K      printf("%8d",a[i][j]);( P  y& }# E+ s/ p: v& u0 G
        }* k! O. ]- [( ?0 `# I9 t- p
    }
    4 x0 i6 [7 P- J. }2 z1 u; echange(p)* k# \* U( z# Y( I; }) y" {
    int *p;
    . G5 \9 ^, U/ d- ^- d) d, k6 F{int i,j,change;/ @& \' Z$ v; v$ k, b4 b
    int *pmax,*pmin;1 o$ a! a5 X' o6 [
    pmax=p;
    3 Z6 ~: r7 K7 G- X; \$ U6 K2 a) b pmin=p;
    & c* P: V" R# d7 ]6 r( w$ A for(i=0;i<5;i++)
      b* l2 R5 Y3 m3 }8 U   for(j=0;j<5;j++)2 [$ @2 Q0 ?  \3 y3 \  M
         {if(*pmax<*(p+5*i+j))pmax=p+5*i+j;
    & W1 \, j; h* P, p- C  m( d      if(*pmin>*(p+5*i+j))pmin=p+5*i+j;
    7 ~* ~" Y! B, a% _. J2 g. [: ^, m8 w     }3 N; X5 A. {. f6 F. N- _& [$ H
    change=*(p+12);+ O; S$ D$ m% r8 Q
    *(p+12)=*pmax;& i$ N0 u# B! \; i. W( V3 }5 j0 r; p0 z4 _
    *pmax=change;# U7 E% h: T+ P+ B! A; u  C
    change=*p;
    ' ~4 z4 z/ _" ^7 L" G6 V4 _ *p=*pmin;
      z% `4 M% m6 ^  \" z *pmin=change;/ z' a; G; }, u+ s' ~9 u
    pmin=p+1;
    & b! ~+ U) i4 ~8 P6 p! L) F for(i=0;i<5;i++)' b/ B! D6 |3 w+ P2 ^
       for(j=0;j<5;j++)
    4 o: L5 T# E* m/ ?( ?+ \     if(((p+5*i+j)!=p)&&(*pmin>*(p+5*i+j)))pmin=p+5*i+j;3 [  F6 _9 i1 [7 d
    change=*(p+4);" B3 ?3 V; y0 B& M
    *(p+4)=*pmin;
    * `5 D# e& W7 ~* ]1 J *pmin=change;5 G6 v: L$ o4 _; k' e
    pmin=p+1;2 l; ^! R! v1 C5 |9 k
    for(i=0;i<5;i++)4 y6 O0 P& c3 Z# L; M) h- Z
       for(j=0;j<5;j++)5 @$ y& A  d( s1 J1 r. ^4 g
         if(((p+5*i+j)!=(p+4))&&((p+5*i+j)!=p)&&(*pmin>*(p+5*i+j)))
    # j* k9 ~# o( K1 w        pmin=p+5*i+j;  D0 A. \4 M" t4 |) i) D
    change=*(p+20);* S5 w2 I% ~" R
    *(p+20)=*pmin;
    " {) Q' @; \# L *pmin=change;# A6 j  U4 Y& X( H
    pmin=p+1;6 h' O- Y$ H$ f, J1 b7 |4 |! G
    for(i=0;i<5;i++)- f, _. u6 }# f6 o, L8 G$ `( O
       for(j=0;j<5;j++)0 z& ?% E7 v, h! V9 J4 ^3 D
         if(((p+5*i+j)!=p)&&((p+5*i+j)!=(p+4))&&((p+5*i+j)!=(p+20))
    7 G/ @$ E6 T# x% p            &&(*pmin>*(p+5*i+j)))pmin=p+5*i+j;
    5 Z1 |% m  ]5 F% R! ~ change=*(p+24);' A* a1 |; ~; o3 x$ s- G
    *(p+24)=*pmin;
    4 c9 e8 D- \( z *pmin=change;
    8 l# Q* B9 @7 ^. X( Z}
    * P6 |4 @9 b9 p# d: R3 [' `4 G10.11
    1 m( c. |" k8 Q* Z' M1 F" R/ smain()& ~, b  x0 M, j# U& b7 f% M; @
    {int i;2 ?9 l4 R% p+ R: i2 k
    char *p,str[10][10];! D! b4 ]- P  |/ Y  M/ H' U
    for(i=0;i<10;i++)
    3 ?; R% l  ^+ h9 @; ?1 [, p   scanf("%s",str[i]);; n6 _( o; H: n
    p=str;
    8 D/ X# _* |8 D* J9 v! o1 O sort(p);4 r7 ]" x' p3 C& W- ~) b: C3 ]
    for(i=0;i<10;i++). b7 |# Z. i$ ]
       printf("%s\n",str[i]);
    : p0 m9 l% \- E0 H}# r  d+ I% f- i# z5 |% ^7 t3 F& o7 u
    sort(p)( w+ s8 v- K* p. B* b3 i
    char *p;' {% s# r! L9 F8 I& f
    {int i,j;' h+ v1 ]9 q, s
    char s[10],*smax,*smin;
    * k0 t6 Z7 g4 r7 s" x1 K$ j; K6 {" f for(i=0;i<10;i++)$ m" a5 }! q1 e
       {smax=p+10*i;
    1 E' W; o1 F- G    for(j=i+1;j<10;j++)
    , q$ ?- x; G$ \9 g- z8 K      {smin=p+10*j;
    % i! o) h$ j2 q; |. O3 L! j       if(strcmp(smax,smin)>0)- F! `+ m+ T# W/ p( s
             {strcpy(s,smin);4 S9 b% b& D; S+ o' r4 S
              strcpy(smin,smax);
    1 M! x4 U1 G6 Z) N' ]          strcpy(smax,s);/ N4 e8 e; b6 g$ ^' u% G+ }
             }8 b1 X6 Y$ s! o, N8 E
           }
    4 {* Y. }0 ]! D" ?  Q  r( U: o! ^8 i    }  q2 x1 X; N" a6 m( g
    }& @0 ~9 U: K: Y8 E' C
    10.12
    4 Y- Z) {% d8 @& c; }# Q  y#define MAX 20, O+ I4 r- {2 L5 z  T
    main()8 W) z6 g4 Z: |8 o- Y& `
    {int i;
    5 d) M9 y  r% H3 O7 Z( ^ char *pstr[10],str[10][MAX];
    % d/ M1 O* Y0 p- A) i for(i=0;i<10;i++)
    # U4 K7 p' ~- o$ L( p2 d   pstr[i]=str[i];$ n  q2 P9 w3 i4 [6 C
    for(i=0;i<10;i++)
    3 e  _& z- e/ \% d   scanf("%s",pstr[i]);
    - j# ~2 }, X- ^  ^) T: Y2 s0 O, l sort(pstr);
    7 V/ s, H7 @; D( z' }3 [ for(i=0;i<10;i++)
    / g9 A# `+ Q& T1 I   printf("%s\n",pstr[i]);5 f/ ]" t0 \2 U3 L2 k
    }  D* y* M1 T1 K% H$ r- P; s
    sort(pstr)
    7 u9 s) C. w3 q+ w$ z* s" _. }char *pstr[10];
    9 q; g9 N  }' Q8 e+ p8 h{int i,j;& j3 ]) D; F8 ?" P8 r  R# x
    char *p;
    . B. J$ d, u6 J1 |6 d; V4 j' ^# z for(i=0;i<10;i++)
    1 I# L- j# ?7 _+ Y8 T$ P   {for(j=i+1;j<10;j++)9 Y& m8 K+ w" m: z( [
          {if(strcmp(*(pstr+i),*(pstr+j))>0)
    ; \. y- ]) J5 s" h; n         {p=*(pstr+i);( G: ?' E: ?$ J6 f! X
              *(pstr+i)=*(pstr+j);
    ' E0 r' B+ K0 @. U          *(pstr+j)=p;
    6 d1 q9 ^3 k  A) l- N# n          }  d& T; Q7 T3 {6 D! j+ D
           }
    / Q7 w* G9 p1 x+ R# @/ h# |    }
    0 @; X1 ^6 z" d' E6 U/ Q/ z}
    9 k: F0 j# e$ A10.13( l& @. l4 b) }# h* G
    #include"math.h"
    % O! n3 r0 H& b. @* ~main(), L- s+ B6 T2 ?
    {int n=20;* S" w. j% X! |' w+ c" V" P: s& l
    float a,b,a1,b1,a2,b2,c,(*p)(),jiff();& n0 v0 x* u* j6 K
    scanf("%f,%f",&a,&b);# t7 H' b; ]! e0 ]8 ?; Y
    scanf("%f,%f",&a1,&b1);3 r# i1 A( u9 A9 |
    scanf("%f,%f",&a2,&b2);$ G5 C: u  b6 M, D# I
    p=sin;
    ) {8 n7 _& R$ o; S c=jiff(a,b,n,p);# {+ R' S4 j" i: S# O
    printf("sin=%f\n",c);: v6 H+ i0 x1 F) U2 D' ^
    p=cos;% K, [* S* c0 }" m  R9 k9 ^2 h
    c=jiff(a1,b1,n,p);
    7 b' g7 m! r$ A# Z. w printf("cos=%f\n",c);: C: Z# F4 V( A- e0 }
    p=exp;9 ]* n( f8 F3 S5 y, s8 F
    c=jiff(a2,b2,n,p);
      ~' z9 ~0 S8 Z6 H4 B4 Z" d+ O2 y printf("exp=%f\n",c);
    8 f/ s3 Q+ L, x. k/ T  m( `}
    1 Q2 N& k! t+ Q6 zfloat jiff(a,b,n,p)
    $ \+ D2 w1 R! e- o' b+ Bfloat a,b,(*p)();
    . q6 X; _6 X; y6 {( W0 A- X0 ^) Tint n;# }  @  A" n6 O; }* x: w; d; S2 O6 {
    {int i;! x. ]3 Z4 x5 M7 X8 S5 m- D1 n* x( n
    float x,f,h,area;' y% H1 K+ S, Z$ E8 T
    h=(b-a)/n;
    - B' H: i2 C$ t! E6 h% q, \ x=a;( M* I5 x# U) S  {4 X$ Z
    area=0;2 f7 o$ n/ w9 S! ?1 _1 J0 V, E: s
    for(i=1;i<=n;i++)
    * C- U& A: B2 n. K   {x=x+h;1 W- [! M" O$ ]; }9 ?
        area=area+(*p)(x)*h;9 J. P/ R1 D: e% i' b% T5 Z
        }4 L- \2 q6 @9 z  E: V5 l5 ]
    return(area);$ K$ K, b3 v# u) u2 |! t
    }, m& \; ^9 v( M; w8 o# W8 }+ w& ]1 Z
    10.14) V  I0 N: t0 e5 t8 E
    main()' G* q: h1 a2 @" l1 m
    {int i,n,num[20];
    2 v# u! C1 {5 f; ~8 x& v0 ~ char *p;
    1 S* s' I) t) `3 n; ~9 S! E scanf("%d",&n);
    ; K. I3 @8 q: h7 z for(i=0;i   scanf("%d",&num[i]);
      ~1 }/ A5 m8 I2 E7 ^ p=num;
    3 ]( h1 S+ n9 Z, ?- J7 ]5 E$ _/ G5 K sort(p,n);# p& e0 K* Z: H( I% }; B
    for(i=0;i   printf("%8d",num[i]);/ W0 }- j2 j7 T4 N% [
    }
    * x% x9 h5 P# g8 t( C+ Y3 osort(p,m)
    . h) ~2 m4 ^3 @7 t$ T- _% V1 V# kchar *p;2 f0 G" o4 ^' p5 U! H3 A
    int m;, u; z1 r" h+ b: C/ ?
    {int i;% U, q# k4 {/ A
    char change,*p1,*p2;1 H* A7 i5 p2 B0 V7 Z" o* I. Q
    for(i=0;i   {p1=p+i;
    & X% k% W6 b. ^" t, W    p2=p+(m-1-i);& p/ J' P! N# |' T1 v( M
        change=*p1;
    . f) ^, y9 G% `9 C    *p1=*p2;
    8 Z$ D# f) ]2 t& w7 H    *p2=change;/ d+ [4 u5 t* o0 [4 s9 W- t
        }3 h! b: I; v/ z7 y
    }* c/ u0 Y1 P* c( V$ Z
    10.15' h7 _! S4 O0 E  @, r
    main()8 h2 M: |) [8 G( r) |
    {int i,j,*pnum,num[4];
    5 V% r, j- E. N  n' _ float score[4][5],aver[4],*psco,*pave;! c3 P# Z% {4 t/ U! n& @' S) M7 y
    char course[5][10],*pcou;7 C/ n1 H7 F2 N* `8 Q9 A( i( ^+ Y
    pcou=course[0];
    2 A' s, ~' B" C; v. z( F for(i=0;i<5;i++)1 h: U8 r8 i8 U0 C+ e4 f
       scanf("%s",pcou+10*i);
    . y4 J8 i& D! }  w printf("number");0 H/ T0 I+ w+ R+ V( l# T/ }6 Z
    for(i=0;i<5;i++)5 ]1 U0 w+ K& E9 C% {3 A
       printf(",%s",pcou+10*i);/ z3 P. E8 w+ B8 O7 |
    printf("\n");
    8 x4 n6 C% R- k& m psco=score;+ }9 Q+ z& y4 p! K% o3 ~
    pnum=num;
    ( K9 a" ?) ~; I$ z) u0 x/ s for(i=0;i<4;i++)
    ) }6 ~  Q# W: D0 m+ W9 ^   {scanf("%d",pnum+i);
    : `/ K! m+ G% O$ e. ]    for(j=0;j<5;j++): Y2 r' @# l$ D; }; H
          scanf(",%f",psco+5*i+j);4 |" H; m9 j. K) N, I0 B
       }6 y1 ?& I$ V' h( f, i4 P
    pave=aver;
    * ^" o2 y. \+ K$ c/ `: O printf("\n");
    # t3 o( d+ T3 \/ d avsco(psco,pave);
    . N9 T& t& _3 A( o avcour1(pcou,psco);
    1 X- [. @4 ^7 }$ b3 t; ^ printf("\n");
    . v7 {- V5 t* z fali2(pcou,pnum,psco,pave);: V4 g( h3 `# d, ^# q0 ?
    printf("\n");
    ; i9 s, {9 W4 u good(pcou,pnum,psco,pave);! [4 J) ?( v) e" s8 y: V/ A
    }, ^' V0 A. |/ n. Q7 _
    avsco(psco,pave)
    6 M. Z0 D$ E3 q/ pfloat *psco,*pave;
    2 b* |; G3 E  c0 r! X1 N{int i,j;
    : V7 _. P9 g+ A% d  Z float sum,average;& K  A" X2 R# H: x  i4 A. V5 T9 @
    for(i=0;i<4;i++)
    ( @* U& Q; [4 Q+ {8 c7 D   {sum=0;% C5 m! z$ d2 `4 g; e$ V3 N
        for(j=0;j<5;j+)) H* ?5 p5 C+ C2 Z7 m
          sum+=(*(psco+5*i+j));9 q( t/ O% r  H3 u6 {* o4 M: j
        average=sum/5;
    * B, K" z/ M, G8 i- D7 t    *(pave+i)=average;  d+ O6 Y+ b5 k* R
       }
    % X  B  A# g( J}
    $ V( v, H- W) p6 r5 Favcour1(pcou,psco)
    ' t( Y" S+ b  r1 t& C0 l4 Z9 O1 echar *pcou;' |' o) U% q: S: h' C
    float *psco;
    ' H7 }% J& c3 Y& N( Q{int i;
    * c% p, _9 u  W float sum,average1;7 ?& k! G, ]9 u  q/ d
    sum=0;& ?2 i+ w, U7 q6 Q
    for(i=0;i<4;i++)3 T; Z% ]: M# S
       sum+=(*(psco+5*i))
    : w  u: x% i! z* V$ N# d average1=sum/4;* b* c0 m  I( ~) m
    printf("%s      %5.2f\n",pcou,average1);
    3 A! ?' a) m' W7 n" ?! d}% u' c( Q0 j; k; ^) L( b$ @
    fali2(pcou,pnum,psco,pave)+ p8 ~( h/ S& h0 X9 W
    char *pcou;
    * }  F% v7 _+ m. gint *pnum;
    * e% Z3 d/ r+ Q& z/ u, v5 Q5 z0 Pfloat *psco,*pave;
    * ^( c) \; Z3 @! ^{int i,j,k,label;
    % D1 w" \( n8 m printf("\nnumber\n");
    : ]' \  @9 y( s: q9 t- u for(i=0;i<5;i++)
    9 z& }' I. x5 x$ y( b3 O% p* ^. m   printf("%-8s",pcou+10*i);
    4 p+ M* H! j( ^ printf("\naverage\n");
    2 q6 ~2 \5 }, y! m, b$ X for(i=0;i<4;i++)5 W3 F1 C) {3 i4 n5 I
       {label=0;/ y" a4 a- }) f  H" }
        for(j=0;j<5;j++)* n. i5 u5 X3 A: l: k7 U2 S1 p
          if(*(psco+5*i+j)<60.0)label++;0 X- D) y" B; f6 O, _
        if(label>=2)0 l4 R+ J8 N( l6 c: \! a
          {printf("%-8d",*(pnum+i));' L% x4 f" ], j2 a2 I! r
           for(k=0;k<5;k++)
    5 _6 a' u) R5 X1 S, v9 d1 }         printf("%-8.2f",*(psco+5*i+k));
    7 i6 `; `+ d  Z3 O; X: L/ `8 Z       printf("%-8.2f",*(pave+i));
    " w6 p8 M4 w/ v3 S      }
      Y& {3 U8 F: O/ [# P    }$ u, v1 G5 f$ U7 ^9 g
    }0 q* {& k+ r7 s
    good(pcou,pnum,psco,pave)8 ]8 \& W" y; O3 k  R/ L
    char *pcou;
    5 {6 m/ K' A7 r' ?: Xint *pnum;# f6 C* Y. A2 S
    float *psco,*pave;. g" j. A$ h) D( @( H5 w. @' j" l
    {int i,j,k,label;
    ' l( b) [5 `! d printf("number");
    3 M0 A8 }! j3 n6 s* X for(i=0;i<5;i++)
    ! g+ b: T. g  j* Q( j   printf("%-8s",pcou+10*i);
    + n+ g  a1 c: @1 ~  p printf("average");
    # q3 c" {; H+ q! X$ o6 f2 g7 Y) G( r for(i=0;i<4;i++)
    4 _2 j$ S7 w+ N. E# s( d   {label=0;3 m& F5 c4 m/ \" k
        for(j=0;j<5;j++)/ }1 W7 V& S& Y
          if(*(psco+5*i+j)>=85.0)label++;% r9 O/ _! Y2 e, C) n" ^4 g
        if((label>=5)||(*(pave+i)>=90))( p" u8 j, j8 A
          {printf("%-8d",*(pnum+i));5 d; f( q. Y4 f# ~; g. S2 V
           for(k=0;k<5;k++)/ b, K. |3 y' H4 [
             printf("%-8.2f",*(psco+5*i+k));5 I  x( J3 w0 {3 f8 ^  `
           printf("%-8.2f",*(pave+i));* ], ^6 H! L( V+ f
          }
    $ E* J' k3 J* |    }
    6 @5 F# C; S6 O! e9 ]}
    2 B9 E9 L' p( s* V: z- V10.16
    / @8 W" a0 [8 f. `#include"stdio.h"# m/ h6 c/ G& c7 q
    main()
    - A* i3 `2 ^; [{char str[50],*pstr;0 D2 h7 s6 Q5 v- ], E# k2 N
    int i,j,k,m,e10,digit,ndigit,a[10],*pa;
    % J) Z+ q# U' l! m gets(str);
    . y6 J' u! f$ u" } pstr=str;
    ! |. A, b" v% T, v2 T pa=a;3 u! Y) n1 b( @- O
    ndigit=0;5 |/ \+ H. B2 m! I
    i=j=0;
    * a# Q& f3 o! B7 y- w! F while(*(pstr+i)!='\0')
    8 @$ l0 M: Z! B% i   {if((*(pstr+i)>='0')&&(*(pstr+i)<='9'))2 c! v* J0 A5 s  P% j* `7 ~! e: c
          j++;
    # B0 G% @8 h/ W8 `* U+ d! w( m8 x! W    else
    8 Z: y1 ^5 `/ c1 `      {if(j>0)
    / N$ p; B# c2 w         {digit=*(pstr+i-1)-48;! D% {7 b5 s0 x$ r  n( J
              k=1;
    ! G& h4 K& r0 Q3 v9 f7 @; a          while(k            {e10=1;
    ( `# A: }3 e, v             for(m=1;m<=k;m++)" t0 g' z5 z- @* v
                   e10=e10*10;5 [" [. d! I+ e+ ~: Y8 }% J
                 digit+=(*(pstr+i-1-k)-48)*e10;8 V" O2 M' F2 A( |- w) @
                 k++;
    9 ]* ~% V/ d. J5 a6 n* Z# F  {+ |            }/ ?7 T1 ~: p' J7 j
               *pa=digit;5 O3 I& P) W: E9 G" Y& w5 h
               ndigit++;3 s% X$ c( j! M( `$ y
               pa++;
    - h+ q7 l+ }6 h9 ~& C. S8 T" Y- h( f           j=0;# H. a. ]6 w9 F( t% L% ]/ o
              }; ]7 G2 q- O( W6 Z' M
            }
    + H* G1 |2 D: t7 T* ]0 l# V2 @     i++;
    % ^: M9 G( ?' y# q     }! O# T% ]0 [6 y' |5 s0 Z
    if(j>0)" w  s- l+ u0 I
       {digit=*(pstr+i-1)-48;
    ' ~" J+ X; q9 b3 i- k: H# F    k=1;
    * c1 P3 C- \+ L6 R    while(k      {e10=1;. G; C! X' l) Q$ C) m# V
           for(m=1;m<=k;m++)
    . e  Z9 q' y3 I- \. Z6 d          e10=e10*10;
    ! n" p7 _  B. w" ~8 S0 U, `- a       digit+=(*(pstr+i-1-k)-48)*e10;) d! n# U. v, P
           k++;
    * g% e+ ~: e! y  ?  s6 K       }& U: T3 ^; d  _" m/ e6 V
         *pa=digit;
    : M: s* `( ~* T/ [. E1 E9 W6 q% F, S     ndigit++;
    8 [; O2 V7 ?! s* K     j=0;
    & c5 n& ?* k0 ?3 P    }   
    ! v5 W! g/ t8 v, o$ C0 K& N2 k printf("ndigit=%d\n",ndigit);
    7 i8 y5 w/ S3 l: h j=0;+ `! ]& j9 u& g6 ~1 ^
    pa=a;
    8 n" }/ K5 M7 [; w) |, b0 \ for(j=0;j   printf("%d",*(pa+j));
    1 W, e0 I8 [* O/ |) z+ \( H}  i& S0 H5 |2 Y, L+ ]6 @6 L* y" c
    10.17
    ) z1 v) ?0 D1 Y6 ?% K- \* @main()
    : Z5 D) Q" ?0 w( E5 K{int m;! k$ ]1 {! s; x3 Q, e! M
    char str1[20],str2[20],*p1,*p2;/ N+ t8 l8 v+ Y& C/ }; U) P) U8 ?
    scanf("%s",str1);
    , j3 ]6 E( E$ c$ f scanf("%s",str2);. q/ d: N1 n" }! s$ }' U
    p1=str1;9 _3 w6 [4 o# N; a) o* L. G; ?* r
    p2=str2;. r5 p, p+ B/ [0 S3 s1 R5 a
    m=strcmp(p1,p2);
    6 k. W2 F" O% s2 W6 J6 E- z2 g" Z6 z printf("%d\n",m);
    1 `8 h4 L9 W& ~. e* I6 x}
    ' _: ?3 W9 S* A! istrcmp(p1,p2)
    9 a! n, S- i& |' m) z& Bchar *p1,*p2;
    % c2 p% o# H3 H! B9 I{int i=0;6 u' A# U1 v2 A, f( H- s
    while(*(p1+i)==*(p2+i))
    8 _; {+ |1 s( ^   if(*(p+i++)=='\0')return(0);
    % s* D6 p# C( n4 Z' \1 J1 t# W( H return(*(p1+i)-*(p2+i));
    / n7 J5 A; |! |, D# {}
    5 q- h5 m  S9 f, W# `7 W( j10.184 B& [, r: q# O
    main(), G" i; W2 }; D/ Y5 o
    {static char *mname[13]={"illeagl","January","February","March",$ D" z5 {, g* {
       "April","May","June","July","August","September","October",
    4 W- _: P. n5 a# `   "November","December"};8 Y8 V" ~" ^7 _# M7 D
    int n;6 q! ~! h4 h; X3 m
    scanf("%d",&n);! F" C9 L, H% {9 b: B
    if((n>=1)&&(n<=12))! }; O* N' y) q
       printf("%s\n",*(mname+n));
    / K; _7 }3 O. v4 f* s( B" W else
    ' X' W) _! ?+ b6 G5 y( h% L' `$ k* ?   printf("error");
    ( H0 P& {5 o  D7 d0 M+ L}+ r+ d( Y) `4 Q
    10.20
    , A6 r+ u9 }$ I. r/ C% T7 Qmain()$ B  K' T* w9 L
    {int i;' N% Y+ S: Y* @5 D
    char **p,*pstr[5],str[5][10];
    $ y$ ]/ c8 H3 m) { for(i=0;i<5;i++)
    $ o" ^. K* d  r1 O6 q: B   pstr[i]=str[i];
    ! O3 j- `" w0 N1 ^9 m3 _( K' q for(i=0;i<5;i++)
    6 f1 X# D) @& `& B   scanf("%s",pstr[i]);
    ' H  H0 o( W2 k& m/ X* q$ p- N p=pstr;/ u5 G+ X" m& I" K; h. y
    sort(p);9 ?9 h; J$ D$ ?9 I6 v
    for(i=0;i<5;i++)- G7 i' _- [1 I% x) X! X
       printf("%s\n",pstr[i]);
    & I0 L- P, y$ i- E; @}
    / s) h. c6 l( W1 T$ |' Qsort(p)% y+ q; z% H* f, P6 J
    char **P;, U, a6 G8 ]* p4 m! @
    {int i,j;1 I2 F8 E5 Z1 u- |$ c9 D+ R
    char *pchange;
      }* B* T7 d7 N for(i=0;i<5;i++)0 V, D) q4 G5 ]; O& l
       {for(j=i+1;j<5;j++)" z5 k3 K+ M& [) g; Z
          {if(strcmp(*(p+i),*(p+j))>0)+ V) h/ P) _5 O8 O
             {pchange=*(p+i);
    . j2 ~0 {2 ^* F          *(p+i)=*(p+j);
    , r( d- b- K7 M: S; V3 v3 l          *(p+j)=pchange;
    9 u; s0 s+ U6 d# Q9 S$ G  N7 c" k" M, p         }
    # a4 S8 o# u$ H  @0 p       }
    # v6 G; l5 K0 o. O' M6 I! F2 h    }: B1 T( j. N  @2 f
    }  V+ b9 ~3 ?' d! `+ c/ J
    10.219 ]  P: h# D" E% E+ F
    main()& c! D5 Y* n- E3 I
    {int i,n,digit[20],**p,*pstr[20];
    & o  D5 v# o: h# L& P2 A: L: Y' a( s scanf("%d",&n);
    " r% y0 k+ }+ V8 ~ for(i=0;i   pstr[i]=&digit[i];9 C* n: W; B+ M0 X
    for(i=0;i   scanf("%d",pstr[i]);1 |9 ?, _( j# D* q7 X' x8 n
    p=pstr;
    1 b* O5 b; O) ^2 _3 [ sort(p,n);
    4 T; c  G" e( V for(i=0;i   printf("%d   ",*pstr[i]);
    9 f3 x# N) l7 b, ^9 W1 `' p% ~1 E- p}7 Z- A" Q3 G$ J- ^& Z0 R* _0 z' E& q
    sort(p,n)
    ( r# f2 z( N  \+ `4 fint **p,n;; l; ~& c$ ^5 n. j6 s) ^
    {int i,j,*pchange;
    7 I7 V, B# Y1 B$ ] for(i=0;i   {for(j=i+1;j      {if(**(p+i)>**(p+j))9 T3 f! U+ e. L& o# ^" w5 d
             {pchange=*(p+i);
    " N0 p* A3 [, m8 V+ u          *(p+i)=*(p+j);5 q6 @/ T8 F! H
              *(p+j)=pchange;
    4 M& g; E7 v! B, W: I5 @         }/ Y; ?& n# a2 H) S( x7 O
          }
    / M1 t, {( `) t4 I    }# R. _- |, X' i  F
    }4 x8 n7 U( R5 k& u0 r9 Q
    第十一章  结构体与共用体: `1 y& R  @* T+ V1 e" B
    11.1! |1 c# Z/ m$ p4 _
    struct; K7 \5 o$ d3 x# ]" T4 W
      {int year;
    * l& F1 C, W6 L9 a1 h   int month;
    . b7 D& q: m2 B4 s" C- P0 B+ ^   int day;7 G+ t/ i/ K+ C3 p9 x% w
      }date;0 z& n, U$ }5 }' J# X' x2 K  l9 Z
    main()
      v9 J- f6 `' W" _6 g$ C9 u3 M8 H- Z{int days;
    , K. l$ {2 I9 m9 A4 n( P; s3 K scanf("%d,%d,%d",&date.year,&date.month,&date.day);
    0 ^3 G9 B: x" J9 _3 s+ q0 ` switch(date.month)
    0 ?" ~* _/ C" E   {case 1:days=date.day;break;
    / i3 L5 g' q( R" R6 E2 s6 v* l6 x    case 2:days=date.day+31;break;
    ' v3 k0 J6 F/ Y  s6 s    case 3:days=date.day+59;break;
    ! W! `5 o/ f2 U1 |8 A    case 4:days=date.day+90;break;
    % n( S* t6 W; M    case 5:days=date.day+120;break;
    2 ^. L( M0 V" F    case 6:days=date.day+151;break;( E$ y' Y$ ?; ]) Y( {$ d
        case 7:days=date.day+181;break;7 u) p2 p0 o& e& t! I+ R$ X
        case 8:days=date.day+212;break;
      l) X7 Q5 F4 i* O, ~2 u    case 9:days=date.day+243;break;! C0 P+ J4 O5 x
        case 10:days=date.day+273;break;
    ) O- T1 V# M9 `+ o: U1 L5 d7 w0 O$ {    case 11:days=date.day+304;break;: `8 k! z/ U7 T
        case 12:days=date.day+334;break;5 k8 H& N+ M" |) F! b/ e% V: T
        }  w0 Z0 Q; _, Z& k/ d6 ^$ ?
    if((date.year%4==0&&date.year%100!=0||date.year%400==0)
      r: P& @: E, h) e# z' b                          &&date.month>=3)
    $ C7 v/ ^% ]4 h. W" l% [   days+=1;
    ) X& `/ I" `5 O6 U& u8 \, D printf("days=%d\n",days);
    7 \2 K5 l. V# H; ^# a- v( r6 U& s}
    ( {0 L4 e; v0 ~& Z) @11.2' K$ h9 _5 H$ J# _8 b* r
    struct dt
      [* d, B! I/ z- l  {int year;
    % L7 \8 M9 ~3 h* C   int month;8 n/ a0 r6 j! V" b3 _7 P
       int day;
    - H: |! H% h$ S5 `7 z  }date;
    ; ~  f  S% E- c, {5 O* ?3 hmain()
    8 Y5 i! R9 V! e7 u9 l" z{( \& E; b  X' J/ D' O
    scanf("%d,%d,%d",&date.year,&date.month,&date.day);
    6 `8 f7 y: X: r printf("\n%d\n",days(date.year,date.month,date.day));
    0 h" o$ ?/ a- [- e% R}' t: g$ I* K! a0 `. h5 G3 d6 K$ x
    days(year,month,day)$ \- G/ |' `* {. _! s
    int year,month,day;
    : d# \; c# W4 m' M& \{int daysum=0,i;2 X5 o  U. w3 K  m7 s
    static int daytab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}
    - f% i2 O. D, q% G for(i=1;i   daysum+=daytab[i];
    2 P) g7 G) ?+ T* n- \ daysum+=day;1 J$ |  b% k3 k' F1 b
    if((year%4==0&&year%100!=0||year%400==0)&&month>=3)
    7 K+ U( h  ]) y   daysum+=1;/ d" a- q, o  V$ D% M
    return(daysum);
    ; v1 `* ~6 w4 Z& v; B}
    8 K( d& ?) Y; V3 j9 u+ S$ |11.3  F- ?+ o; |. L% A3 s) a' P
    11.4
    3 D1 r2 l( Y& ]8 D, W0 P#define N 5
    ) R, ?; W; l0 {7 |& ustruct student/ Z' `/ E$ h! }& N0 @
      {char num[6];
    " M7 E9 a' S5 X$ `. X   char name[8];
    0 D% H7 E, v7 V9 y  y" }   int score[4];! I# C9 d. @% p" ]
       }stu[N];
    6 U& k( l! y; N6 q# Emain()$ r0 m4 E2 ~+ q5 Y
    {) Z- [- v7 _+ F
    input(stu);
    ; X; Y- i' \$ ~8 { print(stu);# S! x# v" k  k" m7 n
    }
    7 c+ q9 d' p" kinput(stu)( ]% t) a: u4 G% s9 Y
    struct student stu[];; G" X, |# T) [5 |' E
    {int i,j;; v& X; {/ O; R" l
    for(i=0;i   {printf("number");
    - U; j& `) K* w. m$ g# p5 B; u, |    scanf("%s",stu[i].num);
    ) R. m4 P0 {5 m7 V6 B    printf("name");
    - K9 n) W3 G4 A" v/ y- C" e, S    scanf("%s",stu[i].name);6 O; M# r5 B6 |
        for(j=0;j<3;j++)3 _" U" E! Z1 Y9 \: \, @# m2 Q
          {printf("\nscore\n");
    8 _; h# G/ j; I       scanf("%d",&stu[i].score[j]);
    4 p! h* d* ]* V( T. o      }1 e3 ^/ @  F9 I. M. H
        printf("\n");
    # v1 a( x- E5 b- O    }
    - d# T. U9 `! o/ E; s8 p}$ b- R# C; w& L/ s' _" Z9 `
    print(stu)- c8 \% i" K: _5 |
    struct student stu[];4 W: u; s8 S1 h0 j
    {int i,j;, ~$ F( d- |* q9 t0 H, G& Z9 M9 u
    printf("\nnumber   name  score1  score2  score3  \n");) F. M" d: G" S+ H8 }
    for(i=0;i   {printf("%8s%10s",stu[i].num,stu[i].name);
    ; f& j/ \# G1 f/ ^    for(j=0;j<3;j++); `6 }3 x5 T# E
          printf("%7d",stu[i].score[j]);& x: e1 g- R) X  D
        printf("\n");
      t8 J: ~; g+ P0 R2 u; `9 P) q   }
    ' H  r! s( X+ M: w6 Q  p}
    ) |/ o) r5 S( g( B11.5, J9 |" M% x! ^0 ~" C3 j% E: k: P7 [
    struct student- h7 y. o3 g  s" S. u4 x) r
      {char num[6];4 o; v1 H- ~& \) n% F# F5 e3 E. D) `
       char name[8];
    ! Q3 T- r8 e8 ~) {   int score[4];
    # Y( O  M9 W5 x9 j   float avr;' `5 H9 h$ ~+ w" }% I
       }stu[5];
    / W2 ~7 x' i) ~% ]7 }; l# m' A3 Q* vmain()
    - D, A8 G* M6 |0 ^& z{int i,j,max,maxi,sum;
    5 U; Y7 j$ Z3 f: V  l& Z float average;: e/ N9 Q/ X/ d
    for(i=0;i<5;i++)$ h& A! y5 A1 [. B
       {printf("number");7 O% [/ p9 G. _6 [% R1 a  u
        scanf("%s",stu[i].num);% _5 n) ~! [$ D0 Y
        printf("name");
    , s7 x) f! F, m    scanf("%s",stu[i].name);4 h- b+ b- Q, L  \# s+ Z
        for(j=0;j<3;j++)2 I( c0 r7 Q. `2 a( I/ s$ N
          {printf("\nscore\n");
    & S0 O0 ?# }$ D/ B: A3 Y! |1 \       scanf("%d",&stu[i].score[j]);
    , P! o* f1 d4 h      }; K1 R1 K7 o! ?" S- N: ^) t" \' Q5 L
        }/ e! V% |: g- O. j8 a/ E3 ^$ C7 z
    average=0;+ b  O$ z/ u" \  g/ R
    max=0;
    . j. }5 V8 q& N7 U* h maxi=0;
    6 l* Q0 y1 t: }/ ^' S" A9 l: A2 F3 U3 W1 d* n for(i=0;i<5;i++)
    ; z+ }- `8 U" ~" h4 J' c6 a   {sum=0;
    0 b$ E! \. s6 |$ K    for(j=0;j<3;j++)
    - T4 J& d. c4 \! Y. d! g7 }      sum+=stu[i].score[j];; Y/ \: N% U  l6 R6 h' c8 A
        stu[i].avr=sum/3.0;: c2 Q) v8 Z  \7 b% V  E$ Y
        average+=stu[i].avr;# i" ], e. L1 T+ I/ c. o0 Y/ ^
        if(sum>max)( Y' p( M3 ?6 t$ s2 ]7 u" b; g
          {max=sum;) Z5 g) v; N& o
           maxi=i;
    3 Z3 z! `1 q6 a. g% k% O3 d2 G0 I      }( G% ?5 Y: O) N3 M3 ^) ^) \
        }1 l: B& @# a0 V( ^8 x
    average/=5;$ k; l( v. l0 c8 z
    printf("number   name  score1  score2  score3  average\n");! z% ?: e' `$ H% Y$ A9 J6 m; N/ x
    for(i=0;i<5;i++)
    3 A% @* y7 {# q& y   {printf("%8s%10s",stu[i].num,stu[i].name);
    " e+ b/ s, g5 }7 |6 o6 Q" f    for(j=0;j<3;j++)7 p' u& ]  ^3 U# I+ m0 @- Q9 t3 R5 s
          printf("%7d",stu[i].score[j]);* e4 |/ Z+ j: X7 q% g) Y
        printf("%6.2f\n",stu[i].avr);2 m% k, A$ _- H3 J6 S; j( q
       }& [0 m2 U: l/ {% F. B( l; G
    printf("average=%5.2f\n",average);. A0 \( `+ i4 d+ b  \* p
    printf("The best student is %s,sum=%d\n",stu[maxi].name,max);
    , Q  H* N' h' w8 B}
    4 k( `5 H' T: N* x8 D. y- t0 I4 [$ k# l0 u
    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

    听众

    3591

    积分

    逍遥游

  • 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-4-12 06:41 , Processed in 0.545029 second(s), 87 queries .

    回顶部