- 在线时间
- 34 小时
- 最后登录
- 2016-4-3
- 注册时间
- 2011-8-10
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 623 点
- 威望
- 0 点
- 阅读权限
- 30
- 积分
- 246
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 115
- 主题
- 3
- 精华
- 0
- 分享
- 0
- 好友
- 11
升级   73% TA的每日心情 | 奋斗 2016-4-3 13:51 |
|---|
签到天数: 68 天 [LV.6]常住居民II
 群组: Matlab讨论组 |
#include <fstream>
, N1 U& b1 L4 T% w#include <iostream>
9 X$ n# S& L' ?9 g* l#include <cstdlib>
: ^- |( _1 i5 K6 t- ~using namespace std; H6 d1 _+ V- H" N4 \& b) O
void copy(ifstream& in_stream, ofstream& out_stream)$ F& b6 a) [* Z
{
& E4 c% S9 ?. i/ y! w
3 `4 V$ |, F/ X2 f0 M char symbol;2 l/ V; a3 ^( m+ C3 j: \/ s
int b,i;1 H" b4 i' ?* t% k) c8 p3 h
int n;
+ H, Y: Y3 H6 K6 O; j, { double s;6 g' z3 C- r, r8 k# q" O
// 外循环用于处理数据
; n* a4 g. e+ l) q2 [$ f do$ d7 p: _7 P$ i( \" M4 {+ H# M' z- A
{
# R: r1 b/ ?8 b' W& h( D6 F ( }4 m; t* A, q C& D4 ^% A" a' u
s=0;n=0;+ | j4 o u" v, V
in_stream.get(symbol);% o, j9 o: A T8 C+ r
// 此循环用于获得学生姓名0 n: @4 f; a$ H$ ~5 G
while (true)1 w v# E7 G6 P6 J
{ 0 C9 h7 K: m7 Y% Q
if(symbol >= '0' && symbol <= '9')
0 X$ R* g3 P4 e$ r2 t1 S2 @9 c' I' Z {
: k2 d4 y4 ~' h) d8 M7 R break;
. C4 `) Q5 T- Z. S+ z$ ?( Q* ?4 V* [3 | }! y; ^* _) p- p2 i6 }5 s7 V" t
out_stream.put(symbol);
2 l& ]2 x# Y7 U6 } in_stream.get(symbol);
$ Z6 H; p/ u, _1 d }
) S" I# t/ p5 R1 L3 @ in_stream.putback(symbol);
9 V, E# d( V- l. s
5 k" Y' ~. c4 b4 r1 x6 l5 ^ cout << "good.\n";0 o/ [4 Q: m# D1 X9 a4 C3 ~
// 此循环用于处理一行的十个成绩4 x9 Q$ ?0 o2 i$ q* Y [9 d! r
1 w- n% e, W+ W6 r$ [ while (true)
, S# s9 p6 w* m/ O0 a& ` {
3 u6 t, W" J9 ^3 ^9 ~9 x in_stream >> b;
+ I& V. W" m" P; L" A s=s+b;
( L* v4 E/ O" \: p n++;( H/ P- S+ i* X- f) ~' c; y
out_stream << b << ' ';3 K* i, ^& m$ v9 u$ Y5 {, I
in_stream.get(symbol);
2 k6 w0 F; k3 l0 @, }- n- ^ if(symbol=='\n') //如果遇到换行就跳出循环
4 r- J& y, P% r5 r: |: s3 e* _5 w break; ; t% F9 [/ v, E5 z2 H$ @5 \
# U7 l. g- S: @$ t+ U }+ `- H1 ~' [2 r
cout << "very good.\n";" R: O0 y' U' L, J) q$ a9 ~$ B2 q
s = s / n;
8 M6 k% c' Y# k! f9 \% L t: P out_stream << s<<endl;4 i4 F0 Y+ D, x
}while(!in_stream.eof());; ~. ~' t& d) \- o2 A% S$ P
}
' h0 h8 ?$ D% p$ oint main()
. \$ f# K8 K1 |{
2 F( A, S f* a4 I6 w; c% G7 l- `+ [/ a. g
ifstream in;- B3 l* d: p4 K
ofstream out;1 y5 v, [: ] `" @
in.open("d:\\data2.txt");% t7 I8 @ Q6 j) p# x+ i
# [4 Y; i! o' b5 g; S8 l, Y% m if (in.fail())
6 a6 d' |6 o t: d3 P( S {
% B- @- q5 O, j/ D& l: w) W cout << "Input file opening failed";
4 `* c) H w; O exit(1);
7 n$ v) u$ W: W }. i ]% [) x) y( Q- @
+ Q$ y4 C5 O- q/ x8 j# n4 ]
out.open("d:\\data3.txt");; b9 W" B- g% A2 p
if (out.fail())9 V2 l! j8 D% t8 ?: m) V- c
{4 A" A9 t2 I) N& y1 k5 X: r
cout << "Output file opening failed";+ W6 [/ D, z+ c0 T0 G: q+ e* [
exit(1);
. Y( m3 }% R7 M& n }5 s: Z) [' y& c$ T: O1 V. Z
cout << "ok.\n";: r" d! G/ v( h5 M9 j; _
0 b1 u" x6 {- s6 n+ L0 y' s6 U( q9 V$ V+ K! a; l! ^
copy(in, out);$ Y" |2 `' c0 S3 y
in.close();
$ l- j+ n7 u+ q! p out.close();0 P# g" t, h& {! H" C0 f5 C _
' z9 ^3 ?( {* `) T( L
return 0;) z; C* ~3 z4 h/ v# P
} |
zan
|