|
《C++语言程序设计》期末考试答题纸' a3 {/ L$ v5 r% C( u
z+ z s5 n' W4 q8 O" T E$ Q+ O
姓名: 专业:" F/ c; R2 v% _
学号: 学习中心:4 O! N9 y; C- ]/ d6 Z7 ?0 A
成绩:
/ G4 }) z( h1 e, G" C! n. ?
2 s. J+ \2 V# v9 n; f4 ?5 c; r注意:请在答题纸上作答,否则不得分!4 l* @) J3 }; x
一、更多资料下载:谋学网(www.mouxue.com)(更多资料下载:谋学网(www.mouxue.com)2分,共20分)( A! A) O2 A" N/ m) X' }0 }) q
1 2 3 4 5 6 7 8 9 10
) e m0 u$ F# |1 w7 A2 O( g
( q. b4 X. W+ ~
* o. s" R* e$ F4 P) h5 ]$ g二、填空题(每空2分,共20分)
! u5 L2 D7 \- I1、① : A9 U8 U7 O @3 a/ y( c
2、② 4 m; i2 Y1 |" _( l
3、③ 2 x! L6 L$ S2 K X
4、④
$ ~) G/ G6 A/ I; P. ^5、⑤ / g( w7 M' h* k f% d
6、⑥ 8 j( j' I- E; }$ T2 W3 O' S) g+ h
7、⑦ O( L8 ~ o- r! | u
8、⑧ 0 W j# u+ A, g6 ^1 D6 D. X
9、⑨
- ?: `, q V S! y4 @4 O10、⑩ 2 m5 m/ |4 m5 J% f: l7 l! a; P6 H% b
三、程序填空题(每空3分,共18分)& t7 M( m/ |( u: \$ b4 }
1、① 、②
+ W+ p5 F$ i6 E6 M' s7 b2、③ 、④
" `" y+ M+ E5 E: D2 {& @, _6 R4 e' z( V3、⑤ 、⑥ - b8 w( \4 s) b" |) L; k5 ]
四、程序分析题(更多资料下载:谋学网(www.mouxue.com)5分,共10分) 1 @2 G O( j0 [6 @
1.程序的功能是?其中if块起什么作用?- C' S$ X5 z( P* `
#include <iostream>- m/ W1 v0 ]0 q* [
using namespace std;5 M1 A7 u0 e( P: y" u
int main()
* { Q+ T6 W6 S, z" }: h{ int x; Y0 ?5 P) ]( Q9 L) u! h+ D5 p
cout << "enter choice(1-4):";6 ]5 P" v* Z8 n" c9 w% d
cin >> x;
: l/ w8 h4 l; L3 R& n while (x < 1 || x > 4) A5 q: @: A7 z9 ]5 U
{ cout << "Invalid choice, try again:";3 ~$ j! c/ C0 d
cin >> x;
9 v D& c9 e7 h# } n if ( cin.fail() )
+ S; z# ]! ~( f. |0 z" Y/ K { cin.clear();
0 X f6 w0 c' I cin.sync();; O7 J+ B4 e+ `4 |8 B
cin >> x;/ r( ?6 a/ g% c. M
}
6 k' ?) {8 M( u8 P }
8 }1 F4 |# y! @cout << "Had choice:" << x <<endl;6 B, [% W3 ~/ `% S% s. X9 t9 P
return 0; }
' L/ a9 g7 m# Z$ G, e }. p, [. R- G; s& }" I) ?9 X/ u& ?8 h, q
; K: J5 ]1 M$ H# o' B; a: Q+ C! e T0 {: K
0 ?4 |9 Z4 f/ a' K# \8 R
5 O* z+ ?/ r9 M9 ?. z K! r2 I; I, u& F5 m* y: [9 K) S0 R3 O
& x. m& W1 X( f4 _$ G* e" B, J5 ?
1 c+ E' M: P% H1 l
3 ]4 P5 T5 D7 Y& v2 ~- I. a2 ]' F8 F# T* I
3 e( J' R* o7 [' H2.给出下面程序输出结果。
- p. m2 M* E% i8 M4 L* e4 M3 W9 C: U#include <iostream>
J. U; o/ q& r E9 ?. Xusing namespace std;% C. M7 q7 f, F% A c t! K& L# y
class Test 1 T% B. [: w5 |' m
{ public:
: s, e: E. ]* G8 xTest( int i, int j=0 ){x=i; y=j;}
/ b9 h& v* F* R3 X! E. zint get( int i, int j ) {return i+j+x+y;}
0 O: }% X( M7 }' S! H5 Jprivate:
* O( _% o" B) M' X9 d2 E2 y int x,y; }; ; s c8 n& [: d2 M1 l- h% u
int main( ) 9 q* [' f& h- C! u/ q
{ Test t1(2), t2(4,6);
: k# j7 u, G6 X7 }5 G4 N+ Q' F( Dint (Test :: *p)(int, int);
0 C! I- g( O% b9 d+ sp=&Test::get;8 X/ @' a1 J) ]9 T* ?) ~
cout<<(t1. *p)(5, 10)<<endl; 0 r+ H* ?/ d; m7 J9 x- a& Z) A9 i. x
cout<<(t2. *p)(7, 20)<<endl; : k* c4 V u( ?9 B7 n# M
return 0; }7 a' ?0 ?% q% w7 w4 d" i s
* I# ?, b% v. @, a u- k
8 ~/ m5 G1 E) t" V& p
) P- ]4 R; Z; z! {5 G$ v. s五、模板设计题(第1小题8分,第2小题8分,共16分)
, J G6 [ X R3 ^$ o1. 编写函数模板mid( )可用于求取并返回3个数据(整/单/双精/字符)值的中间数。
( @: d* T2 r$ n% l: v2 J& x5 q) u$ Z! N0 }6 T9 d. ]' g8 _
0 R8 m7 I9 ]" w. A8 H
, G" z2 g9 s7 V8 C
0 I& W0 |# J+ w+ `+ M) e, `; Q
" K) d' x1 N* z4 k" ~8 L+ {4 y: v d$ }$ ]* f% h
4 Y" h' K& N# e, O1 h/ e7 x3 Y2.如下是矩阵类模板声明,请在模板外定义功能为矩阵相加的成员模板Madd( )。3 Y* H3 u8 r/ w- q/ N8 I
template<class T, int m, int n> |5 a* q$ c( F- r3 d! R' I% ?
class Matrix
t5 _ l; k) `) {8 C" c& K% K{ public:
7 |$ `& v3 V% [, F: T6 H2 C Matrix( );
/ m/ d$ ~4 b7 h Matrix(T a[][n]); b8 Y3 I( Z! U; h+ Q4 q
Matrix< T, m, n> Madd(const Matrix< T, m, n> & m2); 0 P3 R; B9 t1 k; h' o/ }: X
void Mdisplay( );
?) z. k% c: p* V2 ^( M private:% W z# C0 i7 i. [
T x[m][n]; };
4 |, b0 Q) ~6 L' N6 x
9 _+ n% E* W1 X) y# H' o
" }( g6 F- Z# P) X! U! ` W6 B; p9 H, B3 c M
- V% \+ m2 L( e$ D3 s4 ~" ^; V: x! F0 ~& H
# J: j6 t) S( X. z5 d. a
! f! _2 M( [5 f& d) b' h1 N/ I0 }5 i; _
) k1 a s# a. ^1 p, Y/ G
六、程序设计题(第1小题2分,第2小题6分,第3小题8分,共16分)9 a' T& j3 y& F
1.如下是线性拟合类linearfit的声明,其中成员函数fit(double x[],double y[],int n)进行线性方程Y=a1X+a0拟合,对n个元素的测量值(存放在x、y数组中)用最小二乘法求线性方程系数a0、a1。最小二乘法方程系数公式:$ v- H* U- D+ ^9 m) E- ?
class linearfit, a: h3 Q' K0 b' e4 k
{ P& N% h7 ^* M" z0 e
public:
2 x* n8 w4 w3 h! y. W" D) C linearfit( );3 d) l4 _( ~% r( \
void fit(double x[],double y[],int n);
+ I- i4 P: H, T# y, ?6 P( Q2 O" T void val(double z[],double x[],int n);
6 @ c+ M5 r% j& S8 c& x double geta0( ){return a0;}. \; g7 b' E4 a* }
double geta1( ){return a1;}
4 T+ n- l& Q# h3 _ void show( );5 K t* C8 w N! i$ W5 n# [
void show(double x[],double z[],int n);
$ r* w) h$ @' L5 p: x) p! u% o private:
, _7 s: U6 P2 K, n" q( l* M! v double a0,a1;
& M8 R2 W" o! h. I};
* G' \9 |' k+ ?+ L+ H/ v# v; D- c# g# N! k! L, G$ I
, l7 V; Z% X2 F! J( ^请完成如下内容(分别注明类内与类外部分):7 U4 T8 d% c5 J, w. O
①类外定义无参构造函数,使成员a0和a1的初值为0;5 O( ?: A+ W" M1 J* ]" c
②定义<<插入运算符重载函数,以下图方式输出显示拟合的线性方程参数。分别写出并注明类内声明和类外函数定义。3 }" @# @( D0 q
% ]/ m* u+ J! R5 o# V
③类外定义线性拟合功能的成员函数fit(double x[],double y[],int n)
2 F e: D3 Y7 S8 N2 ]: T6 g9 e/ A! m5 ~# Q
3 `) I( q. _1 F( Y" j N# g* r" b, v6 b; P' s
; h4 I( T2 q+ T; C. h# a$ V
《C++程序设计》期末考试试卷5 ]5 `1 T& E7 d" X- J8 V: ~; W
注意:全卷请在答题纸上作答,否则不得分!8 Q/ l# e" [0 O( e3 ^" E
一、更多资料下载:谋学网(www.mouxue.com)(在更多资料下载:谋学网(www.mouxue.com)的四个备选答案中,选出一个正确的答案,并将答案代码写在答题纸上。更多资料下载:谋学网(www.mouxue.com)2分,共20分)
9 a! J# v9 o2 I+ H2 s4 L5 F1、下面的哪个保留字不能作为函数的返回类型( )。 / n9 n. L3 f0 K" o; {# V
A. void B. int C. new D. long E7 a h6 |) k4 `
2. 决定C++语言中函数的返回值类型的是( )。 2 u3 Y- K- c0 N, G* r7 |" j
A. return语句中的表达式类型
4 z% K) T2 \7 L3 sB. 调用该函数时系统随机产生的类型 $ l3 H, U0 j! p! ^
C. 调用该函数时的主调用函数类型
! Z& I+ x" Y" V% d' uD. 在定义该函数时所指定的数据类型 7 j; S2 z f5 F9 \8 e4 l
3. 一个函数功能不太复杂,但被频繁调用,则应把它定义为( )。 u. ^2 c2 ?8 y q' n
A. 内联函数 B. 重载函数
* C0 I/ A& j# p5 D6 }- `C. 递归函数 D. 嵌套函数
# { p6 q7 w! A0 E$ o4 r: o ?4. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个整体,这整体就是( )。
/ T+ H+ N, C# _$ c! mA.结构体 B. 对象 C. 函数体 D. 数据块
7 Z; b" m9 i2 Y* z# g5. 下列不能作为类的成员的是( )。
& v# |2 ^& G- z( C0 ^ l! w7 o9 T8 WA. 自身类对象 B. 自身类对象的指针
$ J! ^: t- r5 m* ^7 k: ?C. 自身类对象的引用 D. 另一个类的对象
1 |6 d) |& m/ u/ p6、假定AB为一个类,则执行“AB a(4) , b[3] , * p[2] ”语句时,自动调用该类构造函数的次数为( )。
?! t+ z- w" DA. 3 B. 4 C. 6 D. 9
2 U* f+ N; X9 r+ T8 [8 `; C7. 假定一个类的构造函数为A(int aa,int bb) {a=aa--;b=a*bb;},则执行A x(4,5);语句后 ,x.a和x.b的值分别为( )。
, q* M5 u, n4 y7 u/ OA. 4和15 B. 4和5 C. 4和20 D.3和20
5 f }/ s s& e+ q- {8. 在类中说明成员可以使用的关键字是( )。
0 Y7 p' X. h% wA. register B. extern C. cpu D. public 5 E' g5 x3 o0 b) V
9.假定AA为一个类,a( )为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a( )的格式为( )。
- F. B0 h8 x: I: L8 NA.x.a B.x.a( ) C.x->a D.(*x).a( )
5 Z1 M: p, A7 @& b) L8 l& Z6 q* \10. 下列程序的输出结果是( )。 9 ~5 x1 C7 ^$ e! ]% o( W# J
#include <iostream >
9 |3 j1 c% V7 V7 xusing namespace std;! E. J {7 z2 c1 ^/ V) w- ]8 u
int main() 7 f$ `- L* w2 [* O4 ?* V4 Q
{ int a[][3]={10,20,30,40,50,60}; 0 j. S( o( p, ^8 `- I
int (*p)[3];) C2 P4 w$ ~& d+ u7 m5 I
p=a; 3 @! d( D, J9 `$ g( ` P
cout<<p[0][0]<<","<<*(p[0]+1)<<","<<(*p)[2]<<endl; }
' W: u g2 r8 ?1 OA. 10,20,30 B. 10,30,50 x* d) |8 K. C! \
C.20,40,60 D.10,30,603 y3 B+ m3 T9 J/ m, Z7 M" S6 _
二、填空题(每空2分,共20分)注:请在答题纸上做答,答案前注明题目号和填空号。: x8 h9 y. e+ F( `& K' |3 A* k7 c
1.在C++面向对象的程序设计中,将一组对象的共同特性抽象出来形成 ① 。* Y$ u' W3 q( \8 x8 U, u/ B- Y1 h2 [
2.表达式cout<<endl; 中的endl也可表示为 ② 。3 Q' t% t! q8 O! i. K
3.如下while循环执行次数是 ③ 。
+ m' @; s& v- @" S* C/ nint n=0;
2 p* k9 J2 F3 y* W; qwhile(n=1)n++;
& l0 F6 U; @+ n' g" N6 Y0 i q4.每个对象都是所属类的一个 ④ 。& L. `- \6 d- b8 O0 ~
5.用new来动态分配有10个元素的整型数组单元,并用指针ip指向该单元,应使用语句 ⑤ 。
" Q+ F6 ` \# F) e6 K9 y6.函数模板中,template< >尖括号内用于表示“类型名”参数的保留字是 ⑥ 。8 s/ L' C* q5 S6 H3 G9 z* u) ?
7.假如一个类的名称为MyClass,使用这个类的一个对象初始化该类的一个新对象时,会调用 ⑦ 构造函数来完成此功能。
" M P ~$ K5 v# j8.对赋值运算符进行重载时,应声明为 ⑧ 函数。5 j: o! a( {& x7 s) O/ w- |0 f; i
9.如果要把A类成员函数fun( )且返回类型为void声明为类B的友元函数,则应在类B的定义中加入的语句 ⑨ 。
& E1 z4 \2 C) t3 ^* Q10.定义类的动态对象数组时,系统只能自动调用该类的 ⑩ 构造函数对其进行初始化。 # d9 x' ~: s' c5 N
* o% }& H1 ~/ s; G4 g
三、程序填空题(每空3分,共18分)% b" ^0 e& O5 ], M0 R1 E y! s
1.在下面程序横线处填上适当字句,使该程序执行结果为反向输出数组的元素:
" B4 n C2 P/ O6 p5 f# |$ i50, 40, 30, 20, 10
1 w+ ?) [, ? \. Y0, 7.5, 8.4, 9.3, 10.2, 11.1: t, r% @4 f* d2 F0 K4 a4 U5 {* U
#include <iostream>
& I/ j' A; [& s2 ]using namespace std;
. ]4 {3 y' w' I3 @5 ttemplate <class T>
; O" a+ n5 U- }0 ~! r1 v! xvoid fun( ① )
% Q' x- _1 D% n* N V{ ② ;. E( ~. G2 X* Q! |
& I# r9 F5 s! v7 Z7 qfor( int i=0; i<n/2; i++)
& a4 }3 {$ d0 R1 r, Y- g{ t=a; a=a[n-1-i]; a[n-1-i]=t; }
2 _1 d. z7 ?3 B7 o V+ R+ ^; @# `! |2 X}5 c+ s; _7 z8 y1 p
int main( )
' W# J, j. \+ N) `' e" A8 B$ _{ int i,a[5]={10, 20, 30, 40, 50};/ v5 W( ~$ r5 l! Q
double d[6]={11.1, 10.2, 9.3, 8.4, 7.5};& {0 z0 [, q, u. f0 K+ N; s# J7 ^
fun(a, 5); fun(d, 6);
. d& |2 z5 a6 _- l8 h# L4 Hfor ( i=0; i<5; i++) cout << a << ",";
$ @9 b0 P# W$ _' L% Fcout <<endl; ; o- v1 o3 p) C7 x k! W; P% K
for ( i=0; i<6; i++) cout << d << ",";
# @9 ? P7 ? [+ U2 { o! ?cout << endl; } . P( V2 c4 e5 P
2. 在下面程序的底画线处填上适当的字句,使该程序执行结果为37。
! v' b0 Q3 {' N$ w! R#include <iostream> : Y5 `- {; X( y+ A# o0 c* ]0 Y
using namespace std;
/ [5 p# Q( R1 I8 X+ W! k" D9 Xclass Test - C- [, g5 O5 u' B" P% q
{ public:
) N1 {6 {4 x/ C _/ V. u& A0 HTest (int i=10) {x=i+x;}
; O" x% h2 G4 _; z" N) b* fstatic int Getnum( ) {return Test:: x;}
- `5 W. |* }+ U9 z private:0 G; V! I' T& L& n4 k8 s6 O& _
③ ; * G$ \2 d0 @+ ~: {% E
' X( G% |6 t+ R2 w}; 5 F$ o' w4 `& b- t8 U* V
④ ; , }" E/ x. i& J! b
int main( )
; [* I y' c/ V7 C$ g9 Q" u{ Test test1, test2(7); 3 S) o# j& K' V' j& x! h8 S' k
cout<< Test :: Getnum( ) << endl;
$ N$ `; L. e# M1 Q& n" @! |} ( t m8 o' I3 J b7 d' M
3.产生10个[1-100]之间的随机数并输出显示,数间用空格分隔。4 C- F5 O, N/ H6 R3 N4 e0 M
#include <iostream>
, \ d0 Z+ B% E# l6 H#include <time.h>
[7 ?: m+ X7 Y. `7 qusing namespace std;5 M6 p2 B# H% f# e% H/ _
- M% T0 n) Z* t" m" E. g( Z
int main( )
+ V( Z+ b) n8 f6 |3 r& x0 r{ int i,a[11];
: ]6 o; L, ?; A2 F" ]srand(time(NULL));
2 T- Y& q3 k1 M' R, _& O) Z: H" cfor( i=1; i<=10; i++) 9 l5 d1 _' j2 {" G& m( @5 P
⑤
5 @% \/ f, h7 f3 w$ ?2 Efor ( i=1; i<=10; i++), ]; }0 u! o- P6 F# O2 U+ Y
⑥
) v0 a# K+ O& E! Ncout << endl;. y. A( W( \; M! [; D1 W- _1 N
return 0; 2 x* G o& O! m/ g
}% Q. b9 e: O$ i( r
& r1 v0 G. w/ F! `* Z
四、程序分析题(更多资料下载:谋学网(www.mouxue.com)5分,共10分) 1 O$ Y4 K6 ~; v
1.程序的功能是?其中if块起什么作用?
& a9 t3 A( V2 ?4 c) M& S1 r#include <iostream>3 _" i% M) P0 J
using namespace std;2 S) I; t0 C Z9 ~" L
int main()
, N9 x& l0 L9 _; [+ k9 {4 z% n{ int x;% M+ W8 n* o8 c1 B2 w
cout << "enter choice(1-4):";& L, L& Z( e. |3 o
cin >> x;
2 K: O6 Y0 h7 Z. ?. d" c) k while (x < 1 || x > 4)
8 |1 y0 \; D s3 Z { cout << "Invalid choice, try again:";
& R6 }# m, N+ C; x cin >> x;
0 X5 S/ S& H9 `6 ? if ( cin.fail() )) M$ O9 `4 j; M* m
{ cin.clear();
0 k" F: w2 {5 J, p cin.sync(); Y4 }. T& r2 k
cin >> x;/ b; H# k$ S! m
}' d+ _: Z* U! }" M& W! ?4 Q& F: \, ?
}
& f' Y' {4 t- [. Rcout << "Had choice:" << x <<endl;
, {3 x8 k1 a# b4 D$ Kreturn 0; }
. a: e6 Y6 B( i4 A3 ]
j' v2 @( j6 ?$ H/ b2.给出下面程序输出结果。
% a9 l$ E8 T4 l0 k! {& n#include <iostream> 6 _6 M+ X2 E8 N; d/ _
using namespace std;: S2 W$ k9 p) T+ n: M, z$ I, N, A
class Test : `+ m/ \4 \4 P& e5 @! p5 w2 n8 C
{ public:
4 q- n0 N4 E' Z( l! @* pTest( int i, int j=0 ){x=i; y=j;}
1 `5 O2 H c# g. j8 xint get( int i, int j ) {return i+j+x+y;}& o; |9 b* R% Z2 L7 ]7 h- [
private:' v" B# n% y( s$ u; f% m
int x,y; };
, ?0 K1 [2 N2 i" s+ \1 |int main( ) 1 Z" E, z+ q) Z% d' U% F
{ Test t1(2), t2(4,6);
; U; E- C9 g' X2 Cint (Test :: *p)(int, int); : Y; h2 K5 I' x" x q
p=&Test::get;
0 P6 p+ o% j1 Y, B5 ^cout<<(t1. *p)(5, 10)<<endl;
( }0 g7 H: N0 F: q' p1 @/ y8 f; j& K zcout<<(t2. *p)(7, 20)<<endl; ) i* b& Q$ l, e3 s; s
return 0; }
$ O' E: S, ~9 Q& ~5 A0 W+ w/ n
7 S8 I! h N( ^五、模板设计题(第1小题8分,第2小题8分,共16分)2 q, h: h8 j7 w' r3 Z* L" s
1. 编写函数模板mid( )可用于求取并返回3个数据(整/单/双精/字符)值的中间数。$ G+ E& X, c5 o6 O9 S' n0 {: f( h
2.如下是矩阵类模板声明,请在模板外定义功能为矩阵相加的成员模板Madd( )。
5 v2 ?1 D5 a4 Q7 y. ]template<class T, int m, int n>
" ~7 Y6 B) I' ~$ ]3 J( Aclass Matrix
9 S6 z+ V* x" z$ q0 i{ public:
/ D0 O5 {# K9 R# D: ? Matrix( );
! e9 Q5 B% c) x( s Matrix(T a[][n]);
) p3 `- Y! w; ~% m1 f; r Matrix< T, m, n> Madd(const Matrix< T, m, n> & m2); ! A! P, Z; i# X9 @& G: n
void Mdisplay( );! O9 D2 @; C/ w% i8 n0 y/ X3 H2 a
private:1 n8 ]) N, N4 t3 w5 E2 {/ A
T x[m][n]; };+ @& G* O9 \& h+ I8 z$ ?6 q, g
1 t) W* b% O$ w/ y7 X9 B六、程序设计题(第1小题2分,第2小题6分,第3小题8分,共16分)
4 W0 i3 N7 t& E9 t) C) V; r1.如下是线性拟合类linearfit的声明,其中成员函数fit(double x[],double y[],int n)进行线性方程Y=a1X+a0拟合,对n个元素的测量值(存放在x、y数组中)用最小二乘法求线性方程系数a0、a1。最小二乘法方程系数公式:/ T5 z6 B4 g: G
class linearfit {& ?- S9 ~5 g. A6 D; I
{9 o; v2 n% [7 W& H
public:2 s+ M0 g3 m l) q/ {1 J: M" d o
linearfit( );( W$ {9 c' K! s
void fit(double x[],double y[],int n);
: q) A+ v- T0 L: R! g! Z$ H void val(double z[],double x[],int n);8 x. V6 x) m( _ U
double geta0( ){return a0;}
; G9 p5 [" }$ q0 y+ C% c$ v double geta1( ){return a1;}
. D5 y K) ~9 G) W void show( );
+ K$ [3 D, k/ M; l- t- t void show(double x[],double z[],int n);
2 b+ @3 [' l6 s* C( r+ [. ^8 y private:: X& F- ]1 I8 W2 D) E$ Y o) u
double a0,a1;# f1 j. W1 q! l5 O
};% @0 z6 e3 D2 g5 R$ g" L7 ~6 X0 I
) U6 v6 v. v" i2 W9 N
1 g! g1 N& [" c
请完成如下内容(分别注明类内与类外部分):
0 R. m. K* H' B5 V3 d①类外定义无参构造函数,使成员a0和a1的初值为0;
7 Q& |1 a! \% X: R$ c1 i$ e0 P②定义<<插入运算符重载函数,以下图方式输出显示拟合的线性方程参数。分别写出并注明类内声明和类外函数定义。; E! N: J. q, U1 {0 J* u2 \" R3 z
. u, j. p \! u" v- ~0 K
③类外定义线性拟合功能的成员函数fit(double x[],double y[],int n)
3 ?" h F/ ~5 P; y. n; x8 Y* x4 U% w1 [
* w, Y- b' n. ]8 l. a4 K& `5 h
+ J8 D* W3 e# O9 e: ~, n% L- e* k0 y: B
|
|