SCMLife.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3316|回复: 0

[原创] 测试联系题(一)c代码单元测试

[复制链接]
发表于 2012-7-5 13:39:45 | 显示全部楼层 |阅读模式
  1. #include <stdio.h>
    , f! T1 B; S5 E' J8 f) U
  2. #include <stdlib.h>
    4 s9 M. n1 g3 u) g
  3. #include <errno.h>
    $ L" V' s+ a! E* n1 N
  4. #include <string.h>6 S6 P9 D# G# g2 h
  5. 7 h# i7 p5 {( l$ X9 j: p
  6. typedef struct _GOOD_ST_
    . A' R4 q6 _6 _
  7. {) g' W+ F9 r. H
  8.         //饮料结构体- P) N: U. B8 |; F
  9.         char numNo;         //货号9 V2 c2 x) ~8 ~5 Q% ~2 j
  10.         char name[16];        //名称  V; D% b" y! R% D) ]
  11.         char sumKept;        //余量
    3 {+ A* G, m3 p4 X
  12.         char sumSold;        //销量
    " h6 p; u# Q. u3 [. `- l+ b; |/ v
  13. }Good_st;, T. I5 g' c4 u

  14. , S4 p$ e: @1 l! L8 f# _% f
  15. typedef struct _VENDOR_ST_
    0 \& o0 Q& V' y- ]0 U/ M- g
  16. {( E- o7 z0 M/ i: O- {: T/ X
  17.         //售货机结构体
    2 Q, ^- T( F  z; M+ L( k6 M1 I
  18.         char coin5j;                //5角硬币  I9 F7 A3 s" h% ^  s
  19.         char coin1y;                //1元硬币6 A% H% A! y; s+ E# c5 Y2 x/ ?
  20.         Good_st goods[8];        //饮料% F7 o* s3 A3 s' e& k# P
  21. }Verndor_st;7 _" n( M1 ~. `2 B+ a9 S6 c6 h7 I

  22. ; n' \$ e0 B+ e) _: G7 p( g
  23. ' C+ n! {, S& n1 K0 R
  24. - n4 Z- T( s7 K: Z$ o# Q1 ^
  25. //定义一个全局变了 售货机
    ; Q* S4 }5 n# _$ l
  26. Verndor_st vendor;
    5 K- d9 D& D6 Y) L( a
  27. : Y& q8 x) U0 W; U/ K! m- a) l
  28. //读取售货机的初始配置,返回0表示初始化成功,否不成功
    # @. Y. H3 ^! H9 `8 m4 ^- I2 B! P
  29. int readConfig();0 l$ U) G+ C/ p
  30. //显示欢迎信息: x& Q6 d& f2 Y% J/ i; `1 `
  31. void pWellom();
    0 e# J* U8 S3 \! ^
  32. //显示货物清单
    % p2 d. c* j* I' X1 J6 r! D
  33. void pGoods();
    . `; N! w/ o& J
  34. //显示投币信息
    9 z9 O7 |+ u4 L" R$ I( @
  35. void pCoin();' u1 U4 U, @8 D% C8 n
  36. //统计售货机中的货物数量,返回统计饮料输了
    1 d) f$ n: V6 K8 ^' O+ R
  37. int countGoods();8 z0 ^2 r0 c) X. {- p. S
  38. //显示取零钱/ ?/ m( {. x8 Y" l5 @5 _# {! P
  39. void pGetChanges(int change);
    / f4 y5 a$ g8 x% ]2 Q
  40. //显示取零钱
    . W  M" C; u7 c/ l4 B8 K
  41. void pGetGood(int good);  h5 s: s7 ]" U, V5 t" R- A
  42. //结算,输出找零# D' O; j9 b% V* t3 [; v
  43. int checkout(int coin, int good);& x5 s4 x; X: D$ t( I& {8 U' w
  44. //保存售货机配置
    ' B7 t3 d7 A' I; f$ q) d  C
  45. int saveConfig();
    0 p1 P( r' T' V
  46. " V1 I& K5 C! Z. n6 F. W
  47. 0 z+ C8 N% x$ k
  48. - r: q3 V& q2 J  K
  49. int readConfig(): F6 W' d) a2 Z% }) D) O/ r% I, e
  50. {/ h- m1 {0 c# E$ }
  51.         //读取售货机的初始配置2 Z. M& U- t2 G" o( L
  52.         FILE *stream=NULL;3 X. ]4 K5 U% q% Y* o; e
  53.         size_t num;; X$ y  e# o: i% Y$ h2 j  q9 \
  54.         int result=-1;
    2 J( M' A2 A- g3 l# \. \
  55.         stream=fopen("vendor.cfg","rb");
    $ e* I; Q. w, R6 `
  56.         if(NULL!=stream)5 w( G! S9 O- y; F# H) }  ]+ r
  57.         {( T) f3 M, Z- o5 F; p9 }
  58.                 num=fread((char*) &vendor, sizeof(char), sizeof(Verndor_st), stream);6 L+ s1 ^! O7 R  X" I
  59.                 if(num==sizeof(Verndor_st))( s. m0 ~" Y8 W3 k
  60.                 {
    6 M- ~" E& x4 v
  61.                         fclose(stream);' w7 F# s' w& C/ e% A2 O2 S# A
  62.                         result=0;0 b! V9 |- ^% B3 V3 z/ k* l4 Q
  63.                 }. p& M0 z  ]4 ]- H7 O9 b( x8 W0 ?! c
  64.                 else% k& n, J7 K4 }; t* A6 k2 E  @/ E
  65.                 {, E# ]0 K/ A$ g
  66.                         printf("Error read the file vendor.cfg.%s\n", strerror(errno));
    & l. d8 O+ k9 p/ h2 _/ M+ Z
  67.                         fclose(stream);8 W+ \0 M5 Q0 ^9 n; ]" A
  68.                         result = -1;9 f( L# |& B% F
  69.                 }( e- P7 C2 Z1 v7 x
  70.         }' f% D! n. X5 F- I, ^# U4 F" u3 J
  71.         else
    3 W1 ~, e! {5 J
  72.         {# }& n& ?1 n5 c4 z
  73.                 printf("Open Config file vendor.cfg Error! %d-%s\n", errno, strerror(errno));# b5 L' S/ l% i4 l- Y) q+ M
  74.                 result = -1;
    8 b% c; b& \6 y$ H
  75.         }
    9 z4 ~9 k' O3 L5 e0 D3 \* U
  76.         return result;  P: \" R2 B/ N2 Q& z7 U6 e
  77. }/ v5 D9 [; \; p

  78. 1 l+ |3 m) l3 ?% F1 @' R6 k
  79. 1 P; F  g4 p8 f+ {" ?: O) r" K9 Y6 A
  80. void pWellom()9 }" u( q* z+ L
  81. {
    $ C3 D7 n+ v2 a) E" v/ C8 \
  82.         //显示欢迎信息, |" V4 `& J# ?) `2 R, p4 H) B
  83.         system("cls");! w/ d( F4 y& s% A# S
  84.         printf("\n=================欢迎使用自动售货机=================\n");
    " x: Q9 P7 @' Y% ^' b* W
  85.         printf("=================本机所有的货物都是5角\n");" {. {2 g5 F. I5 {8 {+ U$ l
  86. }
    $ l% k! A' `9 L" p* _( i
  87. ( ~% Z* q+ e0 Z
  88. % N% F% i) `; a8 v# N5 g
  89. void pGoods()
    ' K9 k5 L  D( t! a7 s2 c2 ~" K
  90. {
    $ r+ T# L- U2 t9 n. p2 D9 b
  91.         //显示货物清单3 p& l" ^( O$ E
  92.         int i;2 w1 @% H/ ]* {$ L
  93.         system("cls");
    7 h# @. j' S5 T3 e: E4 `
  94.         printf("\n====饮料清单=======================\n");- o+ W  R/ k4 d) ~: m
  95.         for(i=0;i<8;i++)0 n2 A. l% O7 u
  96.         {0 r+ g( o7 M9 x, ?3 @
  97.                 if(vendor.goods.numNo!=0 && vendor.goods.sumKept>0)! X6 K% {3 x/ q. o
  98.                         printf("%d: %s  %d\n",vendor.goods.numNo,vendor.goods.name,vendor.goods.sumKept);
    # b0 ~$ @& Z7 u
  99.         }- o9 G- ]" a6 s, l7 A8 H# C) e
  100.         printf("\n====请选择饮料=======================\n");: ~. I# U; C4 p+ o
  101. }
    9 [; e% C% Z  Q, R
  102. ; ]4 O$ `. `; q) e$ |: f
  103. void pCoin()
    , W8 I1 e; e- [% c1 q
  104. {
    8 T8 k6 A! x5 d1 c8 A
  105.         //显示投币信息+ h( t' R! ]: ]* `5 \: W
  106.         system("cls");- @1 V; U" G$ [9 p% B" x
  107.         printf("\n====本机器只接收5角和1元的硬币=======================\n");% x6 c* G/ R; \* n  f
  108.         printf("1: 5角\n");
    2 v/ c: y+ q! Q( `& F: `( X0 V
  109.         printf("2: 1元\n");' l& |& o# o6 V8 G& }- t
  110.         printf("\n====请投币=======================\n");0 k; y' [) t, y0 N! e) m5 k5 T( }' ~
  111. }
    ( L0 X* H7 A4 `7 ?& r+ z

  112. * B3 @4 m' }' M. l' `
  113. int countGoods()3 y' m2 p# }2 _4 A- a1 Y5 T
  114. {& l8 M$ f2 p0 x# V
  115.         //统计售货机中的货物数量
    , G" ]2 |4 F) e. Y/ g8 \2 J7 B' ]; c
  116.         int j;2 h: V* m) ?% W6 i1 f0 T5 R6 ~+ N& N
  117.         int result=0;0 u: N$ L! d+ h
  118.         for(j=0;j<8;j++)
    " d( C! b9 a. X1 R1 j: D
  119.         {
    ; P) L  k% e/ t4 K/ L
  120.                 result+=vendor.goods[j].sumKept;8 \: S$ C5 A' T8 j4 x5 H/ J3 V4 c, ]
  121.         }
    4 N' Q; O9 y, W" A; L
  122.         return result;0 h/ f8 S9 \0 _  s+ i+ c# S
  123. }
    ; T* \- J- Y" `8 H6 \% R1 I( y' N

  124. 7 X, ?' z5 L% k2 e
  125. void pGetChanges(int change): Y- C: D. g& i3 H$ }* K
  126. {
    + L) Z7 s, v( s7 A- r8 p4 [$ X4 i# X
  127.         //显示取零钱, {/ y2 z1 P1 ]- V7 ?. m1 H
  128.         system("cls");0 g/ l/ T1 E6 q0 F! }8 Q  e
  129.         if(change==2)" f% D4 h: x9 }( e; {* u
  130.                 printf("\n====请取退款: 1元 ===============1========\n");. f& |+ a2 A2 f; V4 V, y
  131.         else& Q1 u% e% r& J+ L
  132.                 printf("\n====请取零钱: 5角 ===============1========\n");
    / _0 g$ ^8 g  \$ ^" E) K! P
  133. }6 d' ^: M: d+ E" D$ l; w' G; C
  134.   y  R5 _8 v! W# Q5 U. j$ P. T9 `
  135. void pGetGood(int good)
      p3 |5 D1 e# c. ]# O
  136. {
    - U4 W& |$ M0 [7 B# {
  137.         //显示取零钱
    . f1 Q' F* f* Q, D& k5 N% M8 z
  138.         system("cls");) ]: {% c' P7 u% W
  139.         printf("\n====请取饮料: %s =============1==========\n",vendor.goods[good-1].name);
    5 {6 o4 Y5 O6 `* X$ l6 c$ D$ E
  140.         0 p8 T( I' D3 z
  141. }1 h% j& T9 @, t% ?4 |# v+ I3 ?

  142. $ O* @0 l$ k: i
  143. int checkout(int coin, int good)3 j; C7 q+ u* t
  144. {; D& A9 S, [  _
  145.         //结算& g( p5 M) h2 K, E$ ~& _' W
  146.         //输出找零" {7 @% u) o, G9 K( g$ |1 o
  147.         int change=0;
    2 K6 D7 K6 o3 W" ~4 W+ G& `: T
  148.         if(coin==1)
    - f- ?( u) P& m8 ]- N' o
  149.         {  q' e( `! o! W5 Y
  150.                 //5角5 o5 T3 D& [  U& h. k3 f: k3 m
  151.                 vendor.coin5j+=1;
    . j3 Y7 L; r8 r5 V: P1 s8 I
  152.         }% o" c" |, I. L2 D8 o5 J) p( \
  153.         if(coin==2)
    0 A# h; k" }! [' `' f! o& M, _/ ]
  154.         {
    % p! D. B3 Q1 L1 |: V& p
  155.                 //1元
    0 ^' {" t0 Q! Y1 y3 ?& H
  156.                 vendor.coin1y+=1;. ?' T/ W& ]. X0 w8 i' S
  157.                 vendor.coin5j-=1;$ ?' [+ f3 f$ u( l' z5 y
  158.                 change=1;        //5角零钱4 e$ b# x# ?# ~% z( `1 s, a
  159.         }
    - w4 g" @6 ?7 ?" A  V5 Z* Z1 Z. g+ y
  160. 8 |$ G( c' ]! f# Z
  161.         //出货
    0 R% k5 L& \+ g0 D: [9 ~+ V  d
  162.         vendor.goods[good-1].sumKept-=1;
    , X% X5 Q" h9 G# a
  163.         vendor.goods[good-1].sumSold+=1;        8 l; ~  j* L1 A1 `" _
  164. " u! X. l6 G6 C1 Q! O

  165. 5 b0 e5 `4 Y  p
  166.         return change;
    . l0 Z/ g$ Y' @* ^' |# Z7 [
  167. }" L" h$ o1 ?5 [  b6 e
  168. 1 _9 K$ {) [6 b0 X8 R! b+ C

  169. ) a" @+ h7 [, g- K" l( d1 w
  170. int saveConfig()/ M8 [# i) j& c6 v
  171. {: R6 H0 Q  q: x& J$ N$ \2 N
  172.         //保存售货机配置9 w8 c. q3 `$ N7 V' c: N
  173.         int result;' I/ G: ^* C. P* Q0 ^: \
  174.         FILE *stream;
    2 R5 {0 l. r8 k, S
  175.         size_t num;- R/ F; F( J& K  G7 o5 ^' Z8 I, K9 {1 ]
  176.         stream=fopen("vendor.cfg","wb");' ~: |4 Y' ?3 M/ |: ~% }
  177.         if(NULL!=stream)3 `6 Z$ B4 Y, ], V+ d
  178.         {% Y, M# a! q' y
  179.                 num=fwrite((char*) &vendor, sizeof(char), sizeof(Verndor_st), stream);
    , v/ \: p& Z+ t9 H
  180.                 if(num==sizeof(Verndor_st))2 J0 _, G# ]* V% Y. B  D/ A
  181.                 {6 }( _; m& j" t/ ?
  182.                         printf("\nwrite %d bytes to the file vendor.cfg ok!\n", num);7 r( B' U. M! k& C
  183.                         fclose(stream);3 m' U4 S! o" f: P6 L8 m) ^$ U
  184.                         result=0;3 d- s. e6 g6 k, }: r3 z
  185.                 }$ L: m% a5 N! j5 R
  186.                 else! j. @6 Q1 ]/ m8 e
  187.                 {' j3 Z$ D% {1 g+ R" a& ^2 z
  188.                         printf("Error writing to the file vendor.cfg.\n");0 }; V# a7 t5 K8 K0 L
  189.                         printf("\nWrite %d bytes to the file vendor.cfg ......\n", num);5 x  b- B, U1 z4 K
  190.                         fclose(stream);' g2 z# h2 h) ?/ x# Z; l/ W
  191.                         result = -1;  v# G. G5 l4 Y- p3 ?. z1 o
  192.                 }
    . B3 M5 |9 p1 P: h) F
  193.         }
    ) ~2 F0 ^5 O3 ?* p
  194.         else& L: h0 J: e4 P$ Y
  195.         {, w) [) p* n( d) K/ J8 `* {2 \' ?
  196.                 printf("Open Config file vendor.cfg Error! \n");
    ( L4 q) C& i! c( z- B7 k/ v
  197.                 result = -1;
    1 ?- X2 u  z( C" K
  198.         }/ y" F. `+ K; @# W+ r. W: A
  199.         return result;; ?( @. F3 Y$ U% I( x
  200. }
    " k; ^+ f% T5 u' F! [: ~
  201. + x: v. t# k6 ^

  202. ; ]! M: R$ s- [8 F5 y' w! D8 I/ v- ~
  203. int main()
    ( I5 U# @1 B6 n
  204. {
    % B/ a* z1 G+ ?1 O9 y6 L9 g! R
  205.         int change=0;        //找零0:不找;1:5角;2:1元2 C" z8 o( N0 K" P; _
  206.         int coin=0;                //投币选择0:没有投;1:5角,2:1元& m2 S1 d: z, F
  207.         int good=0;                //饮料选择0:没有选择;1:啤酒,2:橙汁: h/ t; X: R3 @  k
  208.         int sumGood=0;        //货物剩余量4 L6 S9 b8 f3 D! x- @
  209.         int getcoin=0;        //取零钱,1:取了) k2 I3 P8 ?' e1 N
  210.         int getgood=0;        //去饮料,1:取了
    8 L. w1 M; M+ |( G) p: V5 y
  211. 2 W3 O5 L) ?/ K) Y2 V

  212. 4 }1 L# m/ k6 O! w1 N5 J
  213.         if(readConfig()==0)
    , ^; e. u- v/ ^7 i
  214.         {9 j- g: ^% \* u5 Q8 j
  215.                 //欢迎$ T0 z; P% i, N- R7 `, r
  216.                 pWellom();3 }" |9 o: i# w% a% x! n+ |0 x0 R' [
  217.                 sumGood=countGoods();
    $ `% b1 I4 h& h4 I. D9 u8 T
  218.                 if(sumGood<=0)
    8 z, d2 J* w0 y. ^2 ~  \
  219.                 {        //判断饮料是否卖完了
    # x/ g% N' e" r
  220.                         printf("\n饮料已经售完,本机暂停服务!!\n");
    ( n8 ?, `& A* C5 K
  221.                         //break;* D+ S! V: P, t$ L5 G& x
  222.                 }1 o" G6 t6 U5 S5 ^& c4 ]" _9 D
  223.                 else
    & f3 L2 ^& C0 ?% {% T, m
  224.                 {
    " C* n6 ~- i7 h, d/ k
  225.                         while(sumGood>0)* z7 Y- h7 i1 M/ k" N- p7 k( m
  226.                         {" D7 S% K) @, F3 f* l7 m
  227.                                 if(vendor.coin5j==0)
    ) O2 ^" R1 `7 ]
  228.                                 {//判断是否有零钱, Y' F7 F. T: h5 q. v7 h! i4 o) y
  229.                                         printf("\n本机没有零钱,请不要投大额硬币\n");
    + N: Q3 M) ]% b/ y! S& L$ \/ W  U0 {
  230.                                 }3 Q7 l7 p/ ]0 p/ v2 [' O& a9 m# p
  231.                                 + Y4 N, h: {+ V% F
  232.                                 //投币7 `6 o  q6 n: ^$ s
  233.                                 while(coin!=49 && coin!=50)* `7 u3 ~6 O' j# {* U! i
  234.                                 {
    ! h+ x% P) I# u$ i2 k$ S& V2 K  ~
  235.                                         //提示投币
    . R' b' u! l& C) \
  236.                                         pCoin();
    7 d& O7 z3 u: b0 W) \
  237.                                         coin=getch();
    ; }+ F2 G, ]- T8 B5 e4 w
  238.                                         //printf("coin=%d\n",coin);
    9 M3 M. p% ~) X( A1 \/ X4 n
  239.                                 }
    : f* F. Y1 C- r. V4 H+ e: N4 s* T3 o
  240.                                 ) B- o# y9 a, `1 @! @; j4 [/ K
  241.                                 //如果没有零钱,且投入的是1元,则直接退钱5 {0 x& R  g5 \9 B6 I9 g0 F3 W
  242.                                 if(coin==50 && vendor.coin5j==0)
      p4 F. X5 s9 i1 e- Q) V
  243.                                 {
    $ o4 W- T5 A# g2 U8 t  S8 ?
  244.                                         change=2;5 B) |7 R4 A, K- S2 j  m3 g
  245.                                         //退钱
    , C; h- ~$ d0 [3 N
  246.                                         while(getcoin!=49)
    + [$ a' c: Z0 x4 _% h8 n
  247.                                         {
    9 s2 Q- H- Y& k: r5 R# A
  248.                                                 pGetChanges(change);# o' _8 s! s9 I& X' S3 n
  249.                                                 getcoin=getch();, d9 I' G! ]4 H- W0 n( p
  250.                                         }8 ^3 ?$ |: ]  c3 ]9 c
  251.                                 }7 k7 U2 y3 E/ I+ G1 C
  252.                                 else9 f. L' J  F  f0 E* F% l
  253.                                 {
    ( I  y; j$ s+ N" l  T
  254.                                         //选饮料: U! b  |8 T9 B' g2 E. P9 _
  255.                                         while(good!=49 && good!=50)
    ) r1 m7 Z; H7 _" V! t+ V. k
  256.                                         {- |7 U  @$ }- c6 C5 n  ?
  257.                                                 //提示选择饮料
    9 @- O6 c5 T3 m+ N  z
  258.                                                 pGoods();                                                
    + ^& f" Y4 P; p: f2 T0 |4 \
  259.                                                 good=getch();& W) f( R4 [/ n# L& u
  260.                                                 //printf("good=%d\n",good);
      f: k) A' \: E8 M
  261.                                                 //printf("coin=%d\n",coin);
    : l8 x$ k% J" O% V
  262.                                                 if(good==49 || good==50)
    . n0 L4 x; x, j5 U( _6 b" t
  263.                                                 {
    + Q( e- _3 r  V* S
  264.                                                         if(vendor.goods[good-49].sumKept<=0)$ c4 v4 n1 G  z% t+ _9 w
  265.                                                         {
    7 j* }' A3 c9 l! W) w' t) |, U* U
  266.                                                                 good=0;2 ^7 F: V( [+ m9 N# f  h
  267.                                                         }+ x# q, B8 L3 t+ T
  268.                                                 }
    - f% g8 k( ~! M$ b- z9 V+ V" k
  269.                                        
    0 G$ T/ S: @+ y0 `
  270.                                         }
    ) D1 U: P. |) h* F# @

  271. $ ~( n  o8 f( A
  272.                                         //结算
    ' p; F9 J* ]; Z: g0 t6 W
  273.                                         change=checkout(coin-48,good-48);
    % L8 G3 t  x5 Q7 J- K0 N$ F9 D; J
  274.                                         if(change>0)# X, M% L9 ~( P' l- b) j
  275.                                         {//找零& C. ~0 l$ v/ P/ e* Y
  276.                                                 while(getcoin!=49)4 K6 ^4 Y& `' u2 S& [
  277.                                                 {% T6 i/ k) [; e2 R0 D' y' b9 J
  278.                                                         pGetChanges(change);0 o$ D' }. q  G9 V; N5 ]
  279.                                                         getcoin=getch();6 ]) j. C5 D3 [' X6 b! n
  280.                                                 }
    ) y4 h; ~' p* q0 Z% C
  281.                                         }  z2 c# C: Z. x& S( f. a, S  d) A
  282.                                         while(getgood!=49)9 @! C, `2 ]5 p* l4 o, G
  283.                                         {1 J3 c- c* N+ y
  284.                                                 //出饮料
    . A3 ~% y3 T1 o8 [. `
  285.                                                 pGetGood(good-48);
    2 |# Z4 v1 B7 x4 E$ |% ]" a
  286.                                                 getgood=getch();
    4 h; }5 d$ z+ w5 @7 V1 f: h
  287.                                         }
    $ a, [# a( h1 _, g
  288.                                 }% U1 H* U9 @) y1 |
  289.                                 //重新开始
    2 t* I' b4 I# R
  290.                                 change=0;: S+ K( q( e2 X. z
  291.                                 coin=0;        1 [- S1 H5 Y9 P- Q1 R! t
  292.                                 good=0;        ' J; ^, F, `3 g2 ~4 E
  293.                                 getcoin=0;
    8 e- h4 V+ O& I' u' C
  294.                                 getgood=0;
    : F& w+ i) \' r$ h3 W
  295.                                 sumGood=countGoods();
    5 I9 F; c! M) B# L& q5 t# V/ j
  296.                         }
    $ S5 ], `' l0 }$ k7 b! p: D% _
  297.                 }% i9 m/ [" Z* d% b' }
  298.         }4 F* k5 d4 s- t/ `; C3 B
  299.         else) ], F* g* b8 U) U
  300.         {6 J# z$ d5 v1 I% \& {) k
  301.                 printf("售货机系统退出了");- M9 w4 n+ [/ a; o1 [" b4 O
  302.                 printf("。。。。3秒后退出。。。。");
    8 d( Q, W! P3 d* I' ^  y1 Y8 U
  303.         //        sleep(3);
    # r% j7 F4 o/ Q, C5 N5 a1 E" V
  304.                 system("cls");/ k- {  M! @, l  B  k" E
  305.         }
    $ H3 l- E% E( G

  306. 0 e+ q2 e+ b8 l# _% u
  307.         return 0;' e& v' Y! |$ n

  308. . c; Y# P2 [6 g0 l& l! Y
复制代码
这是我写的一个模拟自动售货机的c代码。有兴趣的同学可以用来练习测试。如:使用RTRT来做单元测试,逻辑覆盖,代码走读等。' i; g+ F6 N8 r9 z
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

SCMLife推荐上一条 /4 下一条

QQ|小黑屋|手机版|无图版|SCMLife.com ( 京ICP备06056490号-1 )

GMT+8, 2019-11-20 15:03 , Processed in 0.085141 second(s), 11 queries , Gzip On, MemCache On.

Powered by SCMLife X3.4 Licensed

© 2001-2017 JoyShare.

快速回复 返回顶部 返回列表