设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 1677|回复: 4

C程序设计语言-练习3-2

[复制链接]

该用户从未签到

尚未签到

发表于 2010-7-23 19:47:03 | 显示全部楼层 |阅读模式

马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

您需要 登录 才可以下载或查看,没有账号?立即加入

×
本帖最后由 xaut3 于 2010-7-24 10:17 编辑 - A) N/ Z$ l' Q* N1 M
; x9 W+ t9 N5 M: r7 r3 U4 a
题目: 编写一个程序,以每行一个单词的形式打印其输入。
! M) ^- K% K1 S' r分析: 单词是一个不包含空格,制表符或换行符的字符序列。思路很简单,
" w2 R/ x; I$ x: N+ C2 T) w8 q! T  e1 \2 R
如果一个字符不是空白字符就打印出来,如果一个单词已到结尾就打印一个
3 I2 {& C+ ?* x换行符。可以这样判断一个单词是否到结尾:前一个字符是单词的组成部分,* L" j$ ~5 Q: H* ?
当前字符不是单词的组成部分。 : t( W# X- d& }0 I1 X
6 r1 W2 d6 J( T- @( b, @
1 #include <cstdio>
. U) ~" q! i' E" i1 B2 ~ 2
2 W, G# g  B9 f: u; z: m! Q 3
2 [0 W" p7 X4 [9 G2 ?using
, f) f# G: R1 k& J9 h6 E! ^namespace std;
$ `1 O$ `, Q. O- f4 X1 m
4 & H$ i2 I( b, J. z
5 3 g  T1 o. {0 W$ {& |
int main()( A# t7 ~& _, Y, [! R
6 {$ `: M) O( I7 h2 n0 }
7 % |+ U3 w* J7 v" ]- |* k
const
: d7 m1 x& y0 D) Z2 y  Y. tint OUT =
  _9 v6 a% l' ]; a( k+ [1; //字符不是单词的组成部分7 Y2 Q3 M+ n- [' c! q7 r! h$ J9 b
8 8 v9 b7 s% f: B# I+ c0 b* g

; u6 [& t: H# h  P" J% x! s. }3 vconst; p7 \5 ?6 n. h3 H( U
int  IN =
2 X+ P! G) `2 A1 L1 j! n0; //字符是单词的组成部分$ }/ l: I" r1 S6 v1 C
9
) j; L1 R) J& G/ l, K# n
8 m% o3 k# y; U; t5 M( B10
5 [6 S0 ^% w) zint pre = OUT, curr = OUT;7 }8 h. _- V" M4 W1 v
11 0 c! z; N. |4 z, r5 V) V
12 8 a0 ?7 L* R1 `6 E1 k: S0 O% x
int c;
9 b2 L9 j" H5 a& z3 E
13
2 T8 c1 V% a& Z" |, b9 Swhile( (c = getchar()) != EOF )
( z0 M8 o, S* M; `: [9 U9 L4 X4 M
14     {
5 U6 u' ~2 c2 p4 Q+ Y0 R3 Q
15 1 |  ]: Z3 }$ m% ~, V
if( c ==
% W+ f3 d. w5 d0 c'
; T% _/ D1 v$ M1 B# g'% K! X+ p% A* S  u+ n& ?0 Y" W5 H( e
|| c ==$ H4 {0 C" s0 @
'\n'
0 B0 |  i$ H+ ?. K4 w) ~|| c ==9 Y' w8 S0 n, k$ z9 O1 i3 _# J& \8 s
'\t' )0 ~$ E  i8 m' N( x2 S; K% Q
16         {
1 _' l+ ^* b' t' F8 ]% D
17             pre  = curr;
) B/ q5 _, J, L: g6 o; c- P: j
18             curr =  OUT;
9 }# D( V; u! Y( t! h6 @
19
: @* b+ v/ g0 ]//是否遇到单词结尾" K* o7 I/ `) `4 }
20
7 V# B9 V. y2 k& {: ~1 {# D- @- b) s- @& S9 V/ y: M( L
if( pre == IN && curr == OUT )! L' f8 ~8 F. p: v  P& ~
21             {7 Z2 l! @% [% E* g3 R' x
22                 printf("\n");3 Y+ Z( r6 H8 k0 D
23             }2 v5 b+ r: W' G1 t1 z0 j
24         }- z3 q2 e( Q  X/ }5 Q( s
25
- Z/ X$ |, v; ?* pelse
% J# e% Z2 n* O/ L9 A9 x- W26         {
$ M! T# E! a3 Z: V3 }, W
27             pre  = curr;  m& s; S. O/ r3 x, |
28             curr =   IN;
& e) T1 U: e# ^( ]: k
29             putchar(c);, L% I. ~# {% t0 E$ r9 j
30         }/ k! t1 n( R4 m2 z* s0 v9 n
31     }
: [* W9 v' p- N: k' w. _5 P
32 8 |, E* \& F8 j! [* ~8 K( W
return/ m" C7 m9 `2 R; H) p, x; p1 z0 A
0;
: c; q6 _3 O* N: `( {3 b8 l+ B9 U8 z
33 }# X) ?' ^/ Z5 C& ?
34
, j% @4 H- i" A% u$ K& J/ E4 m: u4 s# u' G: D& d- O

+ x1 I% e5 V! n3 _% c! E( R当然,这个程序可以使用C++的string。

评分

参与人数 1威望 +6 学分 +3 收起 理由
xaut3 + 6 + 3 不错

查看全部评分

"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    慵懒
    2016-4-21 12:07
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    累计签到:3 天
    连续签到:1 天
    发表于 2010-7-23 19:50:44 | 显示全部楼层
    不错的练习  还有 答案  呵呵  运行通过
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2010-7-23 22:16:04 | 显示全部楼层
    乱乱的,楼主应该编辑好了再发啊
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    擦汗
    2019-11-6 08:33
  • 签到天数: 32 天

    连续签到: 1 天

    [LV.5]常住居民I

    累计签到:32 天
    连续签到:1 天
    发表于 2010-7-23 22:53:04 | 显示全部楼层
    好有趣的發文~~哈哈
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2010-8-10 19:00:21 | 显示全部楼层
    谢谢!看看!!!
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

    小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

    GMT+8, 2026-8-14 23:55

    Powered by Discuz! X3.5 Licensed

    © 2001-2026 Discuz! Team.

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