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

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

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

[复制链接]

该用户从未签到

尚未签到

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

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

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

×
本帖最后由 xaut3 于 2010-7-24 10:17 编辑 - g. A( ^( z( S& G1 ^9 l
- Q/ k0 l( w+ }7 X/ m
题目: 编写一个程序,以每行一个单词的形式打印其输入。# a. ?9 H: ^% I  i% d
分析: 单词是一个不包含空格,制表符或换行符的字符序列。思路很简单,( o9 l6 P) Z8 m6 `
  P. U9 X; E% U1 m/ l
如果一个字符不是空白字符就打印出来,如果一个单词已到结尾就打印一个5 |: [6 N' W' u( W0 |# F
换行符。可以这样判断一个单词是否到结尾:前一个字符是单词的组成部分,, p% L- w, P% N$ E9 V5 i4 S
当前字符不是单词的组成部分。 ! T9 m0 s( D3 E# v0 H1 P

% r1 e/ `0 b8 ~ 1 #include <cstdio>: \3 L& D1 s( J" M( Q
2 ' L7 @5 S0 G) v8 w5 o$ ^
3
9 [$ C/ X, w# e  U4 [using9 b# H4 e  d' a8 o6 n8 D
namespace std;9 d$ T+ V4 M; m  f: X0 t( Z5 A5 M# j
4 8 K% W' _" P( F5 I
5 * g$ \% N" ^. K/ u% b
int main()
  D% P0 I( R: _$ S
6 {
4 Z( j6 A- P+ g6 d: r1 \
7   Z2 y& e$ V$ r) L' j8 v
const
4 V1 P5 \3 y  Q: L8 dint OUT =
5 B+ N# u$ f  I( d. a1; //字符不是单词的组成部分- i+ ?. V/ c! h& T
8 * y) S" h# S. H0 B4 H) T
. m$ C7 ^/ c3 j  ~1 f/ q9 `4 N6 z
const
& ]: Z" A# |* [4 Oint  IN =
0 C- [7 R7 S; b  |6 x: Z: J' l$ K0; //字符是单词的组成部分& ]4 e- ~6 u3 M+ b( O
9 ) {% w" |: T: V
5 H' h1 b' J9 R) h' }: f+ v
10
6 d+ S8 c# K( Tint pre = OUT, curr = OUT;8 M8 s/ s/ O/ C0 ?2 [7 G2 a7 ^
11
' `2 R+ P  S3 j+ K. m4 s12
) u$ `4 [( B- n( Z- T6 \int c;
! ?0 [/ `% x# {4 J- @, d3 g5 S
13
+ x" f' `4 Y/ L. T5 nwhile( (c = getchar()) != EOF )0 n$ o) L3 |+ W- Q6 h. S% G0 K: E, Q7 [
14     {
$ W4 b1 k6 S9 T3 p. Q+ i1 ^
15
1 ]% c# M; N6 s3 ]- ^3 Bif( c ==
+ n, Q5 V! ^' f# c9 d$ h& g'  K% o7 O% j3 l. Y
'
. q: P4 l, e- W4 }5 e|| c ==" R! ^9 e0 R, G3 @& v
'\n'
# }4 k& }8 N7 \2 p% |. e8 Y|| c ==
$ P# c! @/ w# ~+ S* [* c* ]'\t' )$ T) u7 X! C2 V/ S! U' ^
16         {" I/ A# A' u+ i
17             pre  = curr;  _: u5 M' H( t! M, `, T( l! N
18             curr =  OUT;
7 q2 u3 X# {+ Q; l3 a
19
4 A9 p' a% e5 h  V/ T! }, u. |) n//是否遇到单词结尾: V0 @# e  d+ ^
20
- ?  X) t$ I5 g8 z# Z
( C/ f7 s5 s4 f# I) S4 Y( fif( pre == IN && curr == OUT )6 H6 a* s7 E9 d- R9 a
21             {
+ P' u" ]& ]+ Q4 ^( x: |& T
22                 printf("\n");3 r2 J% `, y8 l3 s' a  K" t" H* e9 Q
23             }7 x& T+ Z4 K$ H6 ~4 w
24         }0 |# z9 g2 d' \/ j9 ~+ z
25
! A) W4 }3 i& Relse
1 W/ Y' J/ b  t+ ~6 M26         {
7 i; |0 ^. x! i5 A! }$ @: R9 F  k
27             pre  = curr;
7 c6 Y. c7 @3 [4 R5 n0 }
28             curr =   IN;
# D: X6 Q! a( t3 d" m  F
29             putchar(c);
( D9 T% A) Z$ _  h& E7 Q
30         }
/ ?% _" i4 D& ?5 g$ L" q. `
31     }6 W* b1 L: ~- N4 }: }
32 ; o+ e4 P$ G9 J: T3 C+ Q% r! H$ j, H
return
/ D, E3 s3 B) U9 G* j0;9 y1 |9 f! t* S8 c3 c; `0 g
33 }
3 Z/ V' l% h2 I  S+ ~. d. x! K4 b- T
34 % Y; {$ z: V9 q% B4 k

4 d$ O4 W0 T" J+ e: A8 D
0 T/ n  g7 G+ j9 k当然,这个程序可以使用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, 2025-6-13 17:31

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

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