QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 9731|回复: 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语言设计谭浩强第三版的课后习题答案
    0 {- M" |' ~# q; V3 n1.5请参照本章例题,编写一个C程序,输出以下信息:; |& J$ s: o# U( F: t3 }
    main()# }4 |5 w& T6 Y- x2 O
    {
    $ P+ |" ?# g$ j, u6 Z+ nprintf("     ************      \n");$ R' y/ \2 Z5 F" H
    printf("\n");5 j9 p/ ~. g4 h" g- z
    printf("     Very Good!  \n");
    1 u! ^- H2 V8 _, L, eprintf("\n");0 k6 E% e$ b9 y* o$ d+ ]/ i! W
    printf("     ************\n");) Y- {6 c2 j# H0 V% [
    }
    7 f8 B' U! {5 {1.6编写一个程序,输入a b c三个值,输出其中最大者。+ Q; Q5 s- g# p; g& Q% e* `) S
    解:main()5 U  U4 K2 d3 x* w1 ]
    {int a,b,c,max;) h( S8 e3 T4 n
    printf("请输入三个数a,b,c:\n");- s! W1 E2 Y' r* W# |2 n+ x
    scanf("%d,%d,%d",&a,&b,&c);. V1 D* [- w2 @  W% X
    max=a;
    9 I* N2 \: r1 D# q% Y7 u& s. f8 K3 eif(maxmax=b;
    - Z0 M5 p( I6 k8 h, @& S3 w. jif(maxmax=c;1 m; e0 D- z# r. {1 r
    printf("最大数为:%d",max);- i  f, h0 _9 d$ ]4 c7 p# f; y. S
    }
    : }& P( U! [9 |: g6 g. ?' j第三章
    & K/ C4 r* Y% A9 E- U3 i) ?# M3.3 请将下面各数用八进制数和十六进制数表示:; R+ U' N/ y4 b, O: d
    (1)10  (2)32  (3)75  (4)-617. h* q! G* H0 e
    (5)-111 (6)2483 (7)-28654 (8)210036 p* g" h* x2 j
    解:十 八 十六
    & z9 ]4 N- }* Q: A- V. Y# v2 I   (10)=(12)=(a)
    - ?3 I4 U0 X: H3 e- K    (32)=(40)=20
    % h) F5 |' H& G- |7 K- b    (75)=(113)=4b
    + R9 q% {, D1 B/ q    (-617)=(176627)=fd978 K, Z; i1 A' F4 P: N& q, q& U6 V7 ]
         -111=177621=ff917 M. ]) j. {, P* m; ?0 I# _7 K
         2483=4663=963# T5 V5 K8 f, K" H7 ~6 U3 c$ d7 x
         -28654=110022=9012
    0 L9 e' V) c0 F7 K     21003=51013=520b% t  W4 ?2 O2 r+ d' \9 V, y( d4 B
    3.5字符常量与字符串常量有什么区别?
    9 W& @2 Y7 `" B; z- K7 J8 r解:字符常量是一个字符,用单引号括起来。字符串常量是由0个或若干个字符5 h- w( o- y+ W" J% k% w1 V) k" G
    而成,用双引号把它们括起来,存储时自动在字符串最后加一个结束符号'\0'.
    , s; U4 p) i' Q+ L0 h" ^3.6写出以下程序的运行结果:# q# i4 Z: J" M0 i
    #include( T6 A5 t, ?. [* B
    void main()4 R+ B3 j! P, `7 _5 g+ g% r: y. E
    {
    ' J8 r: ~6 I+ _char c1='a',c2='b',c3='c',c4='\101',c5='\116';9 N1 j( T6 C1 [: F3 @* z) N
    printf("a%c b%c\tc%c\tabc\n",c1,c2,c3);2 L; D" ?7 @# h7 Y
    printf("\t\b%c %c\n",c4,c5);- ~* l3 T+ Q. W9 R7 a
    解:程序的运行结果为:
    " Q# r4 [( L1 o6 I. Vaabb  cc abc6 K' \1 o; L+ h* f
    A N; H7 G% A# h2 Z0 w
    3.7将"China"译成密码.密码规律:用原来的字母后面第4个字母代替原来的字母,4 ^4 k) o$ u9 n% P- ~8 X  D
    例如,字母"A"后面第4个字母是"E",用"E"代替"A".因此,"China"应译为"Glmre".5 N, ]- Y! N" |6 h, j
    请编一程序,用赋初值的议程使c1,c2,c3,c4,c5分别变成'G','1','m','r','e',并
    * _& v. G0 N0 }; L6 C5 P1 K输出.
    6 n$ E! p! m9 C3 M& C" G6 {( mmain()& A2 d# }  f; \6 g/ ~! s
    {char c1="C",c2="h",c3="i",c4='n',c5='a';5 C9 A" x. x- i# r# [1 V/ l
    c1+=4;
    2 `4 ^7 t2 }. f. ^% T) B; wc2+=4;4 p4 }# ]! H9 o' h4 W
    c3+=4;
    5 b7 }- e; A( f4 J4 y# x- Sc4+=4;/ M. e- _6 ]" v/ o; [: v* C9 Y
    c5+=4;2 E0 `- S  Y# P* h3 M' @" h
    printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5);
    - F/ }/ g/ _4 [}6 ]/ v3 a" H$ K) j
    3.8例3.6能否改成如下:
    9 l7 W/ J  _! Z" t/ Z! p9 ?# J/ ]: V#include. J$ a/ _' L6 i" c+ H  g  o9 i* ]
    void main()
    . R1 f0 x& t+ e{
    ' a& K6 L$ u3 l3 [8 P, tint c1,c2;(原为 char c1,c2)
    , g3 X: T9 [) v* R5 [* v0 K7 pc1=97;9 q. g5 k0 o+ S! c- }! ?
    c2=98;2 o. x( ~8 F6 v
    printf("%c%c\n",c1,c2);) `; o% I8 n+ Q& X9 q+ n  R
    printf("%d%d\n",c1,c2);
    ' Y% D* W8 j9 g  g" _}7 n- C4 Q! Q" a9 j. V! x( n* {
    解:可以.因为在可输出的字符范围内,用整型和字符型作用相同.
      x1 {, E+ o; j- O, g; k9 l" D0 ?# h3.9求下面算术表达式的值.* W5 u* D5 D1 ~  m9 I& M
    (1)x+a%3*(int)(x+y)%2/4=2.5(x=2.5,a=7,y=4.7)5 J" i, T3 ^5 X; |. r4 D
    (2)(float)(a+b)/2+(int)x%(int)y=3.5(设a=2,b=3,x=3.5,y=2.5)4 P! f7 A* a+ a; S
    3.10写出下面程序的运行结果:" u3 P8 Q" o5 d
    #include$ s, W4 m' p8 o8 c- X# h% t+ A
    void main()
    0 Q6 ~0 A* N8 |{
    ( d- C# Y4 t. x4 Iint i,j,m,n;; ]: t) @" X' W: N3 }; o
    i=8;
    8 N% k4 ^- [5 dj=10;6 q& ^; _5 F3 t9 c5 w$ y
    m=++i;
    2 R: H. A0 t% \+ E6 h. f0 En=j++;3 z; A' A1 s8 i# w0 M0 g; W/ `
    printf("%d,%d,%d,%d\n",i,j,m,n);
    2 R/ L4 c- q, S7 g0 \}2 c2 y- E3 C$ M1 C9 V4 z
    解:结果:   9,11,9,102 b4 k6 I4 `2 B7 ^' R2 z3 u2 h
    第4章
    $ L1 e# W" G& j' A4.4.a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1='a',c2='b'.想得1 ?( u7 X; {: v% c
    到以下的输出格式和结果,请写出程序要求输出的结果如下:# e3 ~7 x( [; `* c) D8 x
    a= 3  b= 4  c= 5
    1 j  J- s/ {0 J: Z, U3 H5 v; l, w* y, ox=1.200000,y=2.400000,z=-3.600000: x" G6 u/ f7 @3 k/ l. V+ B
    x+y= 3.60  y+z=-1.20  z+x=-2.40
    1 I7 D# I" i3 E, Au= 51274  n=   1287656 F4 k) m6 p1 ]! I) u& g" K
    c1='a' or 97(ASCII)- o( `% o. O& s& J: v0 z2 z
    c2='B' or 98(ASCII)
    ) \( K+ N$ \( D, g解:5 z" @2 ]- r% l7 ]3 Q, S- S1 U
    main()$ [1 l) [! O/ D& v9 f( g) U+ @0 O
    {/ s& q1 e0 e- N7 H. r# {
    int a,b,c;7 d; `* w" U# [8 H& ^* {$ _
    long int u,n;" g5 p3 a; l6 `4 ]
    float x,y,z;. Q" b" ?' ]7 R% k/ Y2 E9 s9 P
    char c1,c2;
      w0 ?: v/ F1 Z8 ~  c# u4 Ma=3;b=4;c=5;$ ?/ A& K; l1 l& i- K0 ^/ \& O
    x=1.2;y=2.4;z=-3.6;
    2 n" M) e- ^0 P+ O/ _! Xu=51274;n=128765;
    9 e$ w' Z; u1 Z  Ec1='a';c2='b';' f; t. G8 s/ \* D( |' ^& ]
    printf("\n");
    ; _. |3 y+ |7 N* yprintf("a=%2d b=%2d c=%2d\n",a,b,c);) z: o8 e! d- q% |
    printf("x=%8.6f,y=%8.6f,z=%9.6f\n",x,y,z);. ~4 n+ B2 D6 I% N: T/ D
    printf("x+y=%5.2f  y=z=%5.2f  z+x=%5.2f\n",x+y,y+z,z+x);
    " R0 e% [+ J/ Vprintf("u=%6ld  n=%9ld\n",u,n);' `7 W7 k- ]# t1 v! E3 P
    printf("c1='%c' or %d(ASCII)\n",c1,c2);
    $ ~+ n9 F' Z) j- x+ Lprintf("c2='%c' or %d(ASCII)\n",c2,c2);1 F) g% `- T% ~& i' T4 ?
    }5 O  v: [: G6 s7 A+ W+ p* b; s  e3 I
    4.5请写出下面程序的输出结果.
    9 e( P" Y) t8 n结果:6 |# h0 N9 Q! B- {6 d1 O
    57( Z# {9 J/ {1 U* o$ S5 d
      5  7
    0 @' ]! y5 Q3 h67.856400,-789.123962
      m  Y1 O8 }. l- L; v$ q7 F) E67.856400 ,-789.1239628 @- {% j1 l. A( t0 e7 ?/ k/ S
       67.86,-789.12,67.856400,-789.123962,67.856400,-789.1239626 i& @! s; M9 I- o' W
    6.785640e+001,-7.89e+0022 k7 c: [! c7 I8 v+ Y
    A,65,101,41' k$ P4 L& z4 H% U5 o& t; j
    1234567,4553207,d6879 G& h: D3 o4 `, B; [! S
    65535,17777,ffff,-1
    : @$ I# K6 R$ v  SCOMPUTER,  COM2 j6 E+ R5 ^/ Q( X+ e8 g% X0 d
    4.6用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a'," ~* E3 N6 r" n' e1 E, z% B" p# l
    问在键盘上如何输入?
    $ D4 f. n; I% ]3 F% }main()  O. r  C8 r4 E/ {; [! G
    {
    & B$ f. C; W$ B' Y) S- m  {% r6 Wint a,b;% X8 ~" A7 F  t5 F
    float x,y;( u7 x  p, h8 G
    char c1,c2;/ s% D" g. b: |. X6 p% c  _; t+ f
    scanf("a=%d b=%d,&a,&b);. u9 \  ^. T. v5 T, t$ t
    scanf(" x=%f y=%e",&x,&y);
    ( g$ i! F& O$ S$ S2 X5 cscanf(" c1=%c c2=%c",&c1,&c2);# @7 t2 r) d# U# E
    }0 P2 N& F$ Z7 k7 h7 f" _: [; |3 d4 }- F
    解:可按如下方式在键盘上输入:& P+ ~/ ]# m% |
    a=3 b=72 D4 p; ^' I4 B! J7 W
    x=8.5 y=71.82  g( _5 l6 ?& P9 x' U+ m  T  r
    c1=A c2=a5 ?3 ]/ X% s" U% a
    说明:在边疆使用一个或多个scnaf函数时,第一个输入行末尾输入的"回车"被第二- h& l3 S* P/ Z0 b
    个scanf函数吸收,因此在第二\三个scanf函数的双引号后设一个空格以抵消上行% R3 U. x* A% a4 P. T
    入的"回车".如果没有这个空格,按上面输入数据会出错,读者目前对此只留有一8 r% o/ w, e' G# m1 g& B
    初步概念即可,以后再进一步深入理解.9 K! m) w6 y" ~) n# R
    4.7用下面的scanf函数输入数据使a=10,b=20,c1='A',c2='a',x=1.5,y=-
    ) O! E* w7 S& p# m3.75,z=57.8,请问
    8 S0 T% _* H9 S' B* N, E* {, o2 R在键盘上如何输入数据?7 s7 R/ Y1 c/ R5 _4 @
    scanf("%5d%5d%c%c%f%f%*f %f",&a,&b,&c1,&c2,&y,&z);$ [8 k( \3 K0 q4 Y# @/ N/ n! S
    解:$ W; }( f) c- @
    main()
    ! Q3 G) F# c; A8 r{, p; z# d4 X# u
    int a,b;
    . @. s9 g( C  ?$ d7 m% ~" E& R( Rfloat x,y,z;2 G& a5 u3 \5 [: ^
    char c1,c2;7 E  _4 l( ^9 q& s$ C
    scanf("%5d%5d%c%c%f%f",&a,&b,&c1,&c2,&x,&y,&z);
    . M8 Y7 L8 U% d! H}
    , E, H7 o* r" Q4 z" R运行时输入:1 Q+ Y5 d4 z4 ^/ t" W
    10   20Aa1.5 -3.75 +1.5,67.82 i8 }" l" s6 S+ S
    注解:按%5d格式的要求输入a与b时,要先键入三个空格,而后再打入10与20。%*f4 u+ W" Z, X9 b+ H' |
    是用来禁止赋值的。在输入时,对应于%*f的地方,随意打入了一个数1.5,该值不
    9 G& G0 X8 Y5 J+ O1 Y4 _会赋给任何变量。
    6 m# I1 N( u$ N% I4.8设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积,
    4 o8 i# u# [; U用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后两位数字.请编
    % Y  x9 a. ]$ G* |! p$ A/ N6 `程.
    1 W- d) c$ L  D" Z& A7 F) V& @解:main()# m* I2 h5 \+ Q9 u
    {
      }0 j# |' t$ Yfloat pi,h,r,l,s,sq,vq,vz;
    3 {! k/ x3 N' F4 b4 x1 J6 Ipi=3.1415926;
    & i- @0 _( I9 m4 Y2 F) B( ~printf("请输入圆半径r圆柱高h:\n");! o  j1 u) E. U% L" r9 ^
    scanf("%f,%f",&r,&h);
    6 f0 `/ }3 G, q0 O4 ?) R9 Ol=2*pi*r;
    # B1 r& c- j. w8 V% ]6 g& Fs=r*r*pi;. M! \2 @1 E# g1 B: x* T1 V
    sq=4*pi*r*r;
    / P" O5 u6 e9 Q% [+ Xvq=4.0/3.0*pi*r*r*r;
    / b/ F0 R3 V5 t; t) _vz=pi*r*r*h;9 W2 j% ]' j9 ?, u- Q0 D% M5 ~
    printf("圆周长为:      =%6.2f\n",l);8 _( \3 H6 k3 T6 S
    printf("圆面积为:      =%6.2f\n",s);
      z+ E8 W0 h$ t7 c6 bprintf("圆球表面积为:  =%6.2f\n",sq);
    : Q4 u, o! _2 k& E4 uprintf("圆球体积为:    =%6.2f\n",vz);
    $ b9 D- d+ _1 i}
    " V( C  ^  x+ K" q4.9输入一个华氏温度,要求输出摄氏温度,公式为C=5/9(F-32),输出要有文字说明,
    0 ^! v) ]) `/ h取两位小数.
    % T, L- Q/ t; A+ x" C1 T解: main()
    . h1 x- N$ x3 Y/ |9 D7 Q8 K{  ]: c' e0 z3 F" p
    float c,f;; L: Q% U: D$ e1 H( l6 g. }6 o6 C
    printf("请输入一个华氏温度:\n");: M5 N$ X9 z& e
    scanf("%f",&f);
    + z6 V4 ~+ ?. c, Y9 D# q+ lc=(5.0/9.0)*(f-32);
    & k  _( c2 U! e0 _% \4 Wprintf("摄氏温度为:%5.2f\n",c);8 k( u5 g: Q1 B" l3 q
    }4 `* h/ ]6 V# Z3 P) x6 w
    第五章 逻辑运算和判断选取结构
    8 J. r9 @2 c" a. l: B: ^5 y$ q5.4有三个整数a,b,c,由键盘输入,输出其中最大的数.
    : Q* y% w! z! l! w- [main(): {  t2 Z' V; R" M2 S
    {
    & E+ Z- k0 p, ^) J& m; g+ h' aint a,b,c;' \& E7 |, x* Y3 c6 a
    printf("请输入三个数:");
      n' a5 [; n  ^% v2 U" Nscanf("%d,%d,%d",&a,&b,&c);
    5 h, H. k( h  oif(a  if(b     printf("max=%d\n",c);
    * |, D3 o. ]* I0 G" p6 Y* p; K  I  else' R2 K0 }, H. u/ g
         printf("max=%d\n",b);+ L) _8 \: ~! b9 J, @
    else if(a     printf("max=%d\n",c);5 R2 j7 ~9 Z6 f% t( m  `* a
       else
    1 e5 {" P* ]9 ?     printf("max-%d\n",a);
    / [2 s& u- K- Y. [9 n  u}
    + y5 C5 ?$ m- {9 ]方法2:使用条件表达式.
    " O4 m# B6 n/ i& qmain()
    6 U! N" G6 [' M, @' @; i6 H  Y' A{int a,b,c,termp,max;
    5 G! r' I; H/ B2 l printf("     请输入      A,B,C:    ");
    ' G0 v" Q, [0 q scanf("%d,%d,%d",&a,&b,&c);
    - ]: |  M6 F4 }$ t/ M  C) \: [ printf("A=%d,B=%d,C=%d\n",a,b,c);
    * ?' n8 S8 D1 B# N: ~+ X6 f temp=(a>b)?a:b;5 J1 Q8 T2 ?+ e  A" h  b
    max=(temp>c)? temp:c;
    ! s8 `1 r" h" p2 K& x' f, F printf("   A,B,C中最大数是%d,",max);
    + F9 X  d" ^( E1 `8 j}5 d4 C$ n$ M, o8 R& X# b
    5.5 main()
    , [8 l# V% Q) S8 v{int x,y;$ d8 ~, z, N: N
    printf("输入x:");& w4 n7 a% w+ o
    scanf("%d",&x);
    5 d2 D0 A7 k2 q" Bif(x<1)4 E3 [! k4 f: D  I; k
       {y=x;: l  p" G( W# k2 t2 u
       printf("X-%d,Y=X=%d  \n",x,y);$ `& z4 K: h/ K  k, b' N& W* k: N. f
       }$ Q9 q  q( N# H, @! d' [; m! ^# @
    else if(x<10)
    3 T! m" H2 h: X3 v; @   {y=2*x-1;! B) T  W  _3 r2 D+ [. x# ]
       printf("  X=%d,  Y=2*X-1=%d\n",x,y);) d* ^, j; {! o: h; Y+ t
       }3 D  d: O* M- K2 j6 D5 S* G& G" C
    else
    4 n9 r+ g5 V3 V# ?  m$ \   {y=3*x-11;
    % `) l0 q! q$ C/ G+ g# r   printf("X=5d, Y=3*x-11=%d  \n",x,y);# ^# n4 I  P! c. U% q
       }+ f) \) x! Z/ p% `  }7 ~( J
    }
    7 W! t2 t0 L" ^! p& g(习题5-6:)自己写的已经运行成功!不同的人有不同的算法,这些答案仅供参考!   
    # _" d3 m  S& t( I1 }& j9 M$ g- _void main()
    7 A* J$ ]& R) f# F* Y{
    & {$ G# d1 K& T5 r1 q3 c8 _float s,i;
    ' g5 ?0 f; }) u: q. @$ ]" M3 s( uchar a;2 _# S& r: c, W$ t( k
    scanf("%f",&s);+ X9 b1 K! Z; N: I
    while(s>100||s<0)
    ; [; z! O8 q2 I3 q, G% k+ E{* o* u' B8 O* \
    printf("输入错误!error!");% n( `/ A- B' `3 P+ w  {  o
    scanf("%f",&s);* y# B% _" b  T7 ]: l8 [  J3 {
    }
    1 c. v5 J: y/ Z- v' ai=s/10;7 u5 q% ~4 E. E8 X- s- `& q# O2 P
    switch((int)i)
    2 I2 ?! t% Z5 L6 ?* d- n; t0 E4 d{' Y. m0 i" |: D8 ^* }- T8 l
    case 10:
    + F. s' z; ~3 \) N) Y. Ucase 9: a='A';break;+ @5 |2 Q* q0 ~7 r; {' O
    case 8: a='B';break;
    8 w- l2 e8 L5 Pcase 7: a='C';break;+ T' c/ q0 F; Y; }# H. l% z/ i
    case 6: a='D';break;
    3 g; c0 |0 L; a3 E$ ~$ g7 icase 5:- Q4 V+ ?7 Z1 j) n
    case 4:1 y# ]( y1 q. w$ u- K
    case 2:) r- R6 q* [) [0 G
    case 1:
    9 k% P( c9 r" q# M" Ycase 0: a='E';
    : g* k  h& P1 X* }5 t}
    . r# C, W7 `: y' m$ Z0 Uprintf("%c",a);
    + X, J" g- S/ a% f# Y}
    # J' h# E# S5 u5.7给一个不多于5位的正整数,要求:1.求它是几位数2.分别打印出每一位数字3.
    # a5 F4 l# T5 ]( w+ [按逆序打印出各位数字.例如原数为321,应输出123.
    " }+ f7 ]! w; i3 m$ H. E9 Rmain()
    5 R# i* N8 b, Y( ]# p {  [) K( k: s5 @& }+ ~
    long int num;1 ]9 V9 t+ U7 E% U* F# B) B  {
    int indiv,ten,hundred,housand,tenthousand,place;1 [, x  [3 P, X( Q$ Q+ w
    printf("请输入一个整数(0-99999):");
    8 S9 i5 D( n! d! y  e scanf("%ld",&num);/ c( C( n5 z& g
    if(num>9999)
    + A2 ]9 U* b% ^) I% ]1 U" ^3 H place=5;
    $ X4 S* E" x0 Q' d! selse if(num>999)) c2 Q# X2 f0 w1 G7 D
    place=4;
    5 n; C7 B. t' Welse if(num>99)6 f. i( k( A3 v
    place=3;
    : w+ o- Q. a' @+ H+ X' A" m% Felse if(num>9)
    # d, X& F' l4 n% n  k0 m4 A1 K5 G place=2;
    9 z( o, K- T: O7 m8 S- T, oelse place=1;
    1 m. U2 ]) R: Z" kprintf("place=%d\n",place);
    / U' b2 a9 X9 m( f7 {printf("每位数字为:");
    ! Y% _9 e1 Y! D5 b5 C# r9 _5 lten_thousand=num/10000;( C; O* }$ i' F+ T* X: N/ l
    thousand=(num-tenthousand*10000)/1000;- e7 c' W7 [7 o7 F" W
    hundred=(num-tenthousand*10000-thousand*1000)/100;
    - q5 N0 Z. p" y8 r0 _3 yten=(num-tenthousand*10000-thousand*1000-hundred*100)/10;
    " G3 |1 T( l% J. `0 E0 Gindiv=num-tenthousand*10000-thousand*1000-hundred*100-ten*10;$ j4 i  P( ]+ Q: Q/ r3 U5 }
    switch(place)
    1 w# j! ]- r- o( L{case 5:printf("%d,%d,%d,%d,%d",tenthousand,thousand,hundred,ten,indiv);8 f: S5 W0 U% l, B, |3 V
    printf("\n反序数字为:");
    " P; D/ e- W$ ? printf("%d%d%d%d%d\n",indiv,ten,hundred,thousand,tenthousand);
    0 V$ B' P2 p0 o6 I! P break;8 ~) ~/ k4 N: I5 D2 N! ]& T
    case 4:printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);1 H' O7 J5 m* Q4 B
    printf("\n反序数字为:");% m9 n0 v& D# x4 m& m& g
    printf("%d%d%d%d\n",indiv,ten,hundred,thousand);: r, U9 B. |( L. [% G! Y7 c# }6 H
    break;$ V7 c; {0 x7 k
    case 3:printf("%d,%d,%d\n",hundred,ten,indiv);
      G& V% b* e; j0 u0 Y8 p. h printf("\n反序数字为:");
    & c, c3 A, K# h- u- \- X, n printf("%d%d%d\n",indiv,ten,hundred);: w1 |" }: X$ b7 j
    case 2:printf("%d,%d\n",ten,indiv);+ ]' k' j( k: U) ^8 T* u& w8 K
    printf("\n反序数字为:");% w3 O3 y8 n$ N+ b
    printf("%d%d\n",indiv,ten);9 N$ M' `9 T& Q; q, Q  F
    case 1:printf("%d\n",indiv);6 Y% Q0 \7 A0 h1 Z. I7 J" Y6 F
    printf("\n反序数字为:");
    + T. _2 d4 A- x* } printf("%d\n",indiv);4 H3 I6 h4 W# Y5 T/ B
    }
    ' {; D0 W( L" H# Q: `' T: v8 W7 Q}
    $ L7 q. \3 \% P* S7 [/ C( z5.8/ H5 Y) u3 h; V0 ]! w
    1.if语句/ A$ L) s2 V* ^! Z- f
    main()9 D' e9 m% E9 v' z7 o
    {long i;
    " ~1 U6 ?6 @3 l& W) N) }& g# n5 J float bonus,bon1,bon2,bon4,bon6,bon10;
    0 h" z0 H) D. t: G/ v8 c2 | bon1=100000*0.1;
    1 h. O. s- c9 a: P bon2=bon1+100000*0.075;
    4 Y% P$ n) q, T- N! W bon4=bon2+200000*0.05;2 s) ~7 ^! x+ C" m
    bon6=bon4+200000*0.03;: F$ r& C, w0 A" V1 a7 K9 `
    bon10=bon6+400000*0.015;9 {3 C! k- W" j/ K8 W7 ]
    scanf("%ld",&i);
    ! Q$ K/ `6 }6 e; R6 E- ^ if(i<=1e5)bonus=i*0.1;
    , M: c$ ?% b$ a6 k else if(i<=2e5)bonus=bon1+(i-100000)*0.075;8 v; r. I5 x  J4 v; S. b( p
    else if(i<=4e5)bonus=bon2+(i-200000)*0.05;+ _7 Q0 K9 S% Z$ k9 o6 K6 _
    else if(i<=6e5)bonus=bon4+(i-400000)*0.03;
    ; p$ ~5 q( X4 `% f else if(i<=1e6)bonus=bon6+(i-600000)*0.015;
    4 x; S; }- j- S& b- w  D else bonus=bon10+(i-1000000)*0.01;9 [( J9 n2 ?. E& W1 n' u& x. O  R! j
    printf("bonus=%10.2f",bonus);6 q: }8 I, k1 c: _
    }
    ; q  T0 m' Q( \: J) z) e( N用switch语句编程序. s) L; g2 U6 v$ H6 K* v" t$ i
    main()
    6 a+ c  d& h4 S& U8 s{long i;6 K& c( S1 w# {8 H+ ^
    float bonus,bon1,bon2,bon4,bon6,bon10;- R, K& ~  ^& |, [5 m- T
    int branch;; Z2 f) ~( l$ C" b
    bon1=100000*0.1;$ B: Z+ S; _- ]
    bon2=bon1+100000*0.075;
    * S6 w, U( {( I  N, I& u bon4=bon2+200000*0.05;
    8 m4 h; J( I- Z" C bon6=bon4+200000*0.03;
    5 i/ h! C1 _3 ~2 T1 R bon10=bon6+400000*0.015;
    ' q+ U: c! o" m0 r; @7 u  o2 N scanf("%ld",&i);
    . G9 X, t! N1 `' A branch=i/100000;
    + M( `9 f) U8 M% R% G. b* M if(branch>10)branch=10;
    9 q1 a& H, [8 W& A% x$ p, T2 u5 h switch(branch)
    0 H0 y3 H) A" M) K! w {case 0:bonus=i*0.1;break;
    8 J" {4 Q& |$ {9 p) T4 _  case 1:bonus=bon1+(i-100000)*0.075;break;1 o+ \: O" Y0 x3 N
      case 2:
    : L' ]+ W7 u  A7 s, N. h5 Y  case 3:bonus=bon2+(i-200000)*0.05;break;6 B+ `/ p! ]( @  R. N* c$ P2 T) ~
      case 4:4 G/ _6 F$ g$ p" @0 L# u: `' U
      case 5:bonus=bon4+(i-400000)*0.03;break;
    # i. M# Q1 z! q2 |  case 6:! F8 s$ @: L$ N9 Y, Z
      case 7. C" k# y0 Q$ g  N( u, ~* U
      case 8:$ [( l, l: C& Q" z
      case 9:bonus=bon6+(i-600000)*0.015;break;
    ( B& |" \6 m! Q$ f. d) m  case 10:bonus=bon10+(i-1000000)*0.01;
    8 r" }0 T/ r0 g7 a  }
    8 X9 I& S% y: m* I! M printf("bonus=%10.2f",bonus);$ l, u0 L5 R: X
    }     
    9 m. E6 P% p1 V& b5.9 输入四个整数,按大小顺序输出.
    $ E+ R0 h$ B' y: Wmain()
    6 |) e0 Q3 m# C) K6 `  {int t,a,b,c,d;
    ' c+ @( B# I3 [  printf("请输入四个数:");5 h% ?, `9 V  c! o$ W$ c
      scanf("%d,%d,%d,%d",&a,&b,&c,&d);0 l7 G# J3 w0 j/ g" Z4 U
      printf("\n\n a=%d,b=%d,c=%d,d=%d \n",a,b,c,d);
    1 {8 k- w8 W# T  if(a>b)  `0 v! W0 f% [
    {t=a;a=b;b=t;}4 ~" W1 {4 ]2 w+ L9 l- Y
      if(a>c)' b, u) B" [: ^( ]% s0 b( J7 e; r: w. g
    {t=a;a=c;c=t;}
    : i7 T% Y# i- V' c1 b  if(a>d)
    6 y* U( |/ L4 J' ]& ?: m {t=a;a=d;d=t;}( Y5 R0 h" m0 V+ d$ j, g; E
      if(b>c)
    " h0 g6 A, a9 J: n! y {t=b;b=c;c=t;}
    " d2 t# H1 A, x0 V# e  if(b>d)
    : W9 D  w, e/ ~8 G! [ {t=b;b=d;d=t;}
    2 o) L8 B  S/ E* y) M! D4 Q  if(c>d)- x/ J' F# d0 {  f' T
    {t=c;c=d;d=t;}) |+ S  _: R1 n4 V3 r# T
    printf("\n 排序结果如下: \n");  g7 F6 }) ^: N1 L
    printf("   %d  %d  %d  %d \n",a,b,c,d);! E) Q2 m- G: }0 k, x. v
    }# J% p$ w3 `# t. G
    5.10塔, t; j3 N$ o$ `/ Q& A
    main()
    0 i* x6 H/ C# d$ C! l. O3 c{
    3 ~/ b; D/ z/ `- eint h=10;% g4 H: R. b" h3 i& G9 A
    float x,y,x0=2,y0=2,d1,d2,d3,d4;; M; m' s; B/ i  a  a* @9 B* ?
    printf("请输入一个点(x,y):");
    , V' i  J' ^( J6 R/ d" qscanf("%f,%f",&x,&y);
    $ [3 h+ f0 x4 j" M: _: C2 w  j, Td1=(x-x0)*(x-x0)+(y-y0)(y-y0);
    - b) I5 l( ^  D9 ]d2=(x-x0)*(x-x0)+(y+y0)(y+y0);% H/ h) F( b/ i. k- P! [
    d3=(x+x0)*(x+x0)+(y-y0)*(y-y0);
    7 ?1 G! |8 p/ G5 cd4=(x+x0)*(x+x0)+(y+y0)*(y+y0);7 C9 K8 S) G- G" k
    if(d1>1 && d2>1 && d3>1 && d4>1)
    : s5 \: h* i' ^& }! |' N5 Jh=0;+ ?8 L9 z: G+ p
    printf("该点高度为%d",h);
    * Y* u& O4 U5 @}
    ( E- K7 [" Q( C7 M第六章 循环语句
    2 I/ B3 j8 P) i8 a' y6.1输入两个正数,求最大公约数最小公倍数.$ {7 F2 Z: @  M' a
    main()
      B9 p/ }8 n6 h' {9 l( N3 E3 F{3 V$ Z) }4 A( S/ t4 S+ Q
    int a,b,num1,num2,temp;% x* Q% J: Z3 N
    printf("请输入两个正整数:\n");
    , q4 ?. i  W* S! m7 G, y! ?scanf("%d,%d",&num1,&num2);% z/ ?5 q  l' e
    if(num1{( P+ F4 E3 Q7 X: C/ u: {
    temp=num1;
    . p& l; d  J9 \) y& @+ Znum1=num2;2 g& H  C9 @: `' A' W
    num2=temp;5 c6 y* Y% \2 _' s/ w
    }
    3 E9 Q2 l7 W; A' |/ e- ia=num1,b=num2;
    $ g. n6 [6 l6 `: m2 N! [* Zwhile(b!=0)" f1 A6 ]! v1 ?* {8 A& c" L
      {
    ' M# Y; z1 ?" i9 r3 @  temp=a%b;7 A) V5 i( D  Q$ z1 {0 q; a
      a=b;
    1 `' s* ]3 \# c2 k  J  b=temp;! v7 A5 c: @0 A/ u. ^1 k
      }/ l0 i7 ]' Y8 H) y  x/ u1 Z. Z
    printf("它们的最大公约数为:%d\n",a);
    * N& P$ m5 E9 |) ~; _printf("它们的最小公倍数为:%d\n",num1*num2/2);
      u: ~( Q* a1 l4 D9 N: h7 ?) w}
    6 P; R# n0 j' D* e0 e6.2输入一行字符,分别统计出其中英文字母,空格,数字和其它字符的个数.% w: A' X. t; N4 d5 ?3 ~
    解:
    3 b6 `; N6 j* S4 L$ d- p& B#include <     >
    ! U2 |! w) M0 C' Bmain()9 ^1 q/ t8 T) R. f$ r+ x
    {' r- p  f5 Q# [& K( j/ h, F
    char c;8 P: W5 }' q5 l5 o3 g
    int letters=0,space=0,degit=0,other=0;
    # W7 `/ |7 D- G6 t: xprintf("请输入一行字符:\n");% g: t9 _8 U4 g+ n2 c" y2 V( J4 T
    scanf("%c",&c);
    1 B$ |( G5 o1 b. R3 P# i% o' ?while((c=getchar())!='\n'); x( z) j" |4 q; y2 b
    {! @) l: G  ]6 Y, i  u* B
    if(c>='a'&&c<='z'||c>'A'&&c<='Z')
    % g( W! p+ U  L/ q: kletters++;9 z, C! y" D7 ^$ p# K4 V; @
    else if(c==' ')
    / R& B/ _, N" g/ d  W# V$ yspace++;6 U4 o  M$ {6 [, _) V
    else if(c>='0'&&c<='9')
    . h$ @1 f2 s" x: p, c4 N1 adigit++;. w$ @6 }0 i; g8 ]0 a4 J6 B4 f
    else
    & F) T4 Y& G3 I. A2 }other++;
    . W4 [/ g" y2 t/ U1 `" `}
    ! D8 _# }- u" Z; Qprintf("其中:字母数=%d 空格数=%d 数字数=%d 其它字符数=%
      i" v1 l! a0 x1 Rd\n",letters,space,
    " _5 L8 _* e; l2 b- S. v4 V9 m* Cdigit,other);5 e& j9 E/ n; y
    }
    ) j! |! i6 w- ~+ G+ ?. p6.3求s(n)=a+aa+aaa+…+aa…a之值,其中工是一个数字.
    * n5 h# w& S% ?9 o4 h+ |- @解:
    , p* R4 d! o; Q6 I, Qmain()7 M: f. z8 a! p6 s# P7 F
    {
    7 |4 a3 B) T( e9 Q+ i; gint a,n,count=1,sn=0,tn=0;( f' {& s# ~' i5 J2 O
    printf("请输入a和n的值:\n");
    ; |6 P  h3 m* d- I" z# J; |2 _scanf("%d,%d",&a,&n);
    7 W4 P6 \% u' C, l6 h8 f- C  G: xprintf("a=%d n=%d \n",a,n);1 u/ x- g( P( A& |$ W0 W6 Q/ i, C
    while(count<=n)
    % {  r( x9 ?& x: p% i{
    ; a' v; `* I' Utn=tn+a;
    5 U3 U; M! j- p5 Qsn=sn+tn;
    , O- r. N- P7 T+ ua=a*10;
    9 T) F$ Z, k, [4 l; k$ A4 j++count;' ^" t" J3 W) Z7 ?' V
    }
    ! D9 b; }2 r; x# S& i& aprintf("a+aa+aaa+…=%d\n",sn);3 x' _- m  E! h  b  E
    }; @2 d$ O; g% V: q
    6.4 求1+2!+3!+4!+…+20!.
    ; j# W/ b: x7 A9 g& x! A0 O4 J2 Ymain()$ k  X2 s3 {8 _& U+ m5 |( T
    {
    ; V$ p6 y/ n1 C5 G8 I7 Z- _$ k) vfloat n,s=0,t=1;1 w* ~! h4 |1 R/ M0 @
    for(n=1;n<=20;n++)' \+ ]1 ^' P: E3 \; l6 S7 r
    {& {" n4 U$ O& C& H: `) g9 V
    t=t*n;' B2 z, X. r: r- H
    s=s+t;/ _7 W3 F8 ]7 t& E" v' ], U" b8 A+ G
    }
    6 j: S3 V; Y  Y, \, ]# t5 a0 f4 Wprintf("1!+2!+…+20!=%e\n",s);
    2 w# M' q; ~; G}/ |6 W1 u* c) u  u: Y
    6.5 main()! [, f0 ~! v% x( o' J5 U
    {
    3 n2 G7 l0 P5 x2 P! i* y  o5 Rint N1=100,N2=50,N3=10;
    : H2 @& V" M/ G/ yfloat k;
    , E! n2 m& p* ~8 q0 E6 [float s1=0,s2=0,s3=0;
    ) Z# `" q" b2 D# c5 _* cfor(k=1;k<=N1;k++)- ]  O- ~1 U. \
    {
    % l, \4 y' Z# K9 Cs1=s1+k;
    # D; y& W- e. {* L3 E7 n+ [' K}! x% x/ Y, w# t' n' o
    for(k=1;k<=N2;k++)
    . c4 M& c% x. ]{) t4 R" K3 h  J9 {; I  P- L/ [9 t
    s2=s2+k*k;6 ^" b! P4 @# f: B) n
    }7 H& b( U$ U0 M# }! i$ j: s$ d
    for(k=1;k<=N3;k++)
    9 A& j9 R, `: S( T{( W6 Z, C% i$ s: T: W* Y- z0 @: n
    s3=s3+1/k;
    6 E8 J; e. ^5 u$ ?# A}
    # O6 X, \/ R1 m# m4 l# Cprintf("总和=%8.2f\n",s1+s2+s3);: r8 H$ X  z2 N2 N0 O- I
    }
    1 T, N" p) U0 M: m* u: r6.6水仙开花/ f  i& Q8 O- Y, f" T
    main()
    ! g+ `0 }5 Z6 ]9 V9 p/ u; O* n1 q{
    . }* M0 ?; i6 T- C( Hint i,j,k,n;2 S& @7 ~$ |4 C3 G) d
    printf(" '水仙花'数是:");
    " F* V( {* t: qfor(n=100;n<1000;n++)
      Z+ G- v1 u0 z$ e2 W1 \& t$ t{
    , U: A2 s! z( A$ \* a3 |i=n/100;
    9 N' i+ Z8 T3 sj=n/10-i*10;7 k0 Q6 |! d  O! r9 A2 |
    k=n%10;
    9 S9 Z) i5 [. }3 D% @/ v- P  N& Tif(i*100+j*10+k==i*i*i+j*j*j+k*k*k)/ E/ Y  H  C. J3 h3 l; j, g; s
    {
      a* u5 z4 v  }& eprintf("%d",n);
    7 |$ E; T2 @8 u3 ~, S) s+ p2 K}
    ( t. j" F7 W. N/ t& K}5 G' M: E! c5 _5 h2 Q$ w# A. G
    printf("\n");
    1 \3 @- g1 _6 z  D+ \" Y}8 e/ ?6 k! f- L4 N4 @2 [& |
    6.7完数
    * {1 [/ d2 j  }# s5 ?/ ]' P8 Kmain()
    6 F! {/ c# z, P0 H#include M 1000
    . q4 J, h# z3 Z1 L3 a! z7 smain(), [% t8 F' u/ ?2 M, ?" n0 ~
    {
    . ~7 ]; \0 o' l$ |8 eint k0,k1,k2,k3,k4,k5,k6,k7,k8,k9;
    5 R5 ^" a7 ^( E2 Z, \7 S7 Y$ lint i,j,n,s;
    0 `! \  t$ q- d# u+ pfor(j=2;j<=M;j++)
    1 t) a- J" _3 h9 z6 I& u{
      I2 q8 D% i& X( f- nn=0;
    ) |- l5 A8 g: |, h1 ?2 o1 Xs=j;5 h  X' `& O8 J( g4 ~5 |, F
    for(i=1;i {
    & i2 x7 D4 H3 s3 A* g# vif((j%i)==0)
    : b5 e- X2 v* P3 U4 R  {
      h, T- {7 t2 k1 X( d* G7 z0 J    if((j%i)==0)3 B' Q' I3 m; D: ?
          {  V; x" ~: l; Q  I5 s
         n++;: T, ?. G8 J9 Y5 T7 Q% I: O+ O
         s=s-i;
    # y" |) Y- u6 p  t     switch(n)
    & a; u# z* d' n; \( [      {
    : d% d0 X& }7 k: s       case 1:
    * u9 o4 l3 y& }& R* E( ]# v  L k0=i;9 y3 y" Y" Y( ^  y* _$ s
    break;: X' {0 O1 x! i
    case 2:3 H5 L. E6 M4 B5 S0 _8 d
    k1=i;/ t1 a. ~* h2 k: r$ D! h- H
    break;; W1 d  ~+ n8 S$ h/ W0 L
    case 3:
    7 p2 n% K& V7 Y' N3 H2 P9 d k2=i;
    3 }' l4 w2 P5 l* A break;
    ( S: u# R# M6 Y case 4:% \/ {3 d% s1 p2 M( v
    k3=i;) V: C- T9 `4 m5 Y: r3 J4 F
    break;
    . }; P" b  v) J3 ^ case 5:
    4 `( S( \7 ^" U$ s% }5 V7 Q+ i k4=i;
    ( N0 f7 p, a$ c! p7 a# z! G break;
    * O' E& \; G3 a  Q) u  K- { case 6:- F" R1 u- {$ H1 F( O1 {0 F
    k5=i;1 \' S2 Y4 H3 P% C% P; a0 h
    break;
    * q7 w! Y+ a* k1 B) j" b case 7:
    - K7 |! O0 s( Z# @& A3 j k6=i;$ G! A9 ?+ A- `+ d
    break;1 a1 M8 a3 a3 |, C& l
    case 8:
    9 R5 _+ x3 j, q  o( | k7=i;3 m4 S. ^% h) M
    break;
    3 ~0 a; y- s# F+ b- Y- q/ j case 9:
    - B$ Q5 W$ q" ?4 G- S k8=i;
    7 a3 ]- F4 s' o: q% Y5 z break;
    5 h4 F& E. r  L; A5 o$ ?6 g. A: ? case 10:3 x1 D2 \, G2 {
    k9=i;
    ; R8 Q- b- T6 H$ `6 V, p break;6 H- ]* ~! N* C0 `! `
    }
      A0 d/ z. u0 g      }
    # c' Z, v# `4 ^0 s' I9 a/ L   }2 v; v% {. }! P! T4 d- v
    if(s==0)
    5 s) O# [, R4 P% W   {- t  K/ \9 g. s: {( R8 ~' y5 ~1 U
    printf("%d是一个‘完数’,它的因子是",j);' C% s0 }" U4 ]2 @' c( `7 @0 G( ?
    if(n>1)
    ; Z0 k- t* V- u% `: ^, g* x  printf("%d,%d",k0,k1);
    ' x5 E/ K" @1 L: P% m3 fif(n>2)4 g" T9 m5 |% E  d
      printf(",%d",k2);
    0 M3 g% i$ q. W4 a4 }3 @2 Rif(n>3)0 u! g& Q0 G& j& r( E* ^) ?7 l
      printf(",%d",k3);
    / u2 I5 m4 T3 F- qif(n>4)& G8 k* I$ i6 A$ d' q9 Y+ n
      printf(",%d",k4);
    + G( l2 R6 z% M; Mif(n>5)
    : B2 y) P& J( f5 U  printf(",%d",k5);- j8 N* N3 S% e. p% ~- g# U
    if(n>6)$ V' w. P& r3 o
      printf(",%d",k6);: H4 b7 h4 A- ~/ Y0 j0 T
    if(n>7)+ O1 S+ p$ ]0 h2 s
      printf(",%d",k7);9 E% [6 F4 K1 c. A
    if(n>8)
    0 m) \1 y. `* t  printf(",%d",k8);
    * c: h) S7 e" \/ e/ A5 N, e+ ~2 t0 Lif(n>9)( z) m; D* d+ H
      printf(",%d",k9);
    ) G" I# N0 b8 d8 E0 G/ d, n$ u( `% g) cprintf("\n");
    + S; E1 }% _4 ^' i* M; H1 o( K' m  }% |. \' H8 G/ K& a" o
    }- C( R& u7 O1 u# `7 z+ J
    方法二:此题用数组方法更为简单.
    7 V# b9 z  r- Dmain()
      y1 Z/ z4 }: z{
    " M( N5 J& s- f+ p* Q% _: _: a# N. Tstatic int k[10];
    / O# T- o+ B4 P+ `! h+ e# a1 Jint i,j,n,s;! x$ q+ H# Q" b2 c" c5 {4 P: w
    for(j=2;j<=1000;j++)2 x( y! ]( ^8 f7 H% B3 T9 N
    {% x6 g& G+ r' B2 @) A: Q8 }
    n=-1;
    . P9 ?. i- _- ^9 v' vs=j;
    3 q" K  K/ J3 Q+ }: F. [2 Hfor(i=1;i{. j* `# L7 M  u2 x- }
    if((j%i)==0)
    0 E) a1 Z6 c2 L9 a# [- |{
    & S2 ^* q2 ~# j" _, Xn++;
    3 d6 B# x8 b8 o- o* Ws=s-i;1 C: n% u% R2 j0 u0 S# `
    k[n]=i;% }  z' B, A/ @8 Y. ]
       }
    : Q$ A: S; p8 F2 ]2 I( `9 Z1 _# o  }
    6 ?5 d( ~' w+ k. h! i! w$ jif(s==0)& b$ B# H* f6 d: r1 J1 G3 H
    {  X: h/ c" @+ W9 U
    printf("%d是一个完数,它的因子是:",j);
    6 X5 `0 p. I5 H% k1 kfor(i=0;iprintf("%d,",k[i]);
    3 z9 x" A+ X6 y7 L( o  A% kprintf("%d\n",k[n]);
    0 z8 P) g+ [3 k2 J) J+ W5 d}  }) N2 h% a! w
    }
    ; ~6 T. y$ _" N8 S+ Z6.8 有一个分数序列:2/1,3/2,5/3,8/5……求出这个数列的前20项之和.
    5 ^* t' y! x# `. n" d" U/ J解: main()) d% ^- f! r; j# o- H
    {
    8 l, d) V1 `4 I+ a  Xint n,t,number=20;
    # V+ }- h: f4 W7 b4 m( _$ dfloat a=2,b=1,s=0;
      J% q6 W' r# Q1 j2 l! dfor(n=1;n<=number;n++)
    ; y2 P( E5 V6 t% e' c{
    4 n; H! ]4 U' e! N, T, l& D2 ns=s+a/b;
    + U4 p6 v  R; D' ^) |t=a,a=a+b,b=t;# ~( g2 z# l4 l# {3 i3 F" w
    }
    " i8 J( U& W( S8 {2 Aprintf("总和=%9.6f\n",s);
    5 c2 @, [: b5 T7 F. I. P}
    3 [; U0 ~# t2 ~5 s( _- y) }6.9球反弹问题+ U7 N# O1 b5 ~, S# f) m/ J* A" k
    main()
    3 j; e! v+ V6 }/ u3 o{% n% n5 R$ w9 _1 w) K$ O- m  D/ I& e
    float sn=100.0,hn=sn/2;/ q9 ^- ?! b% `+ K  U
    int n;, j: Z: l4 ^, o0 N8 R8 R  {, o- B
    for(n=2;n<=10;n++)
    4 o- C6 x' J# J{# D* U' h- f  ], [, W6 F: f0 e
    sn=sn+2*hn;/ u9 B, `, d# N5 K2 V& O) Y3 Y/ p5 w0 [- L
    hn=hn/2;
    9 B3 M- S5 q' ~& M% u}0 T- `3 H) o9 {( G
    printf("第10次落地时共经过%f米 \n",sn);
    ( Q" n, D$ O- H- [0 \: Lprintf("第10次反弹%f米.\n",hn);! ?. [4 H* _: r4 D* D
    }
    7 O  T) j) ]! i! A6.10猴子吃桃4 d  o  r4 _) S5 k3 V
    main()
    3 U! q) k. n' m: |+ T5 k7 p{" g# n8 W; ?! V4 O+ h! H' `
    int day,x1,x2;) O% B! [+ v, m' I  Q5 E4 x
    day=9;
    . x! l: n/ t2 v5 W5 R% Xx2=1;$ i) t; o* @! H% a
    while(day>0)
    $ n3 T/ ?2 o& Y5 H{: A) t$ ?2 ?1 V  j1 U$ n' j
    x1=(x2+1)*2;
    + b; C8 l2 g' c7 O- l% m* @1 Rx2=x1;* }0 u7 p6 j6 g5 q6 Z3 {! D
    day--;1 {! |) u4 ?$ {, c3 [* X' T
    }
    7 n# P6 E, a9 Pprintf("桃子总数=%d\n",x1);
    ) z/ l; x) i2 H& h( ]  n1 Q}, h) h+ v1 b# ^+ m+ _3 B' n

    # x/ V: j7 b& c" p# ^; N6.12
    4 y/ [" X5 w# f& e1 ^#include"math.h"
    - ~" k' `# Y8 c7 T8 n( @0 x! k8 Amain()% U6 F% _3 [$ N1 |4 a- e
    {float x,x0,f,f1;
    0 t& b4 G* i9 z* E: e" n5 Z x=1.5;
    8 f$ T% b2 d( L) ~! r+ f do
      m2 W3 M( U1 ?% g  }   {x0=x;; @# x. H% ]' l+ |! o
        f=((2*x0-4)*x0+3)*x0-6;" r3 @! ~* W( x# w
        f1=(6*x0-8)*x0+3;
    2 H0 J0 i" i. F# {4 d    x=x0-f/f1;) H9 k- k/ J5 _
       }' n$ X7 V; }5 }) T
    while(fabs(x-x0)>=1e-5);
    3 ~9 t$ M9 i' R8 O2 K2 L0 z9 Z+ N printf("x=%6.2f\n",x);
    & u# q, [1 {: j8 M) {}+ a3 k6 `& C" M5 S& N/ u9 L
    5 h' |4 e# `- U. d* u
    6.13
    4 T. M! ?' \7 B2 ?3 d2 F# q* {#include"math.h"
    ; N. j9 r2 W. G) Amain(), ^  y' Q( G( K, z2 ]* {
    {float x0,x1,x2,fx0,fx1,fx2;
    . x) I; h# U* ]1 @$ J6 x; L5 l do
    1 Y" H8 x% K/ Y# A9 ]3 g   {scanf("%f,%f",&x1,&x2);
    ! x$ R6 H- \# }; b4 L    fx1=x1*((2*x1-4)*x1+3)-6;
    5 s" p, D* w8 e9 j- W) H    fx2=x2*((2*x2-4)*x2+3)-6;* d+ H! p0 Q( d& v
       }
    1 _1 d- e! k- J while(fx1*fx2>0);
    ; N. i# b% c! R8 I" x do
    % M  E: k4 q- r! x% X' h! D. D   {x0=(x1+x2)/2;
    ' {; U6 a: |+ @    fx0=x0*((2*x0-4)*x0+3)-6;' N( K% A# i" e) x. I3 Z: u
        if((fx0*fx1)<0)
    : m5 ~5 a7 U/ c8 x$ x' {      {x2=x0;1 V) Q5 R) J- _2 V- ~: s: U
           fx2=fx0;$ K# H) r1 e0 Z0 L' p! a' D9 Y4 A. T
          }
    ( S9 p+ }2 [% k- _6 A  I    else
    * |) G% l) }4 M2 Z      {x1=x0;
    0 |5 |) T$ \/ u       fx1=fx0;
    # F) ~' E  A/ t/ d# e      }; p  F* G9 U% i2 A  e/ y5 P, {
        }* a4 E. Y5 j$ d  k" j' q
    while(fabs(fx0)>=1e-5);+ F* \, D4 v4 _
    printf("x0=%6.2f\n",x0);
      j; j' Q; w! S2 k# S( h}
    & }: \( O. w, ~$ Q' b6.14打印图案& _' l! ^6 j9 Z1 }! X( @6 t- ~
    main()+ `. @& v# E  s
    {int i,j,k;
    8 j5 F, `5 ?9 A2 x7 a8 @8 [ for(i=0;i<=3;i++)  X+ X9 j  I0 ~: ~$ H$ @! ^/ [
       {for(j=0;j<=2-i;j++); R  N; @3 R7 j' I
          printf(" ");
    . i5 q$ x, [; h1 }& \- `    for(k=0;k<=2*i;k++)
    ( j* P* }; M" q3 |* ^; @  T      printf("*");
    3 E7 T) e" J' a, K. d    printf("\n");
    # a* Q1 c# B' N+ }: E7 j1 J6 D    }% a- L* X) U8 C: s
      for(i=0;i<=2;i++)
    : D+ h# o, h8 j/ Y   {for(j=0;j<=i;j++)& }2 }  P5 s; y+ U' W' I
          printf(" ");9 {+ B3 M' b) G  i) l8 u
        for(k=0;k<=4-2*i;k++)) u: _' s: z4 N2 S2 Z6 q+ ]
          printf("*");+ ]0 C1 n/ c7 b3 o" v& N
        printf("\n");: f% r' e% ^! B0 x6 X$ l9 I
        }  Z7 X1 ^: \* g( V# t+ }6 @
    }6 [6 W: F8 H  b" g4 S) X6 a# @
    6.15乒乓比赛- v: o- O# C0 m8 L  z" b
    main()% O; C3 A( q+ u# d- }
    {7 k# F6 ?+ ~  @. U
    char i,j,k;4 n) K- J$ z4 i! W6 |7 ?
    for(i='x';i<='z';i++)
    9 b9 F. f: O, @' ?# v& yfor(j='x';j<='z';j++). {  ?; ~; O$ k! P: H' x" |
    {
    . \( f" k$ C" o1 t# Y3 F' Bif(i!=j)
    4 y/ J$ p' j& P4 i/ lfor(k='x';k<='z';k++)3 j( A* ]2 E( s" f/ [3 Y) v
       {; d+ I! j, f& h3 K0 r* T, W
    if(i!=k&&j!=k)4 M$ _, m" I) t4 t; s0 o4 b/ p
        {if(i!='x' && k!='x' && k! ='z')8 Z. @+ D  [2 A% x  l* t
    printf("顺序为:\na-%c\tb--%c\tc--%c\n",i,j,k);
    * J* A, B! w" J    }) I2 t% O. ?/ G5 X
       }  l4 b& W6 x9 |/ |9 Q( J
      }/ Z% Z+ b& c. Z8 g
    }
    / F4 ?- J# M3 J) ]C语言设计谭浩强第三版的课后习题答案
    : R5 a9 E; f$ P( K( O: O$ o7.1用筛选法求100之内的素数.1 m- J! D: q$ r) i
    #include' ^, j' J0 ]9 g1 K; b# f
    #define N 101% g: S! C/ s9 j8 w- i( j2 Q# O
    main()+ H  |( `+ z) M/ I+ H: `7 ~
    {int i,j,line,a[N];
    / D3 m( o1 I) R# I9 [! [for(i=2;ifor(i=2;ifor(j=i+1;j  {if(a[i]!=0 && a[j]!=0)8 r5 M* y* n5 w9 h1 e( N1 X
          if(a[j]%a[i]==0)
    0 P7 X8 I* t' c7 C; Z a[j]=0;2 a7 W& h- F! o! D& Q
    printf("\n");4 ^. J) ^# i% i$ ~% M
    for(i=2,line=0;i{  if(a[i]!=0)
    . W* k: _4 j; @9 E- _" e+ T# P% Z% \   {printf("%5d",a[i]);1 b8 H7 L, x4 l  n: D9 `8 U
    line++;
    8 T7 T( W& x/ C1 i# C6 n# j if(line==10)
    3 z& [) d. S( D. g/ B5 C" p {printf("\n");
    ) |( }6 b' U. a- P$ j line=0;}
    7 j% o. X' _5 a   }% y! m2 }* ~1 {7 ^9 d+ _! E" x0 d
    }( v' y, l; z- E' Q. O( |0 _/ r
    7.2用选择法对10个数排序.7 a2 g/ y0 v: W3 [$ l
    #define N 103 g5 G$ r9 r9 n
    main()
      J+ M5 d- W$ L{ int i,j,min,temp,a[N];
    2 H# x1 p5 r: ^1 }$ wprintf("请输入十个数:\n");7 C% D4 S8 x- n2 y6 ?
    for (i=0;i{   printf("a[%d]=",i);' O) o, `& p( I( w/ W7 `6 u- [
        scanf("%d",&a[i]);
    " \2 Q* t2 m/ X% e# a+ {/ r}, l; A& r# N  L8 R& R& R- J9 F% k
    printf("\n");
    8 F1 Y3 N4 i% Nfor(i=0;i  printf("%5d",a[i]);) }* j' H+ P* g! i
    printf("\n");
    4 |$ z2 c5 v  a& g7 bfor (i=0;i{  min=i;# _1 }2 s6 }7 L  }+ N( g! J9 ?5 I
       for(j=i+1;j     if(a[min]>a[j]) min=j;3 P0 h9 \5 T- _- A
         temp=a[i];
    4 d& M( b9 y3 k) K# E     a[i]=a[min];5 ~9 {# b  T! y& T! q3 D9 U, y
         a[min]=temp;
    3 D/ M" `# D4 E}  E5 U+ Q- A9 i1 D
    printf("\n排序结果如下:\n");
      P/ p: ~- T) k6 efor(i=0;iprintf("%5d",a[i]);4 h' G$ ^  O+ W( H+ R0 K
    }
    & W! G; ?. A, C: s4 c# o, [7.3对角线和:, W& Z1 U5 i+ n& _1 @) ?) y
    main()
    2 ^, N: @4 i, A2 f{) B  x$ p5 H( z' z2 z9 @! j( ?
    float a[3][3],sum=0;
    % ?, M# k/ N6 oint i,j;
    / V1 z  g. y6 k9 a' F( {5 ~printf("请输入矩阵元素:\n");- O* w  Q* m# p+ X+ ^7 ^
    for(i=0;i<3;i++). X* G4 D. U& y0 R0 _  r* o
      for(j=0;j<3;j++)6 k: j% i0 `# `
    scanf("%f",&a[i][j]);2 W! w3 @& g; K& ~/ ^" R
      for(i=0;i<3;i++)( x  z* j  \! f
        sum=sum+a[i][i];4 `" `5 d8 D" s2 K* u! E( Q" u
        printf("对角元素之和=6.2f",sum);  G1 W( {/ K. a* b
    }
      h/ F1 P* |  s2 D0 r7.4插入数据到数组
      T5 W6 j5 E, n2 C% tmain()9 j- P3 [% J; `. ]8 U
    {int a[11]={1,4,6,9,13,16,19,28,40,100};
    * c8 D  \! L9 p) {8 G- Oint temp1,temp2,number,end,i,j;* @; o" z  y6 x3 C( `
    printf("初始数组如下:");, r) [" ^$ ^5 |
    for (i=0;i<10;i++)
    2 ]" y' _& F# m4 i# m+ }/ }. Pprintf("%5d",a[i]);
    ) j. m) Y) |1 L" vprintf("\n");& Q$ g2 p# I" }7 [7 c
    printf("输入插入数据:");
    / C0 H" q7 M! Y+ s3 R6 Zscanf("%d",&number);4 |# Y; `( Y2 D6 o- a) n! j
    end=a[9];& x4 C- E! u/ q: {, i7 Z
    if(number>end)5 _; u$ V7 a. m5 H! b% |8 F
    a[10]=number;
    $ x6 W, w$ I2 p2 ~else, j0 Q, j1 w/ p7 S9 v
    {for(i=0;i<10;i++)
    & C4 z( a3 A/ @: \9 U- L7 E) W    {   if(a[i]>number)9 S* ]: x0 _% O
    {temp1=a[i];
    - u5 y8 b5 v* M* B% o a[i]=number;
    ' B' r5 Z1 }5 B3 b1 q, Q for(j=i+1;j<11;j++)1 s. a  K$ v) M3 Y
    {temp2=a[j];
    7 y  e, X# K, p! G" { a[j]=temp1;! c  ^( z" `' Z; }- X2 ]3 u
    temp1=temp2;! V! M% H% V' M1 h+ W& B9 h
    }
    ' Q5 z" ?/ r* A% W6 M* w break;
    $ q8 @# L1 z  q- B }
    - c, n' Y! _) U, a' X     }
    ; H2 t7 f! G4 v- s* C8 n }
    ; |1 k: ^1 ]' t( }5 Q8 m for(i=0;j<11;i++)' q, O( b3 J6 Q) g  k
        printf("a%6d",a[i]);. _8 d4 M! g6 N- X
    }
    ) o. H7 z4 G. q4 k; T+ D' h7.5将一个数组逆序存放。
    8 i1 l# G3 o- L( \( d  K#define N 5
    3 h- v' R# Z' S* L: n3 }8 emain()
    ) s1 H* o  ^! F% f{ int a[N]={8,6,5,4,1},i,temp;) i2 q% P9 G8 m
    printf("\n 初始数组:\n");
    , l2 C/ U6 ]% j4 f' K: Lfor(i=0;iprintf("%4d",a[i]);
    * d" i+ }. T7 H7 s- a, X! Z" P7 M# zfor(i=0;i{  temp=a[i];
    5 m1 b8 l8 x3 M: n% e   a[i]=a[N-i-1];& {8 g5 q7 J0 J$ s$ F6 v; m
       a[N-i-1]=temp;
    : z$ u+ Y& K, D3 {}
    2 Q1 H& j' _% X7 H' b3 M( wprintf("\n 交换后的数组:\n");
    % H' B' k$ w3 I  @for(i=0;i   printf("%4d",a[i]);
    / E( F/ ], @0 t, B7 {& d3 I( o}2 t$ ?' e9 G" p6 P5 x. N
    7.6杨辉三角
    / h2 T+ v4 o  G0 c#define N 11) k/ j; ?" |& Y4 v- M) X3 ^
    main()6 I6 t6 }6 l7 z+ |) u
    { int i,j,a[N][N];7 L* g- q# _/ q0 a
      for(i=1;i  {a[i][i]=1;
    : C; B! H, ^4 A: A) g& L, o6 B   a[i][1]=1;& g* j; m6 u$ v4 l
      }
    3 Y; y5 C0 ^) A8 W! F  for(i=3;i    for(j=2;j<=i-1;j++)) U1 ^# S3 }# W# k
    a[i][j]=a[i01][j-1]+a[i-1][j];
    6 m. N6 I3 r  w4 k   for(i=1;i   {  for(j=1;j<=i;j++)3 S' }" m* U2 |$ O2 X4 I
    printf("%6d",a[i][j];
    0 F3 |7 R% ~. K. H! N8 R7 B, F/ [ printf("\n");
    , O- g2 i9 s) g3 G7 H5 i1 X, X    }
    . Z* y! |& y3 B9 H, f0 h2 E    printf("\n");2 d4 w# |3 Z, U: B3 v# V
    }/ w* c+ H4 t! g
    7.8鞍点
    * f6 u2 Q! p/ b2 F, n3 D#define N 10
    " N/ }  J8 t% `  T% W6 n! N! e#define M 10
    & n1 {( t4 e- g5 Smain()* t& s4 O2 T% j# w. V
    { int i,j,k,m,n,flag1,flag2,a[N][M],max,maxi,maxj;
    ( K/ K2 _" T; M2 L" e printf("\n输入行数n:");2 B# U9 ?& y$ r8 M6 n9 d
    scanf("%d",&n);$ f/ L8 t% A# c$ q  t( r5 ?5 H
    printf("\n输入列数m:");
    * N! F, T8 j0 q0 l, B scanf("%d",&m);
    . n) I  }: d2 f5 ~
    + j- `" O  C- \ for(i=0;i {  printf("第%d行?\n",i);
    ' y" R# w! R/ O+ t4 e for(j=0;j   scanf("%d",&a[i][j];
    - h; s3 P* x5 F; A# } }
    % b: A2 N' q& v1 r5 K' z- K for(i=0;i {  for(j=0;j      printf("%5d",a[i][j]);8 o1 D& C, |. @8 ?+ x* S
       pritf("\n");
    1 R3 k* u3 T2 q% ^1 ]/ P9 t }
    5 h. b' Z! a5 M* \0 N6 f7 g flag2=0;& K1 ]) o6 w5 Z. S
    for(i=0;i {  max=a[i][0];2 P% H* l4 s& z" |$ A
    for(j=0;j if(a[i][j]>max)# }: l2 X7 t5 k. H8 o& c% S
    {  max=a[i][j];
    1 V; n+ t1 H( w" {4 M, P" d    maxj=j;
    ) ]4 _& m0 B0 Y  R: x1 B }
    & M  R3 e# E, U  X$ A for (k=0,flag1=1;k   if(max>a[k][max])
    ; R& l* K% @1 N! \: T. `- V  flag1=0;
    7 J& E7 n6 H% b if(flag1)
    5 j# C9 J% v& J7 D6 n { printf("\n第%d行,第%d列的%d是鞍点\n",i,maxj,max);
    " O+ N% w( \. I( ]( v   flag2=1;" u0 Y5 _. D# z! M" c6 S: d
    }
    7 V& q' [# L6 `# W  A# n' n% x}+ M8 [% U- ~' f  @
    if(!flag2)
    3 H6 j' O; w- f2 m   printf("\n 矩阵中无鞍点!  \n");+ G+ Y) ^1 ]! i' T) f7 R( B
    }/ g1 n. i9 M. M" ?; w9 ]) @9 k
    4 R+ D3 o7 B% c% F
    7.9变量说明:top,bott:查找区间两端点的下标;loca:查找成功与否的开关变量.
    1 @$ x& x1 {- z# B0 J0 s#include
    / X& H. |9 u: T#define N 15
    ' p- d7 e' p$ _" g( X; n* O; Ymain()
    , k- |2 v" y7 H) t{ int i,j,number,top,bott,min,loca,a[N],flag;
    : R5 `# ~1 z! _* c8 v% i; E. D  char c;
    / b+ m4 R5 x' [% I: i& q  printf("输入15个数(a[i]>[i-1])\n);1 R& [  M: _9 O6 S
      scanf("%d",&a[0]);4 e. ?8 H- f1 [! \1 [5 d
      i=1;( K$ S, m" t) E- p1 [! M* [# |
      while(i  {  scanf("%d",&a[i]);
    7 @; a, s7 S  P. D     if(a[i]>=a[i-1])' \% f8 b7 @! |
    i++;
    . D, }) i2 y' u, @+ t6 o esle
    ) X5 s/ n% d$ V! D. {+ E {printf("请重输入a[i]");4 n  [% g5 s4 k; \4 |
    printf("必须大于%d\n",a[i-1]);
    - V( i$ {% [0 y1 t& u" W }3 |' i9 [; H# G( `" m4 s
      }
    5 \* h9 k' ]# T. v  printf("\n");9 p4 W) y& M% r8 S) u( |" r, M
      for(i=0;i      printf("%4d",a[i]);3 s) N) D5 H$ H  ^$ X% Z1 Y
      printf("\n");  r$ S4 w$ _/ _* ]1 e% e# F
    ; Y6 C; {1 }0 W& v5 Y* Q: R
      flag=1;! ~1 [0 f5 c6 Y
      while(flag)( V2 K4 o) X. l
      {
    4 d2 ]2 l: q) t printf("请输入查找数据:");
    ; ?# b5 G0 `2 H7 Y  scanf("%d",&number);8 [+ K) B" B6 ]6 q# b- t6 f6 d. U+ v
      loca=0;
    0 O2 H1 |1 F1 f  o- e) e  top=0;; f6 q5 {/ f( O+ h0 \
      bott=N-1;; z0 U4 M; J- `
      if((numbera[N-1]))
    ( M: c" d7 t6 a! ~8 J2 {) J# D loca=-1;3 w- M* C* J( z8 l2 X
      while((loca==0)&&(top<=bott))
    5 f5 B1 ?. r. o5 U. G  { min=(bott+top)/2;: ]. R- o* j0 r2 b
        if(number==a[min])
    1 y7 D. Y4 u: \$ Q) z    { loca=min;
    : ?5 i4 }4 o) e8 G# @1 z      printf("%d位于表中第%d个数\n",number,loca+1);
    1 U" e1 H- |) R1 u# V# S6 e    }4 A; x1 N. i7 ^* a5 s3 W
        else if(number     bott=min-1;
    3 o) E4 [/ l  b/ M/ o else
    $ l0 d! V7 B" z  \7 y     top=min+1;6 L' B2 R! w$ L% K+ ~
      }
    9 j" A3 r1 Z" ]3 z  if(loca==0||loca==-1)
    , o- N/ j$ n& w% O0 Q9 [, H7 J2 Z    printf("%d不在表中\n",number);; _8 e5 |; \8 v5 d+ ?" k5 X
      printf("是否继续查找?Y/N!\n");
      E6 ^6 A! Y: O8 r% y; I  c=getchar();
    , B9 w+ e, Q. ^& y. D% o if(c=='N'||c=='n')
    - i2 B9 N8 H% a; @: k. u flag=0;
    7 `7 Z+ g  X7 Y, B! O    }5 e3 w1 D* ?8 ?6 |
    }7 c( t; l* F4 t$ q; T& t
    9 T# Q; R6 |; ?8 Z+ z& {
    7.10! @3 R- N7 ]( x5 @4 S% t2 ~
    main()
    ! p) _# X) P" V% `{ int i,j,uppn,lown,dign,span,othn;; i3 L* A! `4 _/ T5 c0 w! U2 P
      char text[3][80];% a0 v7 |- u! `/ I& q: Y
      uppn=lown=dign=span=othn=0;
    8 Q2 T! @0 \8 k) m' C$ }  for(i=0;i<3;i++); E7 e6 b+ ^, M# U
      {  printf("\n请输入第%d行:\n",i);
    , ?5 B4 z2 e! Z8 B5 H  G     gets(text[i]);) V; U) I5 \$ P1 I% J: r5 K7 ~
         for(j=0;j<80 && text[i][j]!='\0';j++)
    " A5 @- @9 F/ U6 v5 {     {if(text[i][j]>='A' && text[i][j]<='Z')
    ( |5 r6 G  s0 V uppn+=1;% V, Z1 c  q5 r8 u: x
    else if(text[i][j]>='a' && text[i][j]<='z')7 e# k$ W6 e' m
    lown+=1;
    4 j7 O% O# c/ S! b9 ]5 W! J' T8 _ else if(text[i][j]>='1' && text[i][j]<='9')3 Q' R; ?  E6 m# f0 w
    dign+=1;8 P2 O2 R( l  B8 w' N  D0 R; |
    else if(text[i][j]=' '); n! C6 t+ d1 _, [1 f- W
    span+=1;
    ' _1 o9 O  v5 L& u' P) f else
    0 e2 O0 H8 u7 I+ W* U$ R! z othn+=1;3 J. {7 \! _; v) L+ t% \6 w
         }/ d& q9 l; q: Y2 `5 H
      }
    . Q* [# N. I7 @& r6 t# U8 B  for(i=0;i<3;i++)5 F3 a# C& h1 }. h
    printf("%s=n",text[i]);
    , x% m3 Z0 A" T/ n  printf("大写字母数:%d\n",uppn);1 l$ d% c8 ]# {& j
      printf("小写字母数:%d\n",lown);
    " b8 J5 ?8 c5 \* }6 s  printf("数字个数:%d\n",dign);
    $ u* E$ F$ _4 }4 v! V  printf("空格个数:%d\n",span);+ B8 ^% t, b! }' F
      printf("其它字符:%d\n",othn);) c3 w# {2 g" ^; K% T1 m% O9 z
    }) V) n( }% O6 |. w
    9 J! d' L+ v- B8 s* v8 v
    ( h8 _& x+ k8 W  R. r
    7.11& j) q" y; s3 _) p: w
    main()
    , [% H3 g, b5 b9 m1 u  {static char a[5]={'*','*','*','*','*'};
    8 T& {' l& d+ I6 a# l   int i,j,k;9 c$ G, c9 v- O9 G, l
       char space=' ';! g% G+ O$ p0 M! c! C1 K0 \
      for(i=0;i<=5;i++)
    3 F* z& g$ Z, _, M. c3 Y   {printf("\n");0 q* B2 w7 J# y! t* ~; x& k
        for(j=1;j<=3*i;j++)3 p, m' N2 b" D$ T% C6 p
    printf("%lc",space);
    4 V& F2 N7 d, o0 I. e% W& G    for(k=0;k<=5;k++)) J# x% N6 P9 Y1 @( y4 g$ P5 J
    printf("%3c",a[k];# z. K8 }+ {4 T
       }
    4 U" c3 F# R; F* T}
    ( d9 l- X) H9 m" d4 ~. L( v+ D# n7.12, j$ U; d* T1 X6 N4 P7 R
    #include
    0 R/ v# h. C) m( O' ]$ @main(). d8 w3 x9 D5 s; O
    {int i,n;& j. v8 i" `$ m0 o! H& m
    char ch[80],tran[80];1 s1 ^+ T8 y0 h( ]! r) Q2 Q1 f
    printf("请输入字符:");
    $ V3 |. f" y4 m# w$ V5 d gets(ch);7 q1 I4 R7 S. B( |0 ~  W
    printf("\n密码是%c",ch);. ~& l4 G/ f1 [) ^* ~
    i=0;
    1 a' a5 [* `0 ]' F$ v* e& g; ]while(ch[i]!='\0')
    ' L( G4 N, i6 T# f{if((ch[i]>='A')&&(ch[i]<='Z'))4 A  I( @1 ]5 g  I
        tran[i]=26+64-ch[i]+1+64;
    ) I2 V, x8 H" r: B1 L( ^& Xelse if((ch[i]>='a')&&(ch[i]<='z'))
    ) z' M+ k" P' Q" [8 M3 k: @) @   tran[i]=26+96-ch[i]+1+96;" J7 R; K$ Y4 c( @
    else
    ! `- f5 r3 X1 Q tran[i]=ch[i];% ^- D; Y, A- {; I" ?
      i++;) P8 p% U' D3 C; Y! q* w
    }$ M& b9 ?0 ~$ T7 l% h0 E
    n=i;! p9 }9 Q# a- o1 [" m
    printf("\n原文是:");( z! G7 m; ~: f2 ^7 k" p7 r  I
    for(i=0;iputchar(tran[i]);
    4 w. `9 |8 U! D: \  _4 i3 h% p}
    5 k6 {4 @; {) @" z7.136 L6 V1 F; M& g
    main()# O  D4 i1 P! g  P5 U9 S
      {8 x* V. `3 o* W' r  B& E) v
      char s1[80],s2[40];
    * ]8 r* |1 @$ D% z4 t  R  int i=0,j=0;' C* U! m. `* q. ^. F6 z; _
      printf("\n请输入字符串1:");
    5 k0 G$ n! K: v0 \8 q) p  scanf("%s",s1);
    1 S9 B1 g& a5 g& N, V  printf("\n请输入字符串2:");
    3 t* D6 u; \. Y( n7 ^8 ]  scanf("%s",s2);
    + A1 o( q% N, P2 a9 T  while(s1[i]!='\0'), m5 a; K) F& K0 k" M$ c
        i++;
    , M& C  P( S# ^+ n1 Kwhile(s2[j]!='\0')
    , E8 s0 {( X- z  s1[i++]=s2[j++];
    . j) Y, B, _$ e' v2 H; z& {0 Ms1[i]='\0';5 d7 y7 ?* h) t) u- e( r
    printf("\n连接后字符串为:%s",s1);
    2 e6 [/ F$ M' y8 ~  }
      J3 k; j( f0 P1 z, ~' Q# _: P% y: y8 n+ u

    3 n/ S$ }0 \/ Y, M1 ~* m7.14
    6 i  ]0 a0 P( o3 `6 e#include
    8 ~& @$ w6 X8 A- xmain()
    # Q. y" M, z$ ~4 t! U8 {{int i,resu;
    4 I. U5 h& v1 D% F char s1[100],s2[100];
    " i* h, S; r9 R. ^0 K printf("请输入字符串1:\n");
    6 @% f* z8 W& A8 w8 q/ ? gets(s1);
    9 E9 i1 V6 t3 E0 [1 V6 U printf("\n 请输入字符串2:\n");
    ) s% h4 Z' k6 K0 o4 ~ gets(s2);
    1 Y' ]. r! N3 B. `3 x- ? i=0;
    $ w8 c- U! v" }5 i while((s1[i]==s2[i]) && (s1[i]!='\0'))i++;
    " t1 Z' a+ O9 [0 T2 S- ` if(s1[i]=='\0' && s2[i]=='\0')resu=0;+ V; W. @% R$ @/ W0 d; x
    else+ c* s+ s1 b7 ^5 |5 c/ M! w; b
    resu=s1[i]-s2[i];
    . V  Y2 Z% M4 `) p printf(" %s与%s比较结果是%d",s1,s2,resu);
    . A+ s  \4 q3 m2 i}
    + ~/ j; g' \% S0 B7.155 m. M3 A, P6 U& ?6 c
    #include
    0 D2 E! Z4 g9 P0 @main()* L& v; w4 {! U/ r+ W. K4 Q6 L
      {+ M, O5 E( |) n
      char from[80],to[80];; L. \4 g7 B; F! s9 ?
      int i;* g7 O2 w3 ~0 U
      printf("请输入字符串");
    ) r. ]4 E- N' |  scanf("%s",from);
    : j0 k& Q. `0 [# K* p  for(i=0;i<=strlen(from);i++): |0 Q4 `, v0 A- j3 Q1 \: R& N" y
       to[i]=from[i];
    / ?( I  I* {+ M& E/ Q  printf("复制字符串为:%s\n",to);5 G$ h, H; f% O
      }4 E. B, z2 _% }

    # c5 C" B% g: o: L" z
    9 V3 [6 G8 \4 L( l第八章 函数) \( D4 J8 }; {, C* {
    8.1(最小公倍数=u*v/最大公约数.)
    2 M- ?8 F* F. T, i; _( f! O) C* ^hcf(u,v)
    / C( h5 {. G! s. t9 ?int u,v;# ~. q/ V" z0 E% }
    (int a,b,t,r;) u: W% v! p/ L- B8 }) `! Q* Q6 j( I
    if(u>v), V+ C8 _* e0 q( W, j: G
      {t=u;u=v;v=t;}  x* _2 \- ~$ R: x2 T/ z6 v
    a=u;b=v;3 C# e- G! i. M7 E8 {1 T( N$ u
    while((r=b%a)!=0), w. N+ F3 n; b
       {b=a;a=r;}" s' @* n! P$ @
      return(a);& D& C2 X6 i+ {7 r
      }4 E4 k% c4 `* y! o' P1 ]* b
    lcd(u,v,h)4 y7 o4 ?  T) V6 R! q) r. N" \: p
       int u,v,h;* b" G+ b+ K3 O5 q: f% N
    {int u,v,h,l;
    ' L1 n* I/ \( y  K0 c: `3 e scanf("%d,%d",&u,&v);# i2 k. d4 ^% w% `& C; a
    h=hcf(u,v);
      {# t; n" M5 U; \$ l" V printf("H.C.F=%d\n",h);, O5 K* L+ h5 x* R
    l=lcd(u,v,h);( @7 l% J) E1 ?! j9 c
    printf("L.C.d=%d\n",l);
      Q$ X" F8 v/ b1 @5 \. v6 d }; W" m6 c+ E2 o+ u  f
      {return(u*v/h);}7 Y# w/ D, x0 {( ^$ F8 b6 x
    main()1 W% }$ w4 T3 y9 a% j' Q
    {int u,v,h,l;
    ' b! v+ ?7 W0 S. Y% @, W scanf("%d,%d",&u,&v);7 L# {0 ^% t  {; s4 Q8 P$ `
    h=hcf(u,v);
    6 ?7 h- x+ X- x% O1 { printf("H.C.F=%d\n",h);
    + y* x+ ^% y5 z1 d8 @, A l=lcd(u,v,h);* G0 K0 ~2 D: p; c# C0 q
    printf("L.C.D=%d\n",l);
    + N( U% s- z3 a; ]7 K6 e }: O! ~' k! [/ n

    . `& s/ X6 Y( ~! O3 U- F' ]( _" t1 s: Q7 M0 {0 w

    / g8 Y0 o8 u3 M" x8.2求方程根  f' R' ^1 E- @7 v6 ?
    #include$ ^1 o) V8 z7 m! k
    float x1,x2,disc,p,q;
    , c/ _! z# p7 U( W! ~9 S+ ]- ugreater_than_zero(a,b)
    # O* r3 L5 u0 i7 ^5 H2 v, [8 qfloat a,b;0 m& O% T  I5 d# H9 B
    {
    8 ~" L1 L% \/ f' Nx1=(-b+sqrt(disc))/(2*a);
    8 F- U0 L0 r9 S# K1 ^0 Rx2=(-b-sqrt(disc))/(2*a);/ P0 T6 O9 }7 c" O$ z2 d# w6 K
    }$ S6 F4 H( b* H7 c
    equal_to_zero(a,b)0 C+ q8 A# w0 G: |* T
    float a,b;  v; l! d. k6 h2 |' a( A0 ~
    {x1=x2=(-b)/(2*a);}
    4 ?& r" I) G, ssmaller_than_zero(a,b)) l$ u% L6 t$ d& F) s7 N2 I
    float a,b;
    6 k$ S  e% ~+ o# Y1 s{p=-b/(2*a);% d! C0 t" e: r+ T8 l
    q=sqrt(disc)/(2*a);5 D. J# X; }6 {+ x! c: F' |
    }. ^# Q) L1 G: k; D: T: g% n
    main()
    4 B, W8 V. ?1 B' i& m" Q/ N{- C% v+ w( o5 a& A
    float a,b,c;
    9 ^8 K: G2 o; x. L6 ?printf("\n输入方程的系数a,b,c:\n");
    $ l7 L% m- B" `& W. j7 L- C9 Oscanf("%f,%f,%f",&a,&b,&c);
    0 ~2 a0 n; W- e( D- Cprintf("\n 方程是:%5.2f*x*x+%5.2f*x+%5.2f=0\n",a,b,c);7 s( z3 w  p+ I+ {5 @# u
    disc=b*b-4*a*c;
    ' |5 a  F5 z/ d2 E% @! Aprintf("方程的解是:\n");
      S6 B" |; Q  z5 ~( r% x* `8 ?5 lif(disc>0)
      M# o# Z$ {* V$ J2 m{great_than_zero(a,b);7 k* ~2 {9 ~& v/ `* p9 ?) [
    printf("X1=%5.2f\tX2=%5.2f\n\n",x1,x2);3 ~. b! u% |7 b# A2 ~
    }
    0 D0 b" e: ~' i1 J& H4 Xelse if(disc==0)
    6 y0 ~7 J# x* |, B! H1 {3 T1 l* e0 [ {
    : L# g  S: R' j' e; a- [zero(a,b);
    $ ?% E9 D/ n( K. g0 xprintf("X1=%5.2f\tX2=%5.2f\n\n",x1,x2);' B) Q1 e, p- F% Q0 [3 E% c- c
    }6 D; C& f% {5 y" |
    else4 ^+ W8 }- T( S4 d7 |4 N
    {
    8 H$ ?* C* N8 ^ small_than_zero(a,b,c);  y+ d  P/ K" F3 [% A2 A
    printf("X1=%5.2f+%5.2fi\tX2=%5.2f-%2.2fi\n",p,q,p,q);; Y) F6 u6 Z  C. |, ^9 j
    }
    0 a2 h7 _4 k5 |8 {! l# T! k}' O4 G" s! W4 p
    8.3素数2 x3 J1 `; ^+ j) n
    #include"math.h", X4 {' e6 |1 v# ?
    main(): O# e# y# V- U- H6 c$ x/ \0 U
    {int number;
    1 t6 N3 [& k) w5 n scanf("%d",&number);
    / F& \, g) u' O" G, t if(prime(number))8 x' Y1 p8 v$ R) _9 s) _+ U
       printf("yes");
    - m3 _7 P6 t7 d. n else, {6 f* X! H+ U1 V) x0 A% O
       printf("no");
    + {! W9 e  L- U2 `" |( v}
    , L  g& r' G0 b/ O. {/ D6 W5 wint prime(number)  S/ ?5 W& m# _7 |$ K+ ^3 G8 T
    int number;- K! Q8 D. z7 ~. ^& W
    {int flag=1,n;
    : T! ]& w" l+ @, h% _1 M, ] for(n=2;n   if(number%n==0); h) C, u! n$ K) [
         flag=0;
      i* ]3 r& H0 v  ]: O return(flag);4 l* P' \9 a. M. |5 @
    }* y9 B) g3 {! `$ X) P7 q

    : W4 c* I8 h  h- l" R
    3 ?/ H- i/ Y6 g! H
    * N. i" Z: g: Y9 W- V8.4& p2 _) ^2 @4 J8 l8 ]2 }( H
    #define N 35 A: Z) d+ U) `0 S4 k4 e/ z2 G
    int array[N][N];
    / p; `6 y) w" L" H3 ~9 ~3 lconvert(array)
    - h2 t: K( D4 g' T# X! ?3 L% {int array[3][3];' X& O# v+ m1 G/ Q$ J
    { int i,j,t;
    0 d& Y. x* z; l% e; S  for(i=0;i for(j=i+1;j { t=array[i][j];
    : x% B8 v" z/ U% `, B   array[i][j]=array[j][i];) T* F3 v. Y  ]- A
       array[j][i]=t;! l$ L8 X. V. |( B
    }
    1 z5 }7 Z: Z1 k7 ^( z }% o% l3 B1 ^; F5 i  C
    main()
    3 l* K6 T% A, K! Y9 Y& b( j{
    6 ]' E0 O$ j) ^ int i,j;5 a3 ^& p: z( q7 w* `, D0 e; }
    printf("输入数组元素:\n");. A% ^: J7 {$ G( V0 K- @
    for(i=0;i for(j=0;j   scanf("%d",&array[i][j];$ U: B. C+ Y, Z# H& g8 g
    printf("\n数组是:\n");( \: k1 U- Y6 J: h
    for(i=0;i { for(j=0;j   printf("%5d",array[i][j]);
    : Z- G- v: J0 a  printf("\n");
    : q- Y; ?, r: r* Y4 v# c }
    5 c" O+ |+ M2 b1 n6 b8 ~* {* r convert(array);/ T, h- Y+ i* ?' _6 |; w
    printf("转置数组是:\n");2 Y3 G4 O: _2 Y& a+ Y% F7 Q
    for(i=0;i { for(j=0;j   printf("%5d",array[i][j]);
    # n9 F7 k# u7 O* Z; _   printf("\n");" q" R( L: i% a1 Z
    }
    ; F4 ^( H) \# V  v5 |}
    # a8 E' e, e3 T8 X- b6 G7 ], y  D- d* x
    # o4 E. z" U$ o8 |( d
    2 @' h  S" K* a# G5 g. H
    8.5
    3 n9 W4 C' ~+ Z+ Y: G9 K0 @* \/ wmain()
    7 Z; T; l; ~9 l- k7 g{
    " S) `3 C+ j3 T' qchar str[100];* I# H. b5 O! |, a+ S8 n/ F! _- ~
      printf("输入字符串:\n");, b  M9 h: O7 M, N% z
      scanf("%s",str);- e, H) t, t" B/ }( P% w2 F  {  K
      inverse(str);3 c/ j3 y5 y# C! C) K7 K) p
      printf("转换后的字符串是: %s\n",str);
    ) {4 s. J) {- h}
      c; ]  F1 }, Z3 ninverse(str)  h+ _7 b3 \3 Q0 S" K; `9 y
    char str[];3 ^, \% y/ Q+ [( E
    {
    % ]; M$ C/ U6 G3 m; k  B" ?' O char t;
    + e) O1 ]* U+ F int i,j;
    $ J5 P9 j, C6 D% T for(i=0,j=strlen(str);i {0 C9 h8 P, A" \4 v. o8 p! g$ m
    t=str[i];7 {; `$ |9 t: F/ x
    str[i]=str[i-1];) c3 g) E- |' M
    str[i-1]=t;5 {: [8 G. g  f0 }
    }
    0 Q' h6 H& T; A2 W- [: j& w}
    & q% i% Q# d9 S- I2 p
    * o% ~  s2 p3 x$ {
    " ~1 @2 L* i3 {) V' I
      ?& K% h: C. o% W1 g! d& t4 k8.6, p) O0 x. h9 x! r
    char concatenate(string1,string2,string);3 N5 C; D" L$ X& \+ x
    char string1[],string2[],string[];
    8 ^; t6 e0 m( V* L{
    6 |+ a4 F2 b  t/ jint i,j;
    ! F  U- D8 O, g/ ?4 ?& Ffor(i=0;string1[i]!='\0';i++)
    2 H! x# ^; C! P) W3 g2 s( R$ B: l  string[i]=string1[i];3 s' `; o( X# F8 d  E
    for(j=0;string2[j]!='\0';j++); ~/ W- y  m( a1 k
    string[i+j]=string2[j];
    0 W0 u& g1 O- K' W, R- p5 a string[i+j]='\0';' C& `( e1 A2 A" A/ A; F7 C
    }9 A* M% X9 B6 @9 k  i2 o7 V+ k, c
    main()
    1 I+ T7 _- a0 Q! j, U{- |" R% T( n/ S( D- `7 W& {" X7 _% |
    char s1[100],s2[100],s[100];
    ' Z/ T0 S8 {; ?: I. z; }% \ printf("\n输入字符串1:\n");
    ) p) a* o; g1 o9 l9 g scanf("%s",s1);$ Y* }1 T% d3 c% u" h
    printf("输入字符串2:\n");
    2 Y! Z; I3 L: M  e" e0 h$ C4 n7 Z6 y scanf("%s",s2);9 b# p/ r+ ^& M. V5 A
    concatenate(s1,s2,s);: p5 E) |& h* j- m; n' M
    printf("连接后的字符串:%s\n",s);& K: w3 g, t5 q
    }; _3 f$ l! J: ?) x
    5 L4 N& M( A& Q6 V, O8 D" m; c1 _
    , L4 L7 ?& B9 y+ n# B2 f! W
    8.8
    ; P+ M; H# A8 Amain()% M- U4 N" Q* @7 p1 _  [
    {
    6 {8 K/ N+ l7 ]" v$ H5 Y9 _5 N& m8 r char str[80];
    : R% R2 }+ O! J' G& v7 _3 C" Z printf("请输入含有四个数字的字符串:\n");. J( k, e0 i6 W, u2 Y/ J, U8 H: o
    scanf("%s",str);
    . @5 g0 }3 r8 n insert(str);
    , h7 _. Y% W' z) K! u% N}& S, k: ]* M- h
    insert(str)/ t! B2 D! N$ A6 E7 q8 K
       char str[];
    : y+ j- F& N% U! S: h{
    / b4 S  }7 {; z; X$ f. ? int i;
    " o$ J1 s2 f% j for(i=strlen(str);i>0;i--)
    1 F* f; \% W% z9 ` { str[2*i]=str[i];
    " o9 O' u% R( U- p) G! R   str[2*i-1]=' ';( W- c9 q8 g' t: F2 J6 J
    }
    ( c  i7 ^- y+ [ printf("\n 结果是:\n    %s",str);+ |) [& H' g6 S$ }  M  J
    }
    . J3 d. U3 x1 ^3 O4 g& Y2 m. B; q

    , o0 p) @4 D7 G3 i& `
    . R) I& |2 W- W, R8.9
    0 J/ t% X0 T: J" N/ c8 Z#include"math.h". U2 ]9 @8 A9 l/ L3 v3 ?6 |
    int alph,digit,space,others;
    # p4 C- ]/ C( \0 Nmain()1 I0 L7 z3 Z( R0 `/ D
    {char text[80];- r6 `4 m* J& {3 [- [
    gets(text);
    : R# V# q* V7 ^# b alph=0,digit=0,space=0,others=0;
    3 ]. C' {2 j4 k; I9 O* n! i& E9 @ count(text);
    2 N; H# B& w7 ?' R$ m printf("\nalph=%d,digit=%d,space=%d,others=%d\n",alph,digit,space,others);
    8 W- }( d: L0 C' o! L2 G}6 C2 f& q9 G* N5 ^/ W
    count(str)
    ! W# T) h$ [. \% w! kchar str[];
    $ \& C/ W" [5 Q' Y{int i;, |. T( Y& E; C+ K7 X9 u. \
    for(i=0;str[i]!='\0';i++)
    # L( Z* E1 n, i* C- X5 b   if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))
    , x% v' r- O2 R     alph++;
    1 ]" y" v7 A9 H6 `( P3 ]9 i" G   else if(str[i]>='0'&&str[i]<='9')
    3 k( T9 ^, n" z5 ~) F" U     digit++;% X7 B" z1 @$ W
       else if(strcmp(str[i],' ')==0)
    2 n& ~! s' \- N1 ?$ C     space++;; D* v3 s# Q; N: p
       else# D0 ?( n/ T4 g; ~
         others++;
    ( |* t1 T2 j  E}- s( k2 C. b6 J

    - B; i8 T; Q& r1 T4 V, t: @: p
    + Y8 x- f, i% [7 i. E+ R8.10
    * m$ x. i1 A6 D, n, R* l+ qint alphabetic(c);4 I) o& m3 z- A5 D2 u, j
    char c;
    # W9 G3 S+ @& h{  `1 k5 ]$ j- R
      if((c>='a' && c<='z'||(c>='A' && c<='Z'))! f( s4 r, |+ p3 ]
    return(1);" m3 a$ O# Z: r- |
      else* u- J2 u! F6 G% i! x1 i
    return(0);
      {7 j1 H" l4 @. h# M& A}
    6 Q2 S) X6 @/ g( {) k/ k0 g
    - W* b% T, n+ gint longest (string)' Y: @0 f' K' n5 n3 M6 G9 J4 ?
    char string[];; c1 K8 ^7 k- M  I- U
    {5 O) J& Y# J. l2 `. K
    int len=0,i,length=0,flag=1,place,point;  g' v1 o4 D6 ?4 `& r
    for(i=0;i<=strlen(string);i++)/ X4 ^; s; T/ q' T" x
       if(alphabctic(string[i]))% ~# X+ ^6 X! A
    if(flag)
    & @  S) ~3 V1 N9 L- X9 V {+ p# T, T! W4 V; m0 h
    point=i;
    ' {: e$ `) i* m( {9 @; u flag=0;
    9 ~) @' T9 ?' y  {5 [ }
    $ k( m+ X! r: F) F" p( G  } else
    $ p) D$ m$ U8 I1 e   len++;
    6 J: Z" }; K  o. i. I  N5 q else
    2 l. w- @* V5 Q4 t0 W& C1 h { flag=1;
    ) J3 `% a/ K  c/ J  if len>length)
    ! i, ~# u- `2 a0 L* w# L  {length=len;
    - E0 [* Q( ]0 R: B) g+ z1 N" A6 o3 j   place=point;
      V, [$ ]6 C6 L5 S8 b   len=0;# I  _2 e; X8 K; ^8 g
       }
    2 N# Q1 k3 Y* n% s' j0 t/ ^& ], ` }
    & {- a9 M  N- A5 E% @/ G     return(place);" Z; |, x  Q8 |, C9 c5 `
      }
    , q' k. h+ Y& Y: i/ d$ [' qmain()9 \# R( J" y9 {8 W: d8 {. q( j) F
    {- M% v) ?: `! Z7 Y8 h
    int i;
    ' J' k+ W5 O& t- X, l2 g# Ychar line[100];$ m- Z. k% b9 F' {
    printf("输入一行文本\n");' y' M! l1 i1 }- G/ T! i
    gets(line);! c0 W8 M0 u/ Z3 `* y; T# L
    printf("\n最长的单词是:");' L4 R# m) H5 S9 s: k
    for(i=longest(line);alphabctic(line[i]);i++)& ?$ A0 G( M$ I: c0 u. ?2 W! @0 Y
    printf("%c",line[i];) M8 p/ i! h& f4 B  ]
    printf("\n");7 Q/ a0 y2 ?( Z% e* m9 F
    }' N, ^, ^0 X$ {  l! ?
    6 f  J3 ?, P( o, U* D' n" _
    7 x4 i  e0 Y- Y7 C' p
    9 W8 D/ o8 _, b/ ~6 u
    8.11" ~' m/ a( l1 ^7 F* B- B/ B
    #include
    5 E4 Q% `8 s0 j: c! ?9 j) C% D0 R$ [. M! r0 Q
    #define N 10( Z' ]8 d0 t5 a# z0 r8 U) a
    char str[N];
    2 f/ ?, }. }  _; dmain()
    7 E* _/ A& {4 K% x$ `{3 f& \0 a* D" n9 }) e' e$ z; ^
    int i,flag;4 l+ I9 y5 V1 h6 `
    for(flag=1;flag==1;)
    1 d3 A. h5 G+ d" m{5 \0 l# B6 I! e$ i. h, M
    printf("\n输入字符串,长度为10:\n");6 ?- w0 `6 P/ \# Q8 i7 G
    scanf("%s",&str);& V. V( K0 X- R4 m
    if(strlen(str)>N)8 V" o+ C3 h9 J$ i
    printf("超过长度,请重输!");
    2 }/ W4 q8 R, @ else
    0 i! }) B3 I/ B: H3 _1 R flag=0;
    - t8 Y  W- z3 Z2 Q}: m- Z9 k+ J5 \- T. V* J" Z! d  A
    sort(str);
    + o+ H5 f9 n! o$ u4 C6 Q# I$ u% j/ Zprintf("\n 排序结果:");( Y% \6 O! ^- l' B% ]1 n5 e/ i' _) `
    for(i=0;i  printf("%c",str[i]);
    : S9 X2 L4 k1 \4 }2 x; r+ L+ u}
    - M( ?/ q3 t1 j. p0 H6 bsort(str)
    + ~3 e- L: p* r5 J; u- x: Rchar str[N];
    ) z, {' r& e4 d* J{% y; F) c0 C% q) [* I
    int i,j;9 R: V7 T! c8 j" U; P- c9 Y
    char t;0 |% f. J3 r! u
    for(j=1;j for(i=0;(i  if(str[i]>str[i+1])7 Q& \- [4 ?9 i
      { t=str[i];
    7 n6 L1 G" E+ [    str[i]=str[i+1];
    6 g2 l0 Y& R# y2 W! e! l. I/ _    str[i+1]=t;
    % ~+ O# b7 W$ S& K2 M. I4 S  x  }
    5 G& I+ r; U- L# s0 e}
    5 H9 m- G0 Q( U# n* M: h8.12
    / s5 O# x7 E$ r5 E/ c#include. {0 @& U) G! g
    #include
    4 I+ O0 f6 y2 l1 I; ^float solut(a,b,c,d)' d6 r9 a9 e) t- i0 C1 I
    float a,b,c,d;
    $ ]0 S+ V5 ?. h{float x=1,x0,f,f1;
    ! y+ j. h% |. S) }9 q do
    . H& q0 v- |: U( t6 |   {x0=x;
    2 C2 O( R) q& A* p    f=((a*x0+b)*x0+c)*x0+d;
      |5 g# e; h5 Y  M& X) Q    f1=(3*a*x0+2*b)*x0+c;0 R  l" D" q( F- Z% Q- k8 ]! G$ _
        x=x0-f/f1;9 ]& ?1 Y# N) S- ^7 {' T' T3 }
        }
    + X  [  g3 G; ]* _* |) L while(fabs(x-x0)>=1e-5);( J8 o. |& ?3 ^; R
    return(x);
    - k9 D$ j- e0 [8 {+ }}
    ! c$ R2 \5 f6 o% g6 r6 e9 amain()
    ' w. _) u. H, m- Y8 S  Y{float a,b,c,d;- M* k  ?3 m- R, y2 b# p2 h
    scanf("%f,%f,%f,%f",&a,&b,&c,&d);
    0 x  h- W# m0 d0 W4 [$ j, u printf("x=%10.7f\n",solut(a,b,c,d));
    - ?; ]8 F' q' h* V+ F1 z}1 ~6 h/ m" C) a* p. D: V! R% k
    8.13% y1 N% Z1 |9 U
    #include: q. H2 f/ S. H- M' ^
    main()
    5 Q6 k9 X( q8 A% U{int x,n;
    , i& o' j& a; w: R: a( c float p();
    & F  i# t6 e0 e scanf("%d,%d",&n,&x);) e4 U4 Z5 Y" {# L
    printf("P%d(%d)=%10.2f\n",n,x,p(n,x));) f/ \4 L4 g, c
    }
    0 o7 q4 _1 O; `" qfloat p(tn,tx)
    1 Y! N( ~/ ^- B* @- Dint tn,tx;
      k8 z& I4 a8 `{if(tn==0)' r; a& y5 Y- M( [+ |: \
       return(1);
    # @, X* D( C& D else if(tn==1)
    3 ^# E  e1 ^3 D: a& d  G0 _   return(tx);
    ( W! S) I2 R, X6 ]6 H! `, d else
    ; @1 a7 w$ R* ]# d$ n$ P   return(((2*tn-1)*tx*p((tn-1),tx)-(tn-1)*p((tn-2),tx))/tn);
    / z$ v1 z4 B3 P8 R$ O' S2 D}/ S3 {4 _# o5 ]1 q0 o
    8.14
    $ i! C& c$ c3 ~+ U#include "stdio.h": ~$ V+ v; Z7 Q' F, L7 z5 C
    #define N 107 O/ w/ _- z: U5 K
    #define M 5  ]7 E' d+ o4 k+ I" v" p+ Z0 I
    float score[N][M];
    : T7 f5 g7 u7 j: o' m7 z2 \float a_stu[N],a_cor[M];" y4 r' L5 L  R7 M( l& S
    main()8 A; M7 I+ j3 d8 E  [: d
    {int i,j,r,c;
    2 H4 V# e8 J8 e+ u* U% k float h;
    ( r" r. U) P+ U$ f# J8 i float s_diff();% x2 D5 g: ?+ u) |6 S
    float highest();2 S( ^* d% Q' h- o5 b6 ~* C5 |
    r=0;
    ( Z, L" X" M2 w' s0 A& G6 z c=1;
    ! n$ k6 z( h4 E2 I/ e input_stu();: N/ E! j1 N7 p. E) N3 r
    avr_stu();
    ! _* p" ?$ C6 \& p9 p avr_cor();2 ^) P( P! l* I! T; R9 G  J4 O
    printf("\n  number  class  1  2  3  4  5  avr");& z% ~5 o- ]$ J7 f: Q; S
    for(i=0;i   {printf("\nNO%2d",i+1);
    . l7 U3 N$ E8 o; _8 G( i    for(j=0;j      printf("%8.2f",score[i][j]);
    ! \: c6 k* S3 o8 U. z) Y# t    printf("%8.2f",a_stu[i]);
    ) t$ P% X( v! S- e& B+ B( A    }
      h0 t2 y# q) @- q printf("\nclassavr");5 ?2 \* @+ }  G: s% _+ Y9 G9 g! o
    for(j=0;j   printf("%8.2f",a_cor[j]);* T) I* R/ x. ^* k( J" u2 E
    h=highest(&r,&c);
    0 l" L7 d- ~( T* X9 u' N+ ~ printf("\n\n%8.2f    %d    %d\n",h,r,c);
    0 J5 Y: K. W3 `6 Y) D printf("\n   %8.2f\n",s_diff());
    " {( M) n' R; d, n  @: `}
    5 @4 k7 Z; r5 R1 hinput_stu()
    - R4 f+ g% g) p{int i,j;
    ; a- G, Z5 y' K% ` float x;* {" [* r9 U# E  s* f. c
    for(i=0;i   {for(j=0;j      {scanf("%f",&x);' k0 {5 H$ O- E
           score[i][j]=x;
    # C! H' g1 o" p      }
    - o0 `' S. {2 k1 m" Z/ X- }    }
    & p' U! b- u6 J4 G}
    , ]) `5 s' ]7 A5 @avr_stu()5 ]7 j: |$ D$ K2 A- {: O: C
    {int i,j;
    4 H' c, g, E4 l float s;+ w. b- j. I- R; E/ B4 Y% ]0 |+ [
    for(i=0;i   {for(j=0,s=0;j      s+=score[i][j];$ z' k8 z8 M; b, P$ |
        a_stu[i]=s/5.0;
    % O3 U0 \  \) _' P( b1 s; i   }( {1 T) j" x( |9 A
    }
    2 Q0 I6 C7 X/ y# xavr_cor()8 k9 g2 @' Y+ T- t/ p3 Q9 a( N
    {int i,j;' S! o. e2 ?# L7 N9 q: r1 \' Q  ?
    float s;
    4 }. `* r- E: G4 N6 a- F for(j=0;j   {for(i=0,s=0;i      s+=score[i][j];
    " z  N4 n; c9 g: C    a_cor[j]=s/(float)N;
    : O7 C; y4 g* Y- ?   }# _6 S6 x% F2 q2 ^, Y, j/ J
    }
    4 d9 T3 b  r# ]8 s; lfloat highest(r,c)9 n% y# N, T2 w" W. n7 d
    int *r,*c;6 X& S4 q- I# i  l4 ~/ V2 s
    {float high;
    6 g% t# k4 R1 ^) Q0 ?  [ int i,j;- x! w) }2 Q) |. g' P
    high=score[0][0];+ v( C" Y# I. d
    for(i=0;i   for(j=0;j     if(score[i][j]>high)
    $ u* o5 j9 ?$ Q% Y, c& y; M       {high=score[i][j];
    * l5 t1 V1 b9 G        *r=i+1;$ f' b$ l  B) P* {
            *c=j+1;
    : |& X6 o2 G- D. s! Z        }
    ) n  T* r6 R) g return(high);
    , u! G; X6 O" I}" V3 }3 C8 R, t  r' H
    float s_diff()" e/ n0 p! X9 |( `
    {int i,j;9 @4 w' u6 l) x
    float sumx=0.0,sumxn=0.0;) v# r5 D8 d( M. w* A6 F' |/ b+ d# g
    for(i=0;i   {sumx+=a_stu[i]*a_stu[i];/ q! r% o7 y$ Z/ K. k! K
        sumxn+=a_stu[i];
    % v$ Z# G6 d/ l. B. s   }1 C, J$ R- b; [2 F, {7 b* z) z
    return(sumx/N-(sumxn/N)*(sumxn/N));
    9 H% ?; D+ ]6 N6 R4 U}% J) s4 d2 [5 x) R
    8.15
    ) c  g& J: v6 s: C/ v#include5 O1 H) v' V5 s' V. g
    #define N 102 N" g: I* n: m- t9 k
    void input_e(num,name)
    9 S$ M& K0 z6 t3 C0 s: Qint num[];) h* I0 ], v4 G7 M  G9 }& ]6 l( ?
    char name[N][8];
    " j1 s( O# U$ ^  E" x$ d* c$ i{int i;
    2 K6 n+ F- R- _( _6 Z3 w, H for(i=0;i   {scanf("%d",&num[i]);/ y0 o# k  ~8 ?9 b5 ?7 z  _1 E  x+ |
        gets(name[i]);1 Q6 N+ J# u& s. y' R1 c8 I3 Q
       }1 E2 h0 K" g, \+ [2 R
    }
    0 A4 ?; r- n) `) l( J: u( i+ Ovoid sort(num,name)
    - K0 T4 u% [: {0 x/ Nint num[];/ Z9 L, s( ~+ |1 F: P; [
    char name[N][8];6 t6 t- |2 N' ?
    {int i,j,min,temp1;
    * b  p* D0 C2 K! t2 e1 O  P3 v char temp2[8];
    " t" C; }9 ]1 d& o9 b3 h8 J for(i=0;i   {min=i;: _5 Q/ Z" b0 K! l: v& C
        for(j=i;j      if(num[min]>num[j])min=j;: F/ O/ n& M1 y, C9 B5 f
        temp1=num[i];( g  {- R' i7 f
        num[i]=num[min];
    , Y; a. m* m1 Q3 s    num[min]=temp1;
    8 f, F8 w/ x* q3 E- ?    strcpy(temp2,name[i]);
      f9 ]4 X1 ?% I    strcpy(name[i],name[min]);
    : M% V7 R. d/ z4 T# O4 o5 }    strcpy(name[min],temp2);; k3 u; v) \4 p# I8 Z
       }) n! ~6 T6 R# }, J5 s, e0 S
    for(i=0;i   printf("\n%5d%10s",num[i],name[i]);
    0 q8 S# Z7 v% z. u$ [  q% D}( ^8 i2 a; C- c" w
    void search(n,num,name)
    ! o3 X* J' q: x7 U% C3 nint n,num[];* ~, R: G9 U- H6 F9 _4 g6 u2 ~" @
    char name[N][8];
    " m$ j1 o5 I3 R( ]& I( A{int top,bott,min,loca;7 `* E6 G# g+ J6 h; l
    loca=0;. k, y4 t4 ~5 d' k
    top=0;2 H% b1 v% H  {; m* x7 x
    bott=N-1;
    9 w; q& w2 t' U7 x0 N if((nnum[N-1]))! n& I1 b- |' A* ~
       loca=-1;* N2 D9 _0 o6 W" r, q
    while((loca==0)&&(top<=bott))- b/ ~: k' Z9 P* j8 x* ?
       {min=(bott+top)/2;# j2 _6 ]. E. M7 `; ~
        if(n==num[min])+ D/ f- n2 F, h5 q% Y
          {loca=min;
    # x9 b4 P$ l- _3 i5 ]       printf("number=%d,name=%s\n",n,name[loca]);
    ! {5 i+ S7 [& D1 P" H* {      }( M7 Q. }6 `! s& n% D
        else if(n      bott=min-1;
    4 {/ q$ H: J  K3 @: y; w) p    else
    0 {7 u! b" y7 }/ U8 U/ A& R+ m      top=min+1;
    & A5 c7 _7 p. G8 e9 _- h    }- r2 _" G. b5 s: x$ T
    if(loca==0||loca==-1)
    ! f! }0 O( s, i, c4 \   printf("number=%d is not in table\n",n);: Q# c8 s* @6 E" ?
    }
    8 a3 J2 w, y# N3 F6 Xmain()
    ! `5 v/ K2 v# |, J) @5 T{int num[N],number,flag,c,n;1 n& s2 Z$ s  ]5 g
    char name[N][8];* ~6 i8 x4 S8 Z8 |) p1 w$ \- o
    input_e(num,name);
    . Y. R1 c3 p1 k' [ sort(num,name);
    . V4 K+ U  |0 G6 E; m3 q for(flag=1;flag;), t  X$ _6 u5 G- n! n
       {scanf("%d",&number);1 v7 y% d( w: R, W
        search(number,num,name);2 l' {  X- b# a
        printf("continue?Y/N!");
    1 C/ d) `  i! K, _' O    c=getchar();% F; ]: w! B4 Y- Z% u
        if(c=='N'||c=='n')4 F# t/ N  \" x# N: w
          flag=0;: b. q. b1 ]' c( c
       }
      I7 E/ \3 Q5 h9 Q* L3 d' ^2 G}3 b2 h% O" M3 }) k$ e8 p) Z

    3 t& o3 C6 p2 Z* y/ U# K8.16
    % p( ^* j/ s3 }  H' R, y* i#include, D1 Z# F- y1 Z
    #define MAX 10003 ?$ ?. `& h! b6 B! _. f9 Y) P
    main()
    . {  t& y7 v6 A; h; p{ int c,i,flag,flag1;
    3 d0 M# v6 ]6 [( X0 N  char t[MAX];5 Q$ |& S0 j/ M& @* _( C- s
    i=0;3 g& s2 l5 D& D" f+ k6 v6 E
    flag=0;
    , f2 {+ l8 F" A, h# E flag1=1;4 C% `" h7 J* q+ `
    printf("\n输入十六进制数:");
    1 Z4 |+ ]  L' P0 V/ ]5 t while((c=getchar())!='\0'&&i { if c>='0' && c<='9'||c>='a'&&c<='f'||c>='A'&&c<='F')
    ! M" u2 u" Z. i! g% F   {flag=1;( t! N0 `/ L1 `5 t& A! g- t% @
        t[i++]=c;
    , j+ x& a1 E. C9 Q   }" y6 x* E! |# R
       else if(flag)& J. z/ j  M. f3 `( Z: v$ r. W0 \
    {$ N6 U0 y+ i/ q% u6 V: K1 G
    t[i]='\0';! r5 [/ V# E3 U2 t1 U8 y
    printf("\n 十进制数%d\n",htoi(t));+ g2 D2 A. {0 G
    printf("继续吗?");
    3 H# u  X4 q1 n2 n7 N$ z8 U5 e6 P c=getchar();/ p1 `' C; |' T. p2 U+ S
    if(c=='N'||c=='n'); C6 G5 Z  ]) |1 {: t
      flag1=0;- g0 O9 g! u) |
    else  z& s. w0 [: {- Z
    {flag=0;
    8 U% {. x) {4 Y% c  i=0;  m0 E: H5 S! p: v: t' j
      printf("\n 输入十六进制数:");  _( L" F! r" v
    }
    4 v! d6 t& b1 T9 H; j& K}7 i7 ~9 ~- O1 S+ U
    }
    7 U; R# c% T  k5 v, W}
    ) O: z& u. t1 f2 i4 }htoi(s)
    : n  U' W3 h0 S/ L5 b4 bchar s[];
    ! W% Y+ @- Y! A# E' T9 H% s6 y. S{ int i,n;
    3 k! x( R" g( X  n=0;8 V7 e9 p3 K* o  @7 h+ ]/ t
      for(i=0;s[i]!='\0';i++)3 Y- y1 @' Z0 k) d0 I* D3 l
      {if(s[i]>='0'&&s[i]<='9')
    ) Y( f! Z& P( G) l9 A, x& @ n=n*16+s[i]-'0';( e) ^/ p, h! B, [! r1 K4 q2 r
       if(s[i]>='a'&&s[i]<='f')0 l" X/ n3 c4 l% b  L2 u3 `0 M' o' `
    n=n*16+s[i]-'a'+10;+ d5 c1 K1 U" n$ ]% c
       if(s[i]>='A'&&s[i]<='F')
    8 l. {4 o8 s1 j, d n=n*16+s[i]-'A'+10;! ]  z6 [: P0 M" T
       }( n6 T- h9 }' L* |
       return(n);$ Z8 O# D& A6 \7 g
    }
    7 {( Q# ]% g9 Q7 {' k% V* O+ g$ H
    1 o/ d/ R" c( j! Q" v1 h; z  @. A% {2 }" |6 w( A, ]; J* U7 f
    + K- e+ g* I1 F' w5 _0 l
    8.17
    / I3 X3 w1 i4 U& @% E- x#include
    % y$ x2 V7 c7 }void counvert(n). V8 d, D- @& q6 M
    int n;4 ]" o7 }$ U, j( P1 y
    { int i;8 h: b6 }2 R: }. N8 C$ p1 y! ~
    if((i=n/10)!=0)0 H2 v) L: m4 e7 p" ^; m5 o
      convert(i);
    " z& N9 C: p' @. k putchar(n%10+'0');: }% T/ l) h% I5 f! C+ O$ r. f
    }
    " ~0 Z7 w! n6 Y5 B* h2 w, Xmain()2 h7 l0 I$ P8 ?& r$ ^
    { int number;1 V+ F* h4 ^. q& ?
      printf("\n 输入整数:");: F/ _) @7 ^6 ?( h" @) C! m, s- N
      scanf("%d",&number);$ }, {$ j6 g5 Z- H  B
      printf("\n 输出是: ");" m' P7 R0 S7 r) O) N
      if(number<0)* d, M+ c8 a8 g' h1 `7 x
      { putchar('-');9 F& a: V) F6 Y( Z
        number=-number;
    0 g2 D% S2 o0 v% |1 f0 Z  }
    , ^0 g; U7 z, ]) Q9 Rconvert(number);; o) y  W4 _# m
    }
    3 C6 q% V- u9 H; Y; M5 B9 @/ {
    * j8 i% ~2 M9 N6 w
    # u3 |) w1 Z  L: u1 f
    8 Q% I4 b( i" N# d, |8.181 G  r% N% A5 j6 j' F' _
    main()
    % S' o5 z; l: B. Q{
    3 _# r, y  R- I9 i  int year,month,day;
    / [6 E# G2 F+ V- B9 C  int days;
    4 p" V! j: Y, D: |9 _  J  printf("\n 请输入日期(年,月,日)\n");
    $ p3 B: g9 _6 @  ~$ E2 i1 E  scanf("%d,%d,%d",&year,&month,&day);
    * f5 T- x  x$ G  printf("\n %d年%d月%d日",year,month,day);
    " i8 L5 l2 r5 @& ~! J  days=sum_day(month,day);! H" q& D% x/ u! J
      if(leap(year)&&month>=3)3 g4 z/ N$ t8 p4 r
        days=days+1;
    1 G+ d$ D% g3 i) E  printf("是该年的%d天.\n",days);8 l3 v) U* y  F% |1 m0 L4 p$ }& P% J
    }
    ) s1 x' C' v: ^' I" M7 D! ` static int day_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}
    8 N! ~. h) }  ]& T& q" H& R int(sum_day(month,day)9 T0 w. |$ c4 x/ H- S: t/ a
    int month,day;
    3 r! q% W2 _0 m# E: Y  {
    ! n1 B# ^  y' r7 z; ]: e  int i;
    & t2 H( L, z# x1 ?4 v" P# E( j2 B  for(i=1;i    day+=day_tab[i];
    1 w! a, ~( ~% Z% ^9 a6 e- M6 C  return(day);; p# E- y" i8 J+ k1 L1 M
      }
    / V: B) u( b/ U& j" u int leap(year)7 S  t1 E& L' W% [
    int year;3 \! e2 z9 N9 R. K! `/ K
        {
    2 _# I# K# }6 q$ _3 s   int leap;
    6 W/ O% U/ U) d9 i2 c$ R/ o   leap=year%4==0&&year%100!=0||year%400==0;5 R4 d! E  l4 _6 O% ^
       return(leap);0 e- L: g- z  M4 j3 a
       }# ^) x4 n6 k$ Q- Y) |8 o+ N0 z4 ^
    第九章 编译预处理% R& N. A! v& w
    9.1: Y# Q1 ~2 C% C3 X* I' S  b$ }
    #define SWAP(a,b) t=b;b=a;a=t
    % C$ E+ k" Z7 N7 x6 G( q% Pmain()
    ; ?/ _1 S* h* N, |# L4 l{: t- k2 i/ d3 ^2 z- x9 h
    int a,b,t;: }. \- e* M% d$ W5 T3 @+ O
    printf("请输入两个整数 a,b:");7 R" P$ f/ v* \
    scanf("%d,%d",&a,&b);
    1 |+ }2 }. o; {/ U/ HSWAP(a,b);; q4 _7 k" `4 ]( D) [+ \9 N! P4 V
    printf("交换结果为:a=%d,b=%d\n",a,b);9 t$ Y6 {& l* H6 A& d$ |8 }
    } - P# a" j! H4 R

    2 u. Q. l& a9 s% j- e/ {3 _( K; \6 E+ E5 _7 f
    9.20 }: @5 y' l# L( g8 b. ~8 T
    #define SURPLUS(a,b) ((a)%(b)); Y" A; H0 W& H
    main()
    : g" T; d" E) R' h# d, _! L& H {
    7 S4 F) X& q; E3 D4 F int a,b;/ V3 j7 [1 r) o1 u/ ]/ m% _
    printf(" 请输入两个整数 a,b:");
    $ j# `5 _% q' K6 b. |) O& @5 f scanf("%d,%d",&a,&b);
    : e0 S4 A. i. v" B2 h2 y! V- Zprintf("a,b相除的余数为:%d\n",SURPLUS(a,b));
    $ H2 Z4 J: Z8 |1 e }
    ; T9 q4 [' y7 ^, h" |# b
    ! [% S6 |0 {( Y/ o+ T2 I( B: \
    % X+ p0 u/ K+ Y. C( @# K9.3
      d, b7 q6 H# r4 |; B  D; N& R. p#include8 y9 }8 n* U. ^# N
    #defin S(a,b,c) ((a+b+c)/2)4 f* y5 B, ?' a" j
    #define AREA(a,b,c) (sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(s(a,b,c)-" w  ]2 `' f' H! h
    c)))
    , z. {; L7 U: r$ ?main()
    7 k) y6 X4 S0 J- Z, B {
    7 M9 N0 j$ w+ |  m float a,b,c;
    / y" y! _6 Z& I# U# w% N/ I! M  printf("请输入三角形的三条边:");
    4 Y# x& @* I6 r8 H- K; {! E1 _  scanf("%f,%f,%f",&a,&b,&c);% i' _. M" q2 m
      if(a+b>c && a+c>b && b+c>a)7 k7 i  t2 j. P1 |7 C! u
       printf("其面积为:%8.2f.\n",AREA(a,b,c));2 e" B9 Y) h3 L9 h& J7 V
      else5 W0 l0 }4 a* h# W9 R3 `
       printf("不能构成三角形!");
    # i0 e6 m, {8 J1 z0 ^9 y8 _ }
    3 Q; n' c  ?; i! n7 `) C
    - G7 X/ N2 P8 f* Q; Y  ?- G7 Z, W2 R: w& j/ \2 r3 r

      ^- N4 f+ j) d$ W. ]( x# G9.4
    3 V9 \8 I7 N8 n4 z#define LEAP_YEAR(y) (y%4==0) && (y%100!=0)||(y%400==0)! k/ w* Y. E4 y) d+ U) `
    main()
    # J+ b: x2 y. C3 ]! i4 s1 ~4 j {
    ( H! k8 F& ~8 L2 o) r% w int year;4 o0 {, k, Y& m! G# Y
    printf("\n请输入某一年:");, |& X  Q/ N0 {! e: [( V# n
    scanf("%d",&year);
    . [# `2 b. f; Y if(LEAP_YEAR(year))1 B$ v) O5 H* m2 E+ b4 I
      printf("%d  是闰年.\n",year);
    5 l7 V* n- Q# ~; Z7 |5 s else
    2 A$ ~, o- f; F4 }& l, R& j. ?  printf("%d  不是闰年.\n",year);. ~3 M, }3 o0 R$ p& o$ `2 l6 L: b
    }
    ) k$ {9 I2 d1 f, K  v6 r% d% B! i, X2 L
    7 E) y0 Y- c- w% n; E& \) m

    ! Q0 R% p+ y5 W6 Z+ K+ y3 L4 H# @9.5解:展开后:/ p# X$ y/ D- S; e
    printf("&#118alue=%format\t",x);0 ~  V( A; x# R! i' `$ g6 r! i0 s. J
    printf("&#118alue=%format\t",x);putchar('\n');/ H2 m. X' M4 Z* Y, r
    printf("&#118alue=%format\t");printf("&#118alue=%format\t",x2);putchar('\n');
    ) I: ?1 n  b4 _- |8 l  d2 t输出结果:" m+ D7 g' [4 p+ g3 l4 t& g* _6 i, c
    &#118alue=5.000000ormat &#118alue=5.000000ormat
    - N1 ]7 q5 g! ?$ M8 j9 Z&#118alue=3.000000ormat &#118alue=8.000000ormat& f) R1 g: Q4 h  T$ V, N2 ?; T
    3 c; Q: r% r+ v" I9 E) x

      N: m3 x8 B9 D, `% ~, G2 r/ s9.8
    * N' U4 O/ |5 z. ]# E: S- a0 u# ?) Qmain()# N. o9 j* f" W/ ?5 E& @4 f
      {0 V& Y, N0 s& t+ X$ W6 H1 ]
      int a,b,c;
    * j& \# `3 V/ ?" W  printf("请输入三个整数:");" f2 o; t# w( C6 @( }
      scanf("%d,%d,%d",&a,&b,&c);
    / Q9 {6 D6 e4 q9 x  printf("三个之中最大值为:%d\n",max(a,b,c));
    2 H, Y' m+ m$ {  }
    1 a9 f0 \1 ]7 C# K! G max(x,y,z)
    1 \0 m1 ^7 n' Y: G  a int x,y,z;, U% C/ o& C/ h- R( f8 Z  k) Q
       {
    & t# w5 F# S. K' N   int t;
    - d# P: P( m/ I8 }* k   t=(x>y? x:y);
    / W. R: u6 w! ~2 d  X   return(t>z? t:z);! k; H1 I: S8 c* m- P' ~; E- x: D3 Y
       }
    - U2 l$ Y/ X( m$ h1 Z
    ' \' W1 Z1 \# k1 K) _: U+ ]5 o0 s, m

    ; v8 V( k2 C* {5 I; N9.10
    . \0 \+ E2 |6 G#include
    - B1 a6 a; B1 q9 N, O! z$ I* p5 y#define MAX 80
      \) P0 c9 Z$ y4 o#define CHANGE 1( `1 l1 {7 x4 ~: P
    main()" Q+ c+ V- L5 _" `* `+ Z* l3 z5 _+ b
    {
    3 u0 J4 n- H4 }8 W5 h, j7 n char str[MAX];
    3 b; M# u5 D  i, } int i;
    ( v3 t! l8 Q5 s6 X0 E8 O printf("请输入文本行:\n");
    . P5 V9 O/ \& ?% G& V8 J scanf("%s",str);- c* K) _7 L6 @+ x9 X
    #if(CHANGE): @) O+ }; g' D3 e6 z
      {- B4 Q1 u  N7 ?3 j* T+ w
      for (i=0;i  {' l- y  A+ k1 }5 C
      if(str[i]!='\0'
    # h  _, w+ z: k( y0 Y: W   if(str[i]>='a' && str[i]<'z' || str[i]>='A'&&str[i]<'Z')
    ; q7 w  O& h' D    str[i]+=1;* |! P0 t, n2 `! ], n, i0 K
       else if(str[i]=='z' || str[i]=='Z')
    $ C" L9 \2 J4 ~  @$ r: c    str[i]-=25;
    / B% H  ]" j9 \0 n3 i0 R- |  }
    : ]7 u& F) I' J& ~  ~8 Z2 \8 \6 K: \}# s3 k! D4 L5 M0 F2 m4 h
    #endif6 |8 P( U% r/ h& d3 ]8 a3 D
    printf("输出电码为:\n%s",str);
    3 ~3 s; w# ]# ~}
    & n" r: Y, }7 m( j, [/ E; j第十章  指针) B5 Q( n4 [. Z' u6 @
    10.1
    / C0 U' {# j% u( \: l* `main()! E2 ]( ]: l+ s- @
    {int n1,n2,n3;- o2 L  [/ {9 B  v+ m
    int *p1,*p2,*p3;9 f4 z+ V  e" Y4 U5 n- J
    scanf("%d,%d,%d",&n1,&n2,&n3);5 m& o3 n7 ]( y. y2 J
    p1=&n1;& S) ?0 T0 Z+ o' n( Q: ?$ Y
    p2=&n2;0 a3 X) W  L+ X( @  O7 _& @# j
    p3=&n3;
    3 h* t9 d/ [* C4 c: k$ I& B8 k  L if(n1>n2)swap(p1,p2);( C5 ^+ \. O" w4 Q
    if(n1>n3)swap(p1,p3);
    # G' e2 ]* R, D2 n& ?5 i( J if(n2>n3)swap(p2,p3);
    % C& j  {: D( ~ printf("%d,%d,%d\n",n1,n2,n3);
    8 I  @4 {+ g' K& |}2 U7 f; Z2 w+ [0 j# g1 |3 r
    swap(p1,p2)+ M$ C* R: I7 _" Q! G# F
    int *p1,*p2;. C' p0 J# h' G/ X+ i, V+ _
    {int p;5 E0 r: e  K$ V: l; ]* J
    p=*p1;*p1=*p2;*p2=p;
    3 |9 L( x( O6 P: l2 \& n+ S5 G9 K}- C0 v/ \7 W; ]. Y8 V
    10.2+ M+ A( \6 t) u* R
    main()
    " `$ y  A# H) |5 K{char *str1[20],*str2[20],*str3[20];
    5 P+ [5 W; B( y+ C4 O char swap();
    : z3 D- l. m7 |  t7 K$ w( ] scanf("%s",str1);" U" S. g" u' }
    scanf("%s",str2);
    9 r9 W+ C4 w' }$ t6 }9 q scanf("%s",str3);( s& S3 H0 i8 ^7 y- y. z. C- Q# o
    if(strcmp(str1,str2)>0)swap(str1,str2);
    7 B0 K# J) u( T' r! c! }! t if(strcmp(str1,str3)>0)swap(str1,str3);
    + Q8 X/ u. `, k6 @/ y if(strcmp(str2,str3)>0)swap(str2,str3);0 O; g5 G* f& Q- W
    printf("%s\n%s\n%s\n",str1,str2,str3);
    - t. d2 L6 ^& w- j+ G; S' `3 ^* ?- F}
    2 p1 Z  ?+ n6 `4 `0 G& Bchar swap(p1,p2)* l: Z' X  T" _4 [
    char *p1,*p2;
    ( ~5 w$ Q) V4 |; U( i. I0 y{char *p[20];# x6 W/ l+ m9 M: D" H, D. F
    strcpy(p,p1);
    4 I% L; [; @3 k& O4 }- X1 g strcpy(p1,p2);
    " d1 v' \' ]% Q strcpy(p2,p);
    ) K0 r0 g2 H! e2 n}
    ; p$ J8 s2 A4 L9 B& j10.3  s. X5 X3 T0 z; A3 E0 }
    main()
    + ?/ n1 A; X" Q' `- H8 F{int number[10];
    - W4 L, x& t7 i4 C4 q input(number);# p- @, d; S0 A/ y
    max_min_&#118alue(number);
    * S' i5 {4 x9 ?9 W! G, i/ b output(number);
    2 K# j+ Q/ {" e }
    ; P; K1 P& v  [& T% J# C/ ]8 jinput(number); _3 o* [5 z$ r+ ]' {! V
    int number[10];" y1 \& d4 X' l) W5 ?
    {int i;
    0 {% x6 ~( v: `3 G for(i=0;i<10;i++), P* t( t- }! A" Y& o
       scanf("%d",&number[i]);/ l) f; K+ p. p: l
    }
    ) l( U4 F& V: Xmax_min_&#118alue(number)
    ; Q+ k! L9 U$ O" Pint number[10];
    , o' g/ F, ?( ?* E, h7 G{int *max,*min;
    , p- t% U% y/ B  _. F0 }  F+ U int *p,*end;
    ; z% g% C6 n% i' A  C+ j- A end=number+10;5 y3 _1 u9 K1 n8 o$ g" Y
    max=min=number;
    4 _3 s2 E" x! J% _ for(p=number+1;p   if(*p>*max)max=p;# S  U! r/ V& n0 d" F' z
       else if(*p<*min)min=p;4 C4 F$ Q+ T$ n2 D$ |1 a. y. K* L& S
    *p=number[0];
    4 Z5 G, G1 r7 s' M number[0]=*min;+ D# K6 N# _/ k- |# m/ }% |
    *min=*p;2 Z& D/ v8 T( U+ @$ }# ]& l
    *p=number[9];
    3 x" Z; p9 U) i0 V number[9]=*max;) J) W& D: p+ r
    *max=*p;
      a$ R' R( g9 v' B# q, i return;
    ' I$ Z) g3 o! N}
    ) R: h( h! Y0 t9 L3 u% s" houtput(number)
    , Z3 r3 r: C5 Z. bint number[10];
    + \" f6 q8 @/ S& E{int *p;
    6 z! ^' o" L& k5 |. N) g' T for(p=number;p   printf("%d,",*p);2 \. e: E+ ]" @8 f( k7 a
    printf("%d\n",*p);' a! Q8 A& c& j/ b
    }
    + F7 L. `7 \* r- A$ [5 p9 g/ I10.4
    1 G7 \8 _) I: c, [" s7 C- gmain()
    # W5 x( s2 s% G; R{int number[20],n,m,i;" j8 e0 l+ \; a& M; ]6 n
    scanf("%d",&n);( M- `2 T1 E1 T) T! |: Q" N
    scanf("%d",&m);, K+ I2 p# w$ m3 ~  e! b! O; W+ n& y
    for(i=0;i   scanf("%d",&number[i]);1 X: r4 f# b2 V2 D/ N! H
    move(number,n,m);
    # J! Y7 F9 {1 h for(i=0;i   printf("%8d",number[i]);& o+ W  v, n8 J2 Z6 _& g' E4 R
    }
    . E: q, z, f+ @+ _# K: hmove(array,n,m)( x/ P6 G% m3 V+ W; b5 S
    int array[20],n,m;  u9 Q5 j) G5 F- x$ P
    {int *p,end;+ |$ D4 ^7 W5 c9 \
    end=*(array+n-1);* o9 H" }2 s+ {( P+ Y. s% ~" s/ e
    for(p=array+n-1;p>array;p--)
    6 Z0 D3 l, g( S; A, c$ }" v   *p=*(p-1);+ g& Y# v) [  W; k" ~, J7 l: _
    *array=end;
    ( B& L2 W* s( H3 H m--;
    : F8 B- a1 Y  B& I9 T3 w0 H if(m>0)move(array,n,m);
    , _6 ]" Z) S- K3 z; e1 D5 n}( n' D3 m9 x1 E+ B& i" Z: c& I! n7 n9 W0 i
    10.51 [6 A% d! k" U. G3 l- A( q. A
    #define nmax 50- h' _: J' A) ^
    main()
    ! V  `  A. z; s# ?& n: F{int i,k,m,n,num[nmax],*p;5 d3 Y: |# e: }/ X
    scanf("%d",&n);
    $ q3 l) B- O% d6 O8 O+ S p=num;
    8 Q! K) w, V! _; p8 |, S for(i=0;i   *(p+i)=i+1;( V* i- F6 A% O2 N& {8 M
    i=k=m=0;, {  y2 c! Q" h% j
    while(m   {if(*(p+i)!=0)k++;) Y7 l8 j8 y; T4 `, k
        if(k==3)& l  Q8 y. B9 y4 U' ~  |% ?
          {*(p+i)=0;7 L( \7 c' s6 c8 T
           k=0;% p8 V& P% E7 C6 f
           m++;
    $ e% E: X/ o0 E      }
    5 z5 N) @( B8 a3 O    i++;0 m) ]$ ]6 Z) M2 s  ~" U6 [# e
        if(i==n)i=0;; s/ V2 H( Y# _) h" n! n
        }9 z- t4 q0 c, N0 B
    while(*p==0)p++;
    , }' u9 D/ m; V4 x printf("%d",*p);+ u$ ~( U" ?8 i' E+ K
    }
    4 \9 H' J$ ^0 o, `! O, O" p$ D10.6
      Z; a; W3 p2 c: `/ H- B! J2 cmain()
    / ^% ^8 r7 W' V: t6 u4 N{int len;6 Q& h6 a8 n5 |+ {0 c( V: S) F! C% G
    char *str[20];$ i* p* |7 M2 x9 R
    scanf("%s",str);
    + o& S" i. g- _+ |4 D* \  ~7 | len=length(str);
    ' I, [8 _2 J, }" j( N- N- F printf("\nlen=%d\n",len);
    / {7 N/ H1 b+ D7 O}
    0 F$ S# s: v0 o4 P. p: ~* rlength(p)
    " O9 `, s; |9 ]) l( b- ~char *p;. u5 f" T% d0 p' G' s7 \% j* i
    {int n=0;
    $ y" h  J8 ]6 \- q3 Z$ }8 r while(*p!='\0')
    3 k5 o% ]0 G" e4 y+ P7 E9 o   {n++;p++;}
    0 c) ^4 Q' V$ ]) s( t8 p- E return(n);: G( B1 o. M) p6 n% ~* z
    }
    / X3 p4 f5 t, Q8 D* P8 ?( o/ S* z10.76 c7 H4 u7 y5 I
    main()8 h/ P/ A% I3 g- K( A/ Y8 O- v5 C
    {int m;" H( w/ t6 `" h1 S1 H) n
    char *str1[20],*str2[20];6 z# }# P  g9 X' [
    scanf("%s",str1);( }/ x9 `! S% {# y+ \: X1 Z1 w
    scanf("%d",&m);0 z+ D) R  g! l4 e
    if(strlen(str1)   printf("error");
    9 l/ X- d: I9 K* @9 N$ G9 [; C else
    : @" S  s0 h: P4 t   {copystr(str1,str2,m);
    ) J& k" C& B7 O- ?/ H    printf("%s",str2);+ J- ]0 c/ V* w/ X+ n( y
       }0 ]$ Q1 y$ ~% c; J' l
    }
    + Q9 R$ p0 r0 b& A8 V+ n- J0 z- Icopystr(p1,p2,m)- ]$ [7 O# g9 G
    char *p1,*p2;% H/ v# m/ f; B
    int m;
    5 H9 L4 F) Z+ u/ |{int n=0;' w5 S4 a: l2 q; z# X
    while(n   {n++;p1++;}0 B' u* M8 G, F3 u/ s# |" a
    while(*p1!='\0')
    6 p; u) u, k- N' g2 y   {*p2=*p1;
    3 w. C" c, _/ s    p1++;$ ]7 q2 {- }7 @: u
        p2++;6 p7 S9 p& T: w8 e9 n( P6 H
       }
    2 a/ ~. o& v2 z) ` *p2='\0';
    ) f7 h: u$ X7 @8 b, b}+ E. _) e( g3 Q  o. B
    10.81 z2 u9 @& y8 m. h
    #include"stdio.h"
    7 R6 ~% o( U# ~% E0 ymain()7 g: a0 |! h1 y1 {  [$ c; x- U
    {int cle=0,sle=0,di=0,wsp=0,ot=0,i;
    $ d+ I4 r9 C3 F/ ?7 S$ m3 A, d) `/ n char *p,s[20];
    3 g- ^. w. a% a for(i=0;i<20;i++)s[i]=0;4 g2 O0 ]+ m& s4 @
    i=0;
    . }0 ~5 L2 z0 ]8 h0 Q( s while((s[i]=getchar())!='\n')i++;' p: v) m) b) J) k2 k
    p=s;
    / `- V( G7 n7 z8 `0 Y7 I while(*p!='\n')
    1 Z' Y8 n) j8 x1 @) I0 ?   {if(*p>='a'&&*p<='z')
    ( y& `- _. n/ v+ I) G6 i9 C2 h      ++sle;
    ( y, M* L5 R( w9 e' e    else if(*p>='A'&&*p<='Z')% T' t+ t( b- |; \7 ]* V, T" D
          ++cle;* F8 F2 `" A& X- \4 \) C
        else if(*p==' ')) n; v% C! a7 d0 A) x+ ]
          ++wsp;* m- U$ r, N, m+ ^* p
        else if(*p>='0'&&*p<='9')
    % F: H* O1 I3 \5 h0 k9 S- q      ++di;1 u1 m! T; u0 m; m9 l% M5 q
        else( C% G4 b% F% g/ `8 o
          ++ot;
    - Y% E7 l# |  P: o, b    p++;9 B. g1 N- d$ j0 f
       }7 z, u( ~4 i& u. V
    printf("sle=%d,cle=%d,wsp=%d,di=%d,ot=%d\n",sle,cle,wsp,di,ot);
    6 x- e# r( z2 r) k$ d}
    6 Y8 G5 o4 u3 m5 ]/ i7 Z) H; o+ t10.91 K- Z+ `! q/ C( X4 V" x0 V' P. j
    main()( E/ E. h7 h2 ~% V  Q! I5 k! R
    {int a[3][3],*p,i;( b+ }/ d. Z4 b/ d" i: D
    for(i=0;i<3;i++)
      A  H6 v  B- I: a. L5 t   scanf("%d,%d,%d",a[i][0],a[i][1],a[i][2]);
    5 T8 w5 ?% ]8 Z' g, P# {& I: d- q p=a;- N% y+ L# R  A, n/ D8 v' P
    move(p);" x/ C( v9 K3 R+ n/ N" {
    for(i=0;i<3;i++)! V$ C) I: r. N( J' n5 ~2 x# L+ `
       printf("%d  %d  %d\n",a[i][0],a[i][1],a[i][2]);
    / Q3 u# s+ L- h7 b1 W& i7 g  S}  h' I" K# T% E& j. |: y5 [9 [* L
    move(pointer)5 I0 D7 b# ~1 k
    int *pointer;" |) w$ ]( ]( J2 }6 L
    {int i,j,t;6 i! [/ ]+ O5 p6 Q* n5 Q6 |
    for(i=0;i<2;i++); A9 X) Y/ v5 j
    for(j=i+1;j<3;j++)
    # `! \6 k2 D7 L. j, l# B6 N   {t=*(pointer+3*i+j);
    5 ^! u+ m) A. y. l    *(pointer+3*i+j)=*(pointer+3*j+i);
    2 y' ~) x( g, F& V5 B- }    *(pointer+3*j+i)=t;
      k; n! X* T* N  w8 X# \* W   }
    " R0 _( I; ?% t) G. ]( P* a& W# d}
    / E' ^# O/ S/ A0 o% F5 h8 E, q10.10
    # w2 D! [/ @! B' |8 |9 w' Gmain()) d/ X4 C1 [7 T1 o$ K* A! U7 i6 b
    {int a[5][5],*p,i,j;
    $ r8 c7 Z; q9 a" h5 F% | for(i=0;i<5;i++)  R3 F3 x7 P+ H! J. \
    for(j=0;j<5;j++)7 g5 _# ?7 @6 s7 |. m
       scanf("%d",&a[i][j]);
    # _1 t* x  J" o) A p=a;  D3 I7 g$ d8 p* ^7 s+ [
    change(p);
    - s! P. J9 O0 j for(i=0;i<5;i++)
    * a3 ~3 G! \  J4 o, D   {printf("\n");
    . @9 u5 A. f% G1 p7 r    for(j=0;j<5;j++)
    9 {. E6 g0 n& c* B: C      printf("%8d",a[i][j]);: P4 w4 A) g! G! E* ~2 g) q
        }
    5 Y% [) i1 [% N1 p, K+ O}
    , T8 P( o; p5 p: l1 e& B& Qchange(p)
    1 G4 W$ A7 \, B8 ~3 Eint *p;: T( e8 Y# `- ?/ n, ~
    {int i,j,change;
    8 Z  R: Q2 E  \ int *pmax,*pmin;
    . V* Q$ I/ a. H( ]( L pmax=p;6 U& z( ~3 e2 C+ _0 a* L
    pmin=p;
    : r) k9 o! I7 |! }, C& h for(i=0;i<5;i++)
    4 ]# x  V# w  x1 U2 ~6 @   for(j=0;j<5;j++)
    : O) {2 D9 R) q. Q0 i0 d     {if(*pmax<*(p+5*i+j))pmax=p+5*i+j;
    % d2 S4 C' Y- q      if(*pmin>*(p+5*i+j))pmin=p+5*i+j;9 h1 m- s+ W0 h# q
         }% U8 D2 W8 J  s( f
    change=*(p+12);
    - w1 t4 Q/ M, V2 \ *(p+12)=*pmax;
    1 |; ?: B6 j3 C% K *pmax=change;
    " a' G5 W9 u! j3 C change=*p;3 a7 |0 [. q' B+ b* N# H3 g9 ^6 C
    *p=*pmin;
    . p! d# n# t3 \% s  t; m! c" e *pmin=change;8 K! z  T  T" l* x% @' ?6 \+ S( h
    pmin=p+1;6 s4 r( `( V* w8 R; C* K
    for(i=0;i<5;i++)
    3 C" k0 u  V" u  \0 }9 D* s0 X   for(j=0;j<5;j++)
    ' `  q4 U- x) z     if(((p+5*i+j)!=p)&&(*pmin>*(p+5*i+j)))pmin=p+5*i+j;7 \* A7 n8 k8 n+ @& `# T7 v  y
    change=*(p+4);
    3 `* V# {: [* Y) [# Q0 e *(p+4)=*pmin;
    . Q! {. D1 q) e( ?# p *pmin=change;
    4 ^: x+ t) M" B) a) E8 v pmin=p+1;1 G9 U& C0 @8 {  q4 w( l
    for(i=0;i<5;i++)( S0 ]6 S3 b0 ]% s4 n
       for(j=0;j<5;j++)
    $ d0 Y! y) _: v0 Y, t     if(((p+5*i+j)!=(p+4))&&((p+5*i+j)!=p)&&(*pmin>*(p+5*i+j)))
    - g- ]- r2 I/ b4 j; T, Z        pmin=p+5*i+j;
    1 H  x+ _& ~0 p& f$ x: \ change=*(p+20);; }+ U2 ~9 L. @; |3 Y" u
    *(p+20)=*pmin;
    $ c- n5 \6 {' R0 Z! B% K( _0 e *pmin=change;
    ; N8 |- c6 f+ m3 ` pmin=p+1;/ P" Z; ^4 X$ a1 A" b( ~9 C" d
    for(i=0;i<5;i++)3 i) j/ }8 d7 ~. x% Y, O( k
       for(j=0;j<5;j++)
    , q% w; Y/ y5 s     if(((p+5*i+j)!=p)&&((p+5*i+j)!=(p+4))&&((p+5*i+j)!=(p+20))
    3 i3 W" c# m& j# x3 H# a/ R            &&(*pmin>*(p+5*i+j)))pmin=p+5*i+j;
    # C, N7 [/ W- |( m( O/ g change=*(p+24);
    6 T9 m# J# Q+ N% J2 L  J8 N, o *(p+24)=*pmin;
    , h( M0 W% t4 F" m- f* a; ]# } *pmin=change;
    . _3 I2 }% \( Q% {}
    - m: u! ^7 n8 x& R5 E0 O10.11
    " }4 a3 W9 ]9 H7 T  L! M. E, lmain()
    $ W$ P* y7 M5 F8 b4 l{int i;0 s& k4 T" A2 G1 Q7 W8 G$ h2 D
    char *p,str[10][10];" ], E0 {9 w+ d
    for(i=0;i<10;i++)
    , z8 z; S, ?5 Z' W   scanf("%s",str[i]);8 q2 N2 I5 E+ n2 l5 ~& b; J
    p=str;  \8 \% Y+ `2 o$ F4 p
    sort(p);. T# ^# `: O% w# l
    for(i=0;i<10;i++)
    & B/ g& Z* T7 b: M4 l   printf("%s\n",str[i]);
    4 R! X9 {+ Y  s- h1 E}2 d2 {# S9 g2 G: H
    sort(p)) D3 P  I( V! W
    char *p;
    # \/ V/ G# }7 A* R( z5 G. J+ N{int i,j;
    ; V. `3 j: |0 F2 }% G' ] char s[10],*smax,*smin;2 j. Y2 i. [1 }% {9 T5 {* p
    for(i=0;i<10;i++). D" R$ n2 V$ m. t, \9 T
       {smax=p+10*i;. R$ \# f" ?1 i6 j1 z
        for(j=i+1;j<10;j++): v, \* O( p. |
          {smin=p+10*j;
    ! H9 R. K) Y. P9 H+ z8 X3 b       if(strcmp(smax,smin)>0)
    % q( i: m9 q# K' H" `: j+ B         {strcpy(s,smin);* W7 i, ?: Q% n
              strcpy(smin,smax);! Q) ~5 F: {/ j' t, Q) {6 X* B
              strcpy(smax,s);
    . ~  M8 M/ R! A6 V         }4 n% l3 q; B$ Q$ Y4 d
           }
    ) K  P* ~* \" Q6 M  W- |% |8 n    }$ Q# }9 x3 F; t# h1 F- v
    }4 w) \+ D+ W6 U
    10.12# W/ V+ M2 j- f. Q9 c6 O# I: W: U& [4 e
    #define MAX 20
    - e' p1 n1 D6 N9 D2 R+ Pmain()
    1 F2 g- E  ~  D% I{int i;; {( j1 u' V& B: l
    char *pstr[10],str[10][MAX];8 X( R- x/ H. E1 X. s% Z- ?# x
    for(i=0;i<10;i++)
    # G) z9 P) M; q% O   pstr[i]=str[i];8 E" m0 b: g$ h( A. t
    for(i=0;i<10;i++)* p5 C0 K. d; g" Y% [
       scanf("%s",pstr[i]);/ o' B/ Z: K7 }; f$ N) \
    sort(pstr);
    , M" Z  H8 }' v& |6 T+ @1 Q for(i=0;i<10;i++)
    ! n5 z; t- u& g1 f4 `0 s7 l0 [   printf("%s\n",pstr[i]);/ q" x7 Y( Q/ C( [6 j
    }
    4 u( p0 i6 M7 X$ C- X$ t# bsort(pstr)$ Z1 j/ ~. V; B  A7 r+ G
    char *pstr[10];) L/ E6 \1 ?1 G5 Q. a: f/ H: v
    {int i,j;6 A% w+ X7 e6 L0 {
    char *p;
    4 U7 ~/ k8 V8 m# b- G8 Y for(i=0;i<10;i++)
    2 l& G( O, ?; j( W4 h* z! l   {for(j=i+1;j<10;j++)
    & ^- a4 w) x- p      {if(strcmp(*(pstr+i),*(pstr+j))>0)  P1 |) A- N9 M' \( n  p
             {p=*(pstr+i);
    3 u; B  O& R: O' Y3 c          *(pstr+i)=*(pstr+j);0 m! c% j- Z+ B! E
              *(pstr+j)=p;
    0 j% P0 ~; y5 _/ E9 E8 L6 R7 D. g          }4 n/ a: ]8 P  t8 P7 t
           }
    2 v2 o# w* u- }0 U  [    }% d- |1 X1 d6 u3 v% n
    }
    4 g% J6 A+ H7 _' u10.13
    ; u6 i1 a0 q2 A4 P7 o7 [: b#include"math.h"
    5 A7 a. r5 |# y. ymain()$ c1 k) i7 ^/ k3 w0 ^
    {int n=20;
      R) x. N8 z8 \, o- q float a,b,a1,b1,a2,b2,c,(*p)(),jiff();
    + |- Q' E" O; T2 B scanf("%f,%f",&a,&b);& V# n0 V% u, H! p3 I6 T
    scanf("%f,%f",&a1,&b1);
    , G9 k% ~, l/ M$ M9 R# R( _ scanf("%f,%f",&a2,&b2);5 e. _, s4 k9 g2 @4 S. _9 D7 h
    p=sin;
    ; @) O& G8 u3 W6 V6 ~; T$ j- m8 i c=jiff(a,b,n,p);
    2 c. _0 ]! l: r9 b printf("sin=%f\n",c);
    ( f& l* G' D& b% e, q/ |) n, a p=cos;
    1 h. G9 J  @+ w; x. A; u9 A c=jiff(a1,b1,n,p);
    + _) G$ U4 q; Y7 t( q% B& v9 {: H6 F printf("cos=%f\n",c);
      Q+ Z% Q# E+ O0 L3 G" T0 a" J p=exp;
    * m7 y' R" ~. S' ^  t. z3 h( O2 l c=jiff(a2,b2,n,p);
    ; D; V! B: l4 e4 d8 c! r printf("exp=%f\n",c);6 x8 K( q7 P0 I
    }
    ; ~! m! ]0 `1 N6 l  rfloat jiff(a,b,n,p)
    / d. ^4 V+ Y9 T: J, hfloat a,b,(*p)();5 a$ ^1 w8 L3 q. Q
    int n;
    2 x/ c* v& t" d5 u{int i;3 Y& r$ G+ A$ b# L; s/ O7 C& B
    float x,f,h,area;$ k$ b& V8 n+ R: \3 v7 d& U( q5 P
    h=(b-a)/n;0 @- O" J, l8 C1 m
    x=a;) P% _# x1 d( u1 j. i1 d1 A! E
    area=0;
    ' W. b* ?/ r2 q, f" I4 w+ s for(i=1;i<=n;i++)
    9 }. w' d4 t. h0 g$ Y3 Z. v. j   {x=x+h;+ z9 k1 l) V3 l9 O# u6 x
        area=area+(*p)(x)*h;
    5 e5 U" k- ]! F    }6 O( J9 E' l0 c5 A
    return(area);
    " B7 E7 E4 o' b$ f3 g}2 m3 U2 R& v4 r0 B( H, t% f) X% ]
    10.14
    5 m+ X" D  A" r, xmain()8 N- r# C- F* L2 x) Y$ K
    {int i,n,num[20];
    ; C9 x9 X0 E. E% ?5 C- K char *p;
    , ~* v7 d2 n8 E6 j# @ scanf("%d",&n);$ U4 ^9 L; e, _6 `: ~# _
    for(i=0;i   scanf("%d",&num[i]);7 {- V, }# O9 ^6 [
    p=num;
    5 M- j( @& ]5 g0 `: c5 U4 G sort(p,n);1 [( g8 Q) U1 \/ F5 b: g$ w8 c
    for(i=0;i   printf("%8d",num[i]);" f: `! A- P; P
    }3 @* m1 s9 v6 E; n
    sort(p,m). f  P( l0 g- z5 I6 J# g! H+ C
    char *p;
    8 U7 k6 y) X; b1 ~/ bint m;) O5 m5 [& _: o& e$ f3 @- v( R0 m
    {int i;8 V) j9 R, k9 \) a" f4 u
    char change,*p1,*p2;
    7 L! j' S+ [' ^' c  ~" O- j) u# w: C for(i=0;i   {p1=p+i;
    % b6 Q+ I' A( k- f    p2=p+(m-1-i);
    6 _4 q( T  @! @! B3 W# B    change=*p1;8 \5 o1 q+ C- |1 d6 o' {9 i! I* _
        *p1=*p2;6 V4 M- U0 O2 _2 l+ M& e1 @9 i6 l
        *p2=change;
    ( o  H& ~" F2 u1 a/ Q& U    }7 {4 M" o5 Q5 A( ]8 S
    }
    : l$ @, w: C; Q& u$ J10.15- A$ M, Q& e$ G1 \  W
    main(). g/ K, ?) x; l1 j; y2 g$ F
    {int i,j,*pnum,num[4];
    ' }6 \2 I' r5 V+ W0 D# K% Z1 e* Y float score[4][5],aver[4],*psco,*pave;
    . z& ?+ s9 q9 e% D char course[5][10],*pcou;! k7 ~$ r4 `( Q' C7 ?
    pcou=course[0];" M$ }* \, X* [/ R" a* c6 m; E
    for(i=0;i<5;i++)
    1 B4 i* D" T5 _' a( {   scanf("%s",pcou+10*i);
    / V* e+ ?. x/ w) J3 { printf("number");
    - T0 n2 y+ E. e4 ]9 @ for(i=0;i<5;i++)
    * D7 s4 Z# P9 L& q% M0 m- o9 c   printf(",%s",pcou+10*i);: Q, d7 H5 e' ?! Y. W$ \$ _: P
    printf("\n");+ B, q4 S# }! ]
    psco=score;4 N1 x1 [1 t6 d1 c5 `5 F2 ~. a
    pnum=num;
    ) U  `2 ~- G8 m1 @ for(i=0;i<4;i++)
    0 h; D5 f0 M- r; x& K+ w5 X8 ~   {scanf("%d",pnum+i);
    0 T3 O3 @% n6 T    for(j=0;j<5;j++)" B" l$ u) d' G$ A6 b
          scanf(",%f",psco+5*i+j);
    3 Z+ k+ B6 _5 |1 K7 @   }) T4 U) r8 @% y8 x, I) S! n4 S
    pave=aver;- [, K; N) \6 Z% U& r, `
    printf("\n");7 b# R- p" k. z3 y8 `+ O4 ?
    avsco(psco,pave);
    3 B& f9 r- j$ z3 G avcour1(pcou,psco);
    5 a$ Y& h9 h0 l+ z printf("\n");
      O* R) n1 y' y fali2(pcou,pnum,psco,pave);0 E9 B) t+ M2 O- x; V
    printf("\n");5 u/ t' ~) p  M5 [$ O* {2 `7 Q
    good(pcou,pnum,psco,pave);7 Z% b* N* C6 I* k( S, Q" X
    }
    . ?2 M7 S( l0 Ravsco(psco,pave)3 r) O8 p9 ?! V; t
    float *psco,*pave;& h4 n- b+ q6 F$ J2 Z4 ]
    {int i,j;
    9 H0 |4 @# I- Q$ {0 J5 X7 n float sum,average;
    4 s: b# _& `8 h* @3 T for(i=0;i<4;i++)
    * P0 W( e& `# W; ]) r, b   {sum=0;
    ; A" A. |- A- X! {. V* `/ q    for(j=0;j<5;j+)
    4 Y( h) s. q$ J, T9 j+ h      sum+=(*(psco+5*i+j));; {) d/ x- N8 H
        average=sum/5;
    * U% ~- C5 M- R* p+ X, N: ^# x/ z( n    *(pave+i)=average;6 e# `5 X7 q( ~
       }
    : V/ L. i, p! C. ?* x0 ^+ k! K1 |}
    1 o% t+ E1 K4 M8 Tavcour1(pcou,psco)
    ; s2 {7 Y# o# X$ C. t1 d- ?) schar *pcou;
    8 j$ ]) n8 g) G! n5 q) n9 Q3 Zfloat *psco;* E7 q3 l0 U* l& o; @9 _* o
    {int i;8 w. y; B' X0 H; ]7 Q5 \$ ]
    float sum,average1;2 ~# r" ?' x: @" L# P2 |) I
    sum=0;9 e2 V% I- K* J& F1 k
    for(i=0;i<4;i++)
    + e( ]3 d+ S) E# e   sum+=(*(psco+5*i))
    9 q! j" }; p5 a: {6 g0 |( x& S) X average1=sum/4;
    $ z- q5 Z6 F9 m4 C% Q, F! q printf("%s      %5.2f\n",pcou,average1);
    3 P- s# O1 V. a) Y6 `$ s9 [}
    * Q  F1 D3 `3 a6 D- Zfali2(pcou,pnum,psco,pave)- B, [; u# |) z' [! L
    char *pcou;
    ) E8 x- Z3 [. [( d5 ]' J7 L  Eint *pnum;
    8 ]% y1 j8 P% [7 Pfloat *psco,*pave;- x! z- _& D1 C+ _7 o1 h: `* Q% C
    {int i,j,k,label;
    1 h) l8 q) {1 G( c. j$ b2 h9 A: l printf("\nnumber\n");
    ' D4 C' E2 i# Y0 a for(i=0;i<5;i++)4 ~$ L9 M0 ]) J: u; a3 u& S
       printf("%-8s",pcou+10*i);
    . L& E* c& w% }  m. P printf("\naverage\n");$ [% F2 G- p3 P; V1 s
    for(i=0;i<4;i++)
    ' O* H% k" b; S% v, ]4 v( S   {label=0;8 E$ {* m. o8 C7 v  R
        for(j=0;j<5;j++)7 n, Q& m) ]9 Y: x
          if(*(psco+5*i+j)<60.0)label++;, |. X( g, A+ o, O: S/ {
        if(label>=2)- U- \4 I, y$ n0 X
          {printf("%-8d",*(pnum+i));. k1 B3 i  K1 S& _1 z9 i
           for(k=0;k<5;k++)
    3 ~- X: u8 {' V8 D         printf("%-8.2f",*(psco+5*i+k));
    ' {; L3 e6 y5 P: O, Q       printf("%-8.2f",*(pave+i));4 `$ I4 k  _" |
          }5 ]* r. Q) t) T; i' c9 B9 \
        }
    - ~- R7 Z, c7 c+ @}; Z! B+ r, j( k1 u" K9 V. j! G
    good(pcou,pnum,psco,pave)
    * B* j- k4 E4 r/ d/ J7 Hchar *pcou;
    + ]% B: v9 ^/ _, G; ^' dint *pnum;
    ' |; ?7 n/ y* Y0 L! v6 S; Mfloat *psco,*pave;
    % @, @, t$ ^+ T: d{int i,j,k,label;
    6 @" b- p: _9 p3 i/ T printf("number");6 ?1 r$ n! ]0 C( ?3 ?; t
    for(i=0;i<5;i++)
    , z7 f1 _, M9 v9 y5 Z0 h! g   printf("%-8s",pcou+10*i);
    2 C/ F1 f- x7 _1 O% b: }5 O. X printf("average");
    . j. w) Y( S+ Y- w for(i=0;i<4;i++)
    6 e! W4 W& o  x( P   {label=0;4 D) U0 {! W  x* K( l. K
        for(j=0;j<5;j++), j# e; y8 j+ _8 H: T
          if(*(psco+5*i+j)>=85.0)label++;4 O& s: U: D8 D% }* v4 W
        if((label>=5)||(*(pave+i)>=90))
    * W& p8 J' w: Z: G4 S( m( \      {printf("%-8d",*(pnum+i));
    0 P  c4 w. \. N) d, Q2 h       for(k=0;k<5;k++)0 |( a& i) L" Z# d( f+ d$ T
             printf("%-8.2f",*(psco+5*i+k));9 ^' F- ?* [2 ~. @& f" m3 ^" b
           printf("%-8.2f",*(pave+i));: F. F" K) O  t1 L9 Q" R
          }  ^- k5 `- N: g; B; X" _5 v
        }
    2 c% r2 g( E7 y, k$ u6 l) n9 q}6 c9 O, q; v8 [7 v3 _3 B" y
    10.166 f% S0 ~: s  \1 W3 X2 Q1 q" G( {
    #include"stdio.h"* |$ d1 M! o9 p7 v/ ]
    main()
    2 A4 P& R1 E) p9 @' Z7 T{char str[50],*pstr;
    " |& r" ^0 X. O5 z int i,j,k,m,e10,digit,ndigit,a[10],*pa;
    % F* a. b: B& e# ?# [$ W gets(str);
    9 T1 ]/ e3 v9 U: E$ u pstr=str;
      k) f& E: j7 H$ V* ?  c pa=a;
      v( V+ d+ E2 x: _3 k1 V/ D: k1 y ndigit=0;
    1 F; Q5 J& ]' t: f  L% u2 { i=j=0;! X9 {- t! V, e& ]+ t0 m
    while(*(pstr+i)!='\0')
    ( H( _: c6 H3 V, P: }  }  z   {if((*(pstr+i)>='0')&&(*(pstr+i)<='9'))
    1 \$ ]' K  T; I4 W      j++;
    6 x0 H. E6 E* T* ]" L    else
    1 B: j: b6 z2 G' @3 S# Z  F: N& o      {if(j>0)
    5 _5 G; }8 M( H3 s( _7 Y: G         {digit=*(pstr+i-1)-48;" d2 L  O# f" ]' s3 I
              k=1;# `& ?# f3 }& |& x& U
              while(k            {e10=1;
    1 M3 I; z" B0 _, i0 I% F7 Q             for(m=1;m<=k;m++)
    ) H4 o3 X& w* k1 A: E: [# g9 u               e10=e10*10;
    % ?8 X0 M5 I( n6 ~" `/ D2 d' _0 J$ p& e             digit+=(*(pstr+i-1-k)-48)*e10;
    9 Y3 H* ?0 l2 V% t* K8 g& z             k++;
    , x) x. M# Y" E. m- S, }            }! J; O' v4 Y% `0 K+ q- I
               *pa=digit;- C2 N( a2 B( g- @3 H: n4 l: ^6 H
               ndigit++;4 U6 X$ t* c$ V6 R  j; y7 O
               pa++;
    $ _3 m  b7 m4 n* z9 v           j=0;$ C+ @- _- F) ?8 D8 e; }; D/ Z
              }
    0 o3 D/ `6 F8 y+ l; {        }
    $ m: Z5 D8 Q: B& L6 w6 A     i++;& g# d3 V* h7 {9 ?
         }
    " k: Y! N/ _6 A% a5 r5 M if(j>0)* l( K% W( d/ L+ f1 \' e7 N3 d9 b
       {digit=*(pstr+i-1)-48;/ @# L9 F6 [6 Q0 K- V
        k=1;
    2 o3 M# W0 z& v4 F    while(k      {e10=1;
      ]5 b' A3 l, L( i; S  F" j9 r       for(m=1;m<=k;m++)- [) A6 d! c1 i/ o" ^% ~
              e10=e10*10;" T/ U3 p1 C$ C2 E
           digit+=(*(pstr+i-1-k)-48)*e10;9 B: m# y3 G6 e5 ]3 H4 w. }
           k++;
    $ x4 w3 @% g" h       }: B- X+ e" S/ E% V
         *pa=digit;
    + r3 O4 t4 W, W% w, C4 W. R4 M     ndigit++;# b1 W9 `1 d' W$ H" s: v2 X
         j=0;
    ' Q0 y, d- F. \: D2 \    }   
    - l2 K+ ~) l0 a3 c  o printf("ndigit=%d\n",ndigit);
    . h( D* a' J3 m! d# t1 D( [ j=0;
    ! L; u5 |. t7 D+ C2 v pa=a;% W8 K$ O# F, ]
    for(j=0;j   printf("%d",*(pa+j));
    * g0 k8 `. F* Q" h}- }3 D, V! i- q# V! A% c5 [. l
    10.176 d8 g. B. k: F1 E
    main()- r+ X8 S0 g3 {* G$ u; t
    {int m;  D% q( p2 t  B" v# ]
    char str1[20],str2[20],*p1,*p2;
    + p4 d! o% V/ O! Q+ \. Z scanf("%s",str1);
    # }; {$ L1 c1 N' d- ?2 K4 r' u scanf("%s",str2);8 w' N! J8 j3 U% U6 S: `
    p1=str1;
    8 W# T2 E' b! o. a; \ p2=str2;9 H$ \# O, V' C- K& Y
    m=strcmp(p1,p2);
    1 z& y2 |0 g8 x% P5 J$ M3 B- W- w  l printf("%d\n",m);
    4 [4 Z! H- V" R% y! X}: x3 n* W( Y! j  L# G5 D
    strcmp(p1,p2)
    : b/ ?. c8 {7 E+ G. w. ]char *p1,*p2;' }2 S1 x8 _0 O. U, D% e2 j0 W
    {int i=0;& ^6 H+ a$ F/ @
    while(*(p1+i)==*(p2+i))8 G. V: D7 Y) `$ }: y3 S
       if(*(p+i++)=='\0')return(0);1 Z; B; ~! b, {8 q" P
    return(*(p1+i)-*(p2+i));
    ' ]7 u4 g& I- I. @) u' ]}
    9 q2 B$ ]7 M4 o% m. h6 M# j& P10.18
    6 @! Y' o! H  D# h+ E& i8 Kmain()! J( _1 B/ g6 s: E3 c* d
    {static char *mname[13]={"illeagl","January","February","March",
    % p0 U% w- l) ?; |( U   "April","May","June","July","August","September","October",1 A& P; e. A# l' J8 t  i
       "November","December"};
    2 A( H' S6 C0 |0 a int n;: h) R! Y. g" b
    scanf("%d",&n);
    * |3 p/ e- J. b if((n>=1)&&(n<=12)). Z# Y$ T: o$ C+ m
       printf("%s\n",*(mname+n));
    ' D' }. M; [" q: Z else
    - j6 |% e  Q- l' k" m   printf("error");9 @+ U, ]) C6 w! f
    }
    0 a$ C" e2 A& M0 L10.206 u/ Q% \/ @5 p1 x5 }
    main()- g0 j: K: C/ b& n
    {int i;
    , o* S. y0 y, E& k char **p,*pstr[5],str[5][10];
    + H+ p. e3 _1 i1 n' J5 A) T; m for(i=0;i<5;i++)1 @" }% V) n. @. ^& i# E
       pstr[i]=str[i];
    ' h, f+ i$ B1 g9 Z3 r8 ?5 G for(i=0;i<5;i++)
    / u8 {* J/ D. Y) N5 S% c8 C; n& U) w   scanf("%s",pstr[i]);) o; g2 O# ?. |6 F) J
    p=pstr;" @5 l0 R8 p& y  c, q' `8 L
    sort(p);. z. i+ b. V6 k8 l" B# H* Z
    for(i=0;i<5;i++)
    3 `; f% D* k: M$ B. d7 I7 r8 N   printf("%s\n",pstr[i]);4 X+ g- k3 F9 T7 c$ D6 \: m
    }  }1 [7 \' ~7 d! G; ~
    sort(p)) ^6 t0 X& V" \
    char **P;  o/ p) Q* b9 [) |1 H
    {int i,j;" r( S. h% W( a3 f3 _! _, M. h
    char *pchange;+ }. ~6 \( t8 v9 q/ ?/ {9 c
    for(i=0;i<5;i++)  Y& u8 _1 K+ E7 @* ?3 g
       {for(j=i+1;j<5;j++)
    * L. F5 R, i7 T      {if(strcmp(*(p+i),*(p+j))>0)
    & k9 g$ B3 {0 E) A: ^9 g1 F- p         {pchange=*(p+i);' K3 I& s+ c, D0 A
              *(p+i)=*(p+j);; q3 y3 \  j$ \; F! p* N- z
              *(p+j)=pchange;6 a4 e; G/ _8 [/ D3 N; M
             }5 b9 q/ |, s& _
           }9 B! Y; y# U, H/ Z
        }
    9 u# V; n7 b- k: t4 G}  r6 _, E6 D0 s1 n  r0 u  q
    10.21
    * h0 w) \# N6 x) l1 j5 qmain()+ w2 k( N  c; L* D5 P
    {int i,n,digit[20],**p,*pstr[20];
    : H  o, o* x2 t1 } scanf("%d",&n);
    + \& E- ?# u: m, X) s/ h for(i=0;i   pstr[i]=&digit[i];
    - Q7 a! R# L4 v' \) r# k; g1 m for(i=0;i   scanf("%d",pstr[i]);
    7 G7 T  j2 B. K- c( ^9 o p=pstr;
    9 t8 w- q! z' z# P, E# c3 ?( E sort(p,n);- R5 m; s. m+ c; x- g2 q
    for(i=0;i   printf("%d   ",*pstr[i]);
    5 X0 P+ o# `* O- ]( p6 R& l}: _2 S$ D! R3 g9 Z; [$ g
    sort(p,n)* |6 e( \* I7 O+ _9 |
    int **p,n;' i9 @+ {% c1 Y$ V! A! e
    {int i,j,*pchange;" s" y; d. c$ i: A9 p
    for(i=0;i   {for(j=i+1;j      {if(**(p+i)>**(p+j))
    ' g" ]) g& @( J7 o         {pchange=*(p+i);/ _% S+ i( d: [2 c3 B7 E
              *(p+i)=*(p+j);7 D5 ^& g# N+ F/ d
              *(p+j)=pchange;
    9 G( |5 k! d) ~         }& A3 d  {7 |9 L8 c3 y+ I9 g
          }
    , M1 |  e* }1 C# ~* Z: V    }
    , l5 w9 K, V# X, }" R}
    + k# o% S; `9 I+ A' P3 ]5 l- y第十一章  结构体与共用体
    7 \# L2 b( P( W1 P; E- Q" e11.1
    & o. C! J) V( w' D! A6 H  c- W  C& ystruct
    ! `2 B) b4 m' \  {int year;* o0 L) i% k5 A* p
       int month;
    " k4 B9 }5 s6 j5 q4 _   int day;
    + P  r; Z/ m; O+ A, x+ y7 \! W  }date;6 g; i5 f2 v' X. G
    main()2 C+ f$ M! ~( V8 T3 D
    {int days;
    , j- U( j3 O/ [8 \! t. x scanf("%d,%d,%d",&date.year,&date.month,&date.day);. \# C; C, d1 U3 h2 {/ O
    switch(date.month)
    4 P. g' l' F) c- V+ Z# g# q4 ]   {case 1:days=date.day;break;# n+ P9 R* r+ ~5 s  t9 Y
        case 2:days=date.day+31;break;
    ( s3 s: P! _" i7 o! M& n. p    case 3:days=date.day+59;break;
    ' \5 o+ ~* d% a    case 4:days=date.day+90;break;' }$ G# z( j& p- W5 {) W" W
        case 5:days=date.day+120;break;
    1 @! ~& C- x9 g7 P- G% f    case 6:days=date.day+151;break;
    + ]( M5 ^2 m* }    case 7:days=date.day+181;break;1 e* P) k  {: @
        case 8:days=date.day+212;break;
    , s" H8 r* b8 _1 Z, w    case 9:days=date.day+243;break;
    1 C$ N3 \' Q. d! [    case 10:days=date.day+273;break;
    ( _% G: o8 S. B" S+ \* I    case 11:days=date.day+304;break;$ O6 t4 G$ k/ j8 b6 D' \6 V3 D
        case 12:days=date.day+334;break;5 n9 @) X+ M+ a0 g- @: J- U
        }
    % q, R0 v& s; Z! z0 e, U if((date.year%4==0&&date.year%100!=0||date.year%400==0)# U& J& a2 ?( Q
                              &&date.month>=3)7 Z, ~& r: ~7 n8 Z0 }8 M! H0 {5 `6 L/ y
       days+=1;
    : a! U* W# r3 i% [ printf("days=%d\n",days);
    + H& ?# A% ^) j  O) h}3 m2 k, r' \: H* D8 q/ E& e
    11.2
    6 y* D: a1 B9 V+ [2 lstruct dt
    0 E: C: a8 \+ Q2 n  {int year;: h- {1 v# E6 m' i$ c7 W
       int month;# O3 F8 \- @: o  K
       int day;! V8 m; _6 r3 D6 n1 X- t
      }date;, v4 d! W0 D; s$ t+ D
    main()
    1 l7 j3 j0 p' Z$ w{
    : z; ^7 N3 F! N# M' `* c3 r scanf("%d,%d,%d",&date.year,&date.month,&date.day);5 \. }" P* J+ P, }* [0 ]& e6 c& P
    printf("\n%d\n",days(date.year,date.month,date.day));
    6 [! U4 w( ]% j6 l, h7 m}
    ( Q- U( A$ ^7 g- S5 B8 Q. Ddays(year,month,day)! Z$ A# t6 B% y% h5 U- e9 z# Z
    int year,month,day;
    8 d2 x- F# z. H4 }{int daysum=0,i;" [2 i6 h8 w- z( x; m. ~& i
    static int daytab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}
    ' _  p- T* K; b4 N# `5 U for(i=1;i   daysum+=daytab[i];# V2 W! ?$ o' m* i' N9 x
    daysum+=day;8 y+ ?7 i" s1 m( `% M* c
    if((year%4==0&&year%100!=0||year%400==0)&&month>=3)
    ; C, _8 m" f, V- E: ?! n4 ?0 x   daysum+=1;4 g* V% W6 R0 n
    return(daysum);& D" H7 N) F1 @7 Z" }2 N* k
    }
    1 o5 u2 d, k, G; L% P3 @11.3
    & f- _  r( |# e$ G( s11.4
    ( @& z) w4 m* u2 t3 ^/ U+ Q. ]; Z#define N 5/ u- ]( i; \# Y$ Q. o9 ?" u
    struct student
    " Z1 h$ U- M& E3 o  {char num[6];0 l& ]9 ^1 V( N3 d
       char name[8];  p9 w* i$ Z! B+ K
       int score[4];
    / M( C* ^3 I4 E! I7 N- M3 z   }stu[N];& R# _4 E% b! c. \" S# o
    main()' x+ i* T& E* j3 ?
    {4 `2 [$ q* d0 s1 c) o2 q
    input(stu);$ y. K: Q2 [5 A0 G, q, B  J. O
    print(stu);1 x, p8 G/ ^( j/ Y
    }
    9 X& e' a2 d7 I; Z# v0 Xinput(stu)
    * b0 }( `( j. E8 A8 astruct student stu[];
    8 I' m, j) O7 U& H: `{int i,j;
    4 R: B, d  I6 C+ p$ | for(i=0;i   {printf("number");
    % s* _8 [: c# i1 D    scanf("%s",stu[i].num);# V  E, X/ \. i0 x' O- F( m; J5 \
        printf("name");# ~3 j: d1 X8 W
        scanf("%s",stu[i].name);: Q! t# U6 Y3 K. P- e/ @
        for(j=0;j<3;j++)
    # Q6 @# r" s/ A) M* @# t+ x      {printf("\nscore\n");; v0 t! N/ _( r2 d; k6 A) Q
           scanf("%d",&stu[i].score[j]);2 i, `' W$ G; n
          }
    8 V) c! g0 X& F) R/ q. _# [    printf("\n");" P& H2 R' G. k/ q* n% K
        }
    : t) q& e" k. q) Z}
    ) S& ~! Z1 Q; I9 _5 Eprint(stu): v  Z5 v  d0 o3 ^: O$ u& i1 k' N
    struct student stu[];
    ; U  F4 m) i: N{int i,j;% e) W' _7 s: _
    printf("\nnumber   name  score1  score2  score3  \n");9 P" s  b5 y$ r% B9 M  W. ^
    for(i=0;i   {printf("%8s%10s",stu[i].num,stu[i].name);4 o# e' E1 |  w6 \0 Q8 F1 r6 g
        for(j=0;j<3;j++)" U" }. s- u& G2 Q+ q) m
          printf("%7d",stu[i].score[j]);, ]7 r" k1 `( t4 d$ q
        printf("\n");' M+ `* A' h7 F5 M* f
       }! Q: h% l0 u7 t8 O: h4 D0 a
    }9 G. M! x+ p+ i) b5 C
    11.5
    # [3 \6 o. ?' c- J3 q; w0 Lstruct student+ e' e9 Q& |" f- i, E
      {char num[6];( F0 p2 r* d) S
       char name[8];6 i+ q2 }7 ]7 W; T$ ~7 v  O
       int score[4];
    ' p3 X- q( M( R) L# L   float avr;- j7 I! u# X: i& H( `
       }stu[5];
    ; H) J* T9 B5 D# Rmain()
    ) w8 c) x, f5 r& _8 c* }! `{int i,j,max,maxi,sum;: ^3 B, n* S$ k% g0 D
    float average;; l* E( W6 q" N8 j! M
    for(i=0;i<5;i++); `3 [0 h2 H& h( h7 \& J' J
       {printf("number");" D: E. M+ T$ x3 A3 p
        scanf("%s",stu[i].num);: k4 q1 M# S3 {% ~8 r8 R1 n7 }
        printf("name");
    - E1 J2 i% P" y    scanf("%s",stu[i].name);& O' p8 C- h, M, J. S) ]8 F
        for(j=0;j<3;j++)! S& }. \( [3 f7 w: k. d
          {printf("\nscore\n");9 X+ Z$ ?; I8 Z% V0 n# G
           scanf("%d",&stu[i].score[j]);- e# j$ Q4 V# W9 u4 \1 v/ X# r
          }
    ( n# g. U1 \/ u) c% A5 Y/ j    }
    4 g9 M7 j4 Q" @7 ^ average=0;! Y/ ?0 F, r+ L, m  H
    max=0;
    3 o( }% f4 f0 E, J  X2 n maxi=0;
    $ B. m5 z. C! K7 Q& n for(i=0;i<5;i++)2 L- h5 e8 a! C) l" G, t% B. m# a
       {sum=0;% F* {, Q4 b$ m% N, A" x7 _2 k
        for(j=0;j<3;j++)+ G$ _; l; E7 o  {, u( {, D
          sum+=stu[i].score[j];
    7 _. R9 E4 u5 V# K, [: P    stu[i].avr=sum/3.0;
    ; V' E5 v5 m) S1 K! j1 P    average+=stu[i].avr;
    2 H, `( T' i; X    if(sum>max)+ q: O- k- |# C0 t
          {max=sum;
    ; V" n0 X- u. H& B! W% E       maxi=i;
    & k3 w2 l) p0 s% g/ f' h0 c      }
    ! q. `! l6 k: P# C$ B; C6 q    }
    ; Y( [  ~( l4 W average/=5;
    : L& a8 Q3 a" Q- D, f6 |& e printf("number   name  score1  score2  score3  average\n");  B! o+ Z: c' s, C
    for(i=0;i<5;i++)
    # W! d  A! S2 v2 g3 `   {printf("%8s%10s",stu[i].num,stu[i].name);
    " k1 E, O1 J5 j. z" W    for(j=0;j<3;j++)3 d; }; ]; x% n
          printf("%7d",stu[i].score[j]);
    / D) a. R# Q) r# N  ^    printf("%6.2f\n",stu[i].avr);
    3 e. p$ K) ?1 Q5 E6 L1 n3 t8 ]   }$ l9 w7 Q% j/ Z/ ?4 W
    printf("average=%5.2f\n",average);
    3 D% U3 b% i+ q8 V: c printf("The best student is %s,sum=%d\n",stu[maxi].name,max);
    * G4 l2 P+ K- g: g( U}
    * a6 c' m7 Z0 r2 c( X( I# D( O, o
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    17

    主题

    3

    听众

    450

    积分

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

    [LV.4]偶尔看看III

    网络挑战赛参赛者

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

    群组西南大学建模组

    群组数学建摸协会

    群组Matlab讨论组

    群组Coldplayers

    群组数学建模培训课堂1

    回复

    使用道具 举报

    linmatsas 实名认证       

    53

    主题

    13

    听众

    3592

    积分

    逍遥游

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

    [LV.5]常住居民I

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

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

    群组Matlab讨论组

    群组数学建模

    群组小草的客厅

    群组2012数学一考研交流

    群组C 语言讨论组

    回复

    使用道具 举报

    5

    主题

    5

    听众

    912

    积分

    升级  78%

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

    [LV.3]偶尔看看II

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

    群组江苏建模

    群组Coldplayers

    群组Matlab讨论组

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

    群组西南大学建模组

    回复

    使用道具 举报

    0

    主题

    3

    听众

    11

    积分

    升级  6.32%

    该用户从未签到

    回复

    使用道具 举报

    cmrs1986 实名认证       

    0

    主题

    3

    听众

    43

    积分

    升级  40%

    该用户从未签到

    回复

    使用道具 举报

    defy470        

    4

    主题

    5

    听众

    115

    积分

    升级  7.5%

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

    [LV.2]偶尔看看I

    自我介绍
    飞飞
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-7-21 00:07 , Processed in 1.069398 second(s), 86 queries .

    回顶部