《2023年浙大远程面向对象程序设计的离线作业答案.pdf》由会员分享,可在线阅读,更多相关《2023年浙大远程面向对象程序设计的离线作业答案.pdf(68页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、浙江大学远程教育学院 面向对象程序设计课程作业姓名:学 号:年级:学习中心:第 2 章 2.3 测试下面的注释(它在C+风格的单行注释中套入了类似于C的注释)是否有效。/1 his i s a strang e/*way to do a comm e n t*/答:此注释有效,单行注释中可以嵌套/*/方式的注释。2.4 以下这个简短的C+程序不也许编译通过,为什么?#includ e usin g n a mespace std;s um(int a,in t b)i nt ma i n()i n t a,b,c;c outab;c=sum(a,b);c o u t sum i s:c;r e
2、 tur n 0;s um(int a,in t b)return a+b;答:不也许通过编译.在u s i n g n a me s p a c e s t d;后面加上s u m(int a,1 nt b)就可以通过。2.5 回答问题。(1)以下两个函数原型是否等价:f l o a t f u n(int a,f loat b,char *c);f loa t f u n(int,f lo a t,char *);(2)以下两个函数的第一行是否等价:f lo a t f u n(int a,f loat b,c har *c);f loat f u n(int,f loat,cha r *
3、);答:(1)这两个函数原型是等价的,函数原型中的参数名可以缺省。(2)这两个函数的第1行是不等价的,由于这个函数的第1行中必须包含参数名。2.6 下列语句中错误的是(D )0A.int *p=ne w i n t(1 0);C.int *p=ne w int;2.7 假设已有定义“c o n s t ch a的语句中对的的是(D )0A.n a m e 3=;C .name=ne w ch a r 5;2.8假设已有定义“c h ar *co n对的的是(A)oA.n ame _ 3 =q ;C .n a m e二ne w c h a r 5 ;B.int*p =ne w int 1 0;D
4、.int *p=n ew in t 40 (0 );r *co n s t n ame =che n ;“下面B.name=n 1 i n”;D.c o u t nam e 3 ;s t n a m e二 che n;”下面的语句中B.nam e=nlinM;D.n am e =n e w char(q);2.9假设已有定义“co n s t ch a r *name=che n;”下面的语句中错误的是(A)oA.nam e 3=q;B.name=lin ;C.name=n e w c har 5 ;D.name=n e w ch a r(q);【2.1 0】重载函数在调用时选择的依据中,(B
5、)是错误的。A.函数名字 B.函数的返回类型C.参数个数 D.参数的类型2,1 1 在(A)情况下适宜采用内联函数。A.函数代码小,频繁调用 B.函数代码多,频繁调用C.函数体具有递归语句 D.函数体具有循环语句2.12 下列描述中,(C )是错误的。A.内联函数重要解决程序的运营效率问题B.内联函数的定义必须出现在内联函数第一次被调用之前C.内联函数中可以涉及各种语句D.对内联函数不可以进行异常接口声明2.1 3 在 C+中,关于下列设立默认参数值的描述中,(B)是对的的。A.不允许设立默认参数值B.在指定了默认值的参数右边,不能出现没有指定默认值的参数C.只能在函数的定义性声明中指定参数的
6、默认值D.设立默认参数值时,必须所有都设立2.14 下面的类型声明中对的是(D )。A.int&a4;B.int&*p;C.i n t&q ;D.int i,*p=&i;2.1 5 下面有关重载函数的说法中对的的是(C )。A.重载函数必须具有不同的返回值类型B.重载函数形参个数必须不同C.重载函数必须有不同的形参列表D.重载函数名可以不同2.1 6 关于new运算符的下列描述中,(D)是错误的。A,它可以用来动态创建对象和对象数组B.使用它创建的对象或对象数组可以使用运算符de 1 e t e删除C.使用它创建对象时要调用构造函数D.使用它创建对象数组时必须指定初始值 2,1 7 关于 de
7、lete运算符的下列描述中,(C )是错误的。A.它必须用于new返回的指针B.使用它删除对象时要调用析构函数C.对一个指针可以使用多次该运算符D.指针名前只有一对方括号符号,不管所删除数组的维数2.1 8 写出下列程序的运营结果。#i ncludeu s i ng nam e s pace std;i nt i=15;int main()in t i;i=1 0 0;::i=i+1 ;c o ut:ie n d 1 ;r e tu r n 0;)答:1012.19 写出下列程序的运营结果。#i n cl u d eus i ng name s p a ce s t d;voi d f(int
8、&m,i n t n)int temp;temp=m;m二 n;n=t e mp;)i n t main()int a=5,b=1 0;f(a,b);cout a nbendl;re tu r n 0;答:10,102.20 分析下面程序的输出结果。#includeu sin g n a m e sp ace st d;int&f(int&i)i+=10;r e t urn i;)i nt ma i n()int k=0;int&m=f(k);c o u t k e n dl;m=2 0;co u t k end 1;r et u r n 0;)答:1 02 02.2 1 举例说明可以使用c
9、o n st替代#de fi ne以消除#d e fi ne的不安全性。答:2.22 编写一个C+风格的程序,用动态分派空间的方法计算F i bon ac c i 数列的前2 0 项,并存储到动态分派的空间中。答:#i nc 1 u d e u s i ng nam e s pa c e s t d;i nt m ai n()(i nt *p=new i nt 2 0;*p=l;*(p+l)=1;c o u t *p w t *(p+l),t ;P =P+2 ;for d nt i=3;i =2 0;i+)(*p=*(p-1)+*p(p-2);C o u t ;I f(i%5 =0)co u
10、t endl;P+;2.23 编写一个C+风格的程序,建立一个被称为s r oot。的函数,返回其参数的二次方根。重载s r oot()3 次,让它返回整数、长整数与双精度数的二次方根(计算二次方根时,可以使用标准库函数s q r t ()答:o#i n c 1 u de#i n c l u deUs i ng nam e s pac e s t d;D o u b 1 e s r o o t (i nt i )R e t u r n s q r t (i);D ou bl e s r o ot (l ong 1)r e t u r n s q r t (1);D o u bl e s r o
11、ot (dou b l e d)r et u r n s q r t (d);)I n t m a i n()I n t i =1 2;L on g 1=1 2 3 4;D ou bl e d=l 2.3 4;C ou t VV”i 的二次方根是:s r oo t (i)endl;C o u t ”1 的二次方根是:”s r o o t (1)e n dl;C ou t v d 的二次方根是:”V s r o o t (d)e ndl;R et u r n 0;)2 .24 编写一个C+风格的程序,解决百钱问题:将一元人民币兑换成1、2、5 分的硬币,有多少种换法?答:#i nc 1 u de
12、Us i ng nam es p ace s t d;I nt m ai n()!I nt I,j,s u m=0;F o r (i=0;i =2 0;i +)F or (j =0;j =0 )!S u m+;Co ut100-5*I -2*j t”t r i e n d l;C o u tw s u m i s s u m en d 1 ;R e t u r n 0 ;)2.25编写一个C+风格的程序,输入两个整数,将它们按由小到大的顺序输出。规定使用变量的引用。答:#i n c 1 u d e U s i ng n a m es p ace s t d;I nt m ai n()voi d
13、 ch a n g e(i n t&,i nt&);I nt a,b;C i n a b;I f(a b)ch an g e(a,b);C ou t a ub e n d 1;R e t u r n 0;Voi d ch a n g e(i nt&al,i n t&bl)i n t t e m p;T e m p=al;A l=bl;B l =t em p;悌三章:3.7 在下面有关对构造函数的描述中,对的的是(B )。A.构造函数可以带有返回值B.构造函数的名字与类名完全相同C .构造函数必须带有参数D.构造函数必须定义,不能默认3.8 在声明类时,下面的说法对的的是(C )。A.可以在类的
14、声明中给数据成员赋初值B.数据成员的数据类型可以是r eg i s t erC.pr i vat e p u b 1 i c pr ot e c t ed可以按任意顺序出现D.没有用pr i vat e、pu b 1 i c,pr ot ect ed定义的数据成员是公有成员3.9 在下面有关析构函数特性的描述中,对的的是(C )。A.一个类中可以定义多个析构函数B.析构函数名与类名完全相同C.析构函数不能指定返回类型D.析构函数可以有一个或多个参数3.10 构造函数是在(B )时被执行的。A.程序编译 B.创建对象C.创建类 D.程序装人内存 3.1 1 在下面有关静态成员函数的描述中,对的的
15、是(B )。A.在静态成员函数中可以使用t h i s 指针B.在建立对象前,就可认为静态数据成员赋值C.静态成员函数在类外定义时,要用st a t i c 前缀D.静态成员函数只能在类外定义3.12 在下面有关友元函数的描述中,对的的说法是1 A )。A.友元函数是独立于当前类的外部函数B.一个友元函数不能同时定义为两个类的友元函数C.友元函数必须在类的外部定义D.在外部定义友元函数时,必须加关键字f r ie n d3.13 友元的作用之一是(A)。A.提高程序的运营效率 B.加强类的封装性C.实现数据的隐藏性 D.增长成员函数的种类3.1 4 以下程序运营的结果是(B)。#includ
16、e u sing namesp a ce st d;class B publi c:B()B (in t i,i n t j)x=i;y=j;)v o id pr i nt b()cou t x ,y e ndl;)priva t e:i n t x,y;cl a s s Apublic:。A()。A(i n t I,int j);void p r inta();pr i vate:B c;);A::A(i n t i,i nt j):c(i j)()v oid A:p r i n t a()c.pr i ntb();)i nt ma i n()A a(7,8);a.printa();r e
17、t ur n 0;)A.8,9 B.7,8 C.5,6D.9,10 3.1 5 以下 程序的运营结果是(A )0#inc 1 u d e u s i ng n a m e s pace s t d;clas s A pu b 1 ic:woid se t(int i,int j)“x=i;。y=j;)int ge t _y()return y;)pri v ate:。i n t x,y;);c 1 a s s b o xpub 1 ic:void s et(i nt 1 ,i nt w,i nt s,int p)leng t h=l;width=w;s 1 a bel.s e t(s,p);。
18、intget_area()。re t u rn len g th*widt h;private:3 in t 1 e ng t h,wi d th;3 A labe 1 ;;i nt main()b o x b;b.se t(4,6,1,2 0);c o utb.g e t _area()e n d 1;retur n 0;)A.2 4 B.4 C.20 D.63,1 6 以下程序的运营结果是(B )o#i n c lu d e using namespac e s t d;cl a s s S ample p ublic:。Sampl e(i n t i,i nt j)x=i;y=j;v o
19、id disp()e c o u t d i s p ln e n d 1 ;ovoid d i sp()con s tcoutndisp2nen d 1;pri v a t e:i n t x,y;);int m a i n()co n s t Sample a(l,2);a.d i s p();retu r n 0;)A.displ B.di s p2 C.d i s pl disp2 D.程序编译犯错 3,1 7 以下程序的运营结果是(B)0#inc 1 ud e using nam e s pa c e std;class Rpublic:。R(i n t r l,int r2)匕Rl
20、=rl;,R2=r2;0 o void p rint();3 v oid p r i nt()const;pr i v a t e:in t R 1,R2;);vo i d R::p r in t()cout R l n,M R 2 e n dl;v o id R::print()co n stcou t R l n,uR 2endl;int m a in()R a(6,8);c o nst R b(5 6,88);b.pri n t();re t u m 0;)A.6,8 B.5 6,8 8 C.0,0 D.8,6 3.1 8 写出下面程序的运营结果。#includeu s ing name
21、 s p a c e s t d;cl a ss toy pub 1 ic:t oy(int q,i nt p)quan=q;pri c e=p;0)3 i n t g e t quan()。return qua n;。i n t get_price()ret u rn price;)p rivat e:Ant qu a n,price;);int main()toyop32=0,0to y(1 0,2 0),t o y(3 0,48),toy(5 0,6 8),toy(70,80),t oy(90,16),t oy(l 1,120),);f o r(in t i=0;i 3;i+)couto
22、pi0.g et_qu a n(),c o u t o p Li0.get_ p r i ce()n;cou t o pfi l.ge t _qua n()coutopil.ge t_ p r i ce()n)cou t en d 1 ;r e turn 0;)答:1 0,2 03 0,4 85 0,6870,809 0,161 1,120 3.1 9 写出 下面程序的运营结果。#includeus i n g name s pa c e std;c 1 ass e x ampl e pub 1 i c:o e x amp I e(i n t n)o i=n;cout”Cons t r u c
23、 t i ngn;)。e x ample()cout Destructin g n H;int g et_i()retu r n i;)p riv a t e:“nt i;);int sqr_i t(e x a mple o)r etur n o.g e t g e t _i();i n t mai n()ex a mple x(10);c o u t x.g e t _i()en d 1;c o utsqr_ i t(x)endl;retur n 0;答:C o n s t ructing1 0Destruc tin g1 0 0Dest r uctin g3.2 0 写出下面程序的运营结果
24、。#inclu d eus i ng names pace std;c 1 a ss aC 1 a s s p u b lie:。a Cl a s s()t o t al+;)oaCl a s s()to t al;“nt g e tt o ta 1 ()“re t ur n to t al;)pri v a t e:stat i c int total;);i nt aClas s:tota 1=0;i n t main()a Class ol,o 2,o 3;couto 1.g e ttotal()”objects i n exi s tenc e nM;aCl a ss*p;p=n e
25、w aC 1 ass;if(!p)c o u tMA 1 location e r ro r n H;r eturn 1;cou t o 1 .g e tto t a 1 ();c outno b je c ts i n e xisten c e after alloca t i on n”;delete p;c o utol.g e t total();c o u tM o bje c t s in existence a ft e r d e 1 etio n n;r e tur n 0;)空口工 3 object s in e x ist e nee4 o bj e cts in e x
26、 istence afte r al 1 ocation3 ob j e c t s in ex istenc e af t e r delet i on。3.2 1 写出 下面程序的运营结果。#i n clu d e us i n g names p ace std;c lass te s t p ublic:t e st();-tes t();private:。i nt i;);tes t::t e s t()i=25;f o r(int ct r=0;ctr10;c t r+)c o u t ”Cou n tin g a t nctrnn;test an O bject;int main
27、()re t urn 0;)答:C ounti n g at 0Cou n ti n g a t 1Co u n t ing at 2Count i ng at 3C o unti n g at 4C o u nt i ng a t 5Cou n t i n g a t 6C ount i n g a t 7C ou n tin g a t 8Count i ng at 9o3.22 写出下面程序的运营结果。#includeusing n ame s pac e std;c la s s A i n t a,b;publ i c:A()a=0;b=0;a co u t D e f a u 1
28、t c o nstructor called.no A(int i,i n t j)a=i;b二 j;coutn C onstru c t o r:a=,a H,b=H ben d 1;);in t m a in()Aa3;A b 3=A(1,2),A(3,4),A(5,6);r e turn 0;)答:Defau 1 t con s t r u ctor call e d.De f a ul t co nst r ucto r c a ile d.De f ault con structo r calle d.Con s t r uct o 亡=1,b=2Constructo r:a=3,b
29、=4Con s tructo r:a=5,b=6 o 3.2 3 写出 下面程序的运营结果。#i nclu d eus i ng n a m e sp a c e std;cl a s s Tes t priv a te:i n t val;p u bl i c:e Test()o c o u tHd e fa u It.n e n dl;o T e st(int n)v a I=n;3 c o utCon.M endl;)Tes t(c onst T est&t)va 1 =t.v al;c out”C opy con.e ndl;);i n t mai n()Test t 1(6);Te
30、st t2=t 1;T est t3;t3=tl;r et u rn 0;)答:Co n.C o py c o n.Def a ul t.3 .2 4 写出下面程序的运营结果。#inc 1 u d e u sing n a mespace s t d;cl a s s Np r i v ate:i nt A;。s tat i c i nt B;p u blic:3 N(i n t a)3 A=a;B+=a;st a tic void fl(N m);voi d N:f 1 (N m)coutA=m.A e ndl;co u t B=Bendl;i n t N:B=0;int main()N P
31、(5),Q(9);N:f 1(P);N:f 1(Q);return 0;)答:A=5B=1 4A=9B=1 425 写出下面程序的运营结果。#i nclu d eu s ing name s p ac e std;clas s MAn t x,y;publ i c:M()x=y=0;M(int i,in t j)x=i;y=j;v o id c o p y(M*m);void s e t x y(int i,intj)x=i;y=j;vo i d print()cout x n,Hx;y=m-y;vo i d f u n(M ml,M*m2)ml.s e txy(12,1 5);m2-se t
32、 xy(2 2,2 5);int mai n()M p(5,7),q;q-co p y(&p);fu n(p,&q);p.print();q.print();retur n 0;)答:5,722,25.2 6 写出下面程序的运营结果。#inc 1 udeusing nam e s p ace st d;cl a ss MAnt A;s t at i c i n t B;p u bli c:M(i n t a)“A=a;B+=a;c o u t n C on s t r ucti n g”endl;。s tatic vo i d fl(M m);gM()c o u t M D es t r u
33、e ting n);void M:fl(M m)c o u t n A=m.AVendl;coutnB=nB en d 1 ;)in tM::B=0;i n t main()M p(5),Q(l 0);M::f 1 (p);M:fl(Q);return 0;)答:C o nstr u ctingC onstructin gA=5B=1 5Destructin gA=1 0B=1 5D e s tr u c t i n gDe s truct i n gDe s true t i ng。3.2 7 指出下列程序中的错误,并说明为什么。#i n c 1 udeusing n a mespace s
34、td;cl a ss S t u d e ntpu b 1 i c:v oid p r i n t S t u();p rivate:char nam e 10;3 i nt age;ofloa t av e r;);i nt main()S t udent p 1 ,p2,p 3;p 1.age=3 0;r e t urn 0;)答:语句 p La g e=30;”编译时出现错误,由于ag e 是私有数据成员,不能直接访问。28 指出下列程序中的错误,并说明为什么。#in c lu d eus i n g n am e sp a ce s t d;class S t udent 3 i nt
35、 sno;int ag e;vo i d pr i n tSt u();void s e t Sno(i n t d););vo i d p r i n tStu();c o u tnnSno isH s now J;c o u tnage isn a g e n.e n dl;)void setS no(in t s)sno=s;)void set Age(in t a)a g e=a;)i nt m a in()S t udent lin;lin.setSno(20 2 31);1 in.setA g e(20);1 i n.p r i n tS t u();)答:这个函数是不能访问到类s
36、tudent中的a g e 属性的ag e不是类的成员 也不能通过1 in.setage()调用3.2 9 指出下列程序中的错误,并说明为什么。#includ e u sin g nam e spa c e s t d;c 1 a s s Po i ntp ublic:i nt x,y;privat e:Piont()x=1;y=2;);i n t m a in()Point cpoint;c po i nt.x=2;ret u rn 0;)答:构造函数不能是private属 性 的 必 须 是pu b lie的要不然构造函数访问不到就不能进行申明这个实例 3.3 0 下面 是一个计算器类的定
37、义,请完毕该类成员函数的实现。clas s cou n terp ubli c:c o unte r(int num b e r);void i ncrement();void de c r emen t();int getva 1 ue();int p r i n t();p riv a te:给原值加1给原值减1/取得计数器值显示计数“n t valu e;Clas s co u n t erP u b 1 i c:Cou n t e r(i nt numb e r);V o id increment();Void decremen t();Int getva 1 u e();In t p
38、r i nt();Private:I nt va 1 ue;);C 0 unter:c o u n ter(in t n u mb e r)va 1 ue=n umber;Void counter:i nc r ement()v a 1 u e+;Void c o unter::d e c reme n t()valu eInt c oun t er::ge t value()return v alue;In t coun t e r:pr i n t()(C ou t,5 v a 1 ue i s v Vva 1 u e e n dl;Re t urn 0;)3 1 根据注释语句的提醒,实现
39、类Da t e的成员函数。#inc 1 udeusin g nam e space std;cl a ss Da t e p ub 1 ic:void p r intDate();/显示日期void s e tD a y(i n t d);/设立日的值v o id s e tMont h(i n t m);设立月的值s vo i d setYe a r(i n t y);设立年的值p r i v a t e:。i nt d a y,mont h,year;;int main()D ate testDay;tes t Da y.s e t Day(5);test D a y.setMonth(1
40、 0);t estDay.s etYear(2023);t e s t Da y.printDa t e();re tu rn 0;答:Vo id Date:pri n tDat e()(Co u tvv nDate i s”V Vda yCou t vvmonthw.,yearen d 1 ;)V o id Date:s e tDay(i nt d)day=d;V o id Date::setMonth(int m)month=m;V o id Date:s etYear(int y)yea r 二 y;o3.3 2 建立类cylinder,cyli n de r 的构造函数被传递了两个d
41、oub 1 e值,分别表达圆柱体的半径和高度。用类cy 1 in d er计算圆柱体的体积,并存储在一个dou b 1 e 变量中。在类cy 1 i n d e r 中包含一个成员函数v o l,用来显示每个c y li n d e r对象的体积。答:#i n c lu d eU s i ng n a me s pa c e s t d;C l a s s c y 1 i nd e r(P u b l i c:C y l i nd e r (d o u b 1 e a,d o u b l e b);V o i d v o l ();P r i v a t e:D o u b l e r.h;D
42、 o u b l e v o 1 u me;C y 1 i nd e r:c y l i n d e r (d o u b l e a,d o u b l e b)(R=a;h=b;V o 1 u me=3 .1 4 1 5 9 2 *r*r*h;)V o i d c y 1 i nd e r:v o l ()c o u t v o l u m e i s:v o l u me V n ;I nt ma i n()(C y 1 i n d e r x(2 .2 ,8.09);X.V o 1();r e t u r n 0;)3.3 3 构建一个类b o o k,其中具有两个私有数据成员q u和
43、p r i c e,将q u初始化为1 5,将pr i c e初始化为q u的1 0倍,建立一个有5个元素的数组对象。显示每个对象数组元素的q u*pr i c e值。答:#i n c l u d e U s i ng n a m e s p a c e s t d ;Class b o o k P u b l i c:B o o k(i n t a ,i n t b)q u =a;p r i c e =b ;V o i d s h o w _ mo n e y ()c o u t q u*p r i c e V V”n ;P r i v a t e:I nt q u,pr i c e;)I
44、nt ma i n()B o o k o b 5 =B o o k(1,1 0),b o o k(2,2 0),b o o k(3,3 0),b o o k(4,4 0),b o o k(5,5 0);For(i n t i=0;i Us i n g n a m e s p a c e s t d ;C 1 a s s book(Pu b1 i c:B o o k (i n t a,i n t b)q u=a ,p r i c e=b;Vo i d s h o w m o n e y ()c o u t q u*p r i c e n ;Pr i v a t e:In t q u,p r i
45、c e;);In t m a i n ()b o o k o b 5 =b o o k (1,1 0),b o o k(2,2 0),b o o k(3,3 0),b o o k(4,4 0),bo o k(5,5 0);Bo o k *p ;P=&o b 4 ;Fo r (i n t i =0;i s h o w _ m o n e y ();p-;Re t u r n 0;)3,35构建一个类St o c k,含字符数组s t o c k c o d e 及整型数据成员q ua n、双精度型数据成员p r i c e o构造函数含3个参数:字符数组n a口及q、p0当定义S tock的类对
46、象时,将对象的第1个字符串参数赋给数据成员s t o c k c o d e,第2和第3个参数分别赋给q u a n、p r i c e o未设立第2和第3个参数时,q u a n的值为1 0 0 0,p r i c e的值为8.9 8 o成员函数p r i n t没有形参,需使用t h i s指针,显示对象数据成员的内容。假设类S t o c k第1个对象的三个参数分别为:6 0 0 0 0 1 ”,3 0 0 0和5.6 7 ,第2个对象的第1个数据成员的值是“6 0 0 0 0 1 ”,第2和第3个数据成员的值取默认值。规定编写程序分别显示这两个对象数据成员的值。答:p r i v a
47、t e:c h a r s t o c k c o d e 7 ;i n t q u a n;o d o u b l e p r i c e;p u b l i e:St o c k(c h a r n a ,i n t q =1 0 0 0,d o u b 1 e p=8.9 8)。f o r(i n t i =0 ;i 7;i+)s t o c k c o d e i =n a i ;4u a n=q;o p r i c e =p;)o v o i d p r i n t (););v o i d St o c k ::p r i n t ()f o r (i n t i =0;i s t
48、 o c k c o d e i ;c o u t t q u a n t p r i c e e n d 1;i n t m a i n()o St o c k s t o c k l(n 6 0 0 0 0 1 H,3 0 0 0,5.6 7);o St o c k s t o c k 2(6 0 0 0 0 lz z);s t o c k 1 .p r i n t ();s t o e k 2.p r i n t ();do r e t u r n 0;)3.3 6 编写一个程序,已有若干学生的数据,涉及学号、姓名、成绩,规定输出这些学生的数据并计算出学生人数和平均成绩(规定将学生人数和
49、总成绩用静态数据成员表达)。答:#i D e l u d e#i n c l u d e Us i n g n a m e s p a c e s t d;Cl a s s s t u d e n t Pu b l i c:S t u d e n t (i n t n,s t r i n g n a,d o u b l e d)n o=n;d e g =d;n a m e =n a;s u m+=d ;n u m+;S t a t i c d o u b 1 e a v g()ret u r n s u m /n um;S t a t i c i n t t o t a i ()r e t u
50、 r n n u m;Vo i d d i s p O c o u t n o,“Vn a m e d e g e n d l;Pr i v a t e:In t n o;St r i n g n a m e;Do u b l e d e g ;St a t i c d o u b l e s n u m;St a t i c i n t n u m;);D o u b l e s t u d e n t::s u m=0;In t s t u d e n t:n u m=0;I n t m a i n ()卜St u d e n t s i (1 0 0 1,Zh o u ”,9 7),s