1 / 28
文档名称:

面向对象课程设计报告.pdf

格式:pdf   大小:2,216KB   页数:28页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

面向对象课程设计报告.pdf

上传人:cjl201702 2022/10/19 文件大小:2.16 MB

下载得到文件列表

面向对象课程设计报告.pdf

相关文档

文档介绍

文档介绍:该【面向对象课程设计报告 】是由【cjl201702】上传分享,文档一共【28】页,该文档可以免费在线阅读,需要了解更多关于【面向对象课程设计报告 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:.


 


_______________

!"#$%&'()$*+
,-________________________
./0120222113150
40120222123280:.

1.678

 9:;<=>?***@ABC9D4E
 F
GHI7BJK 7LMNDOPQ/RSTUVC++YZ7[\]^_`;
[\UV
 7bc^def`ghij7[\]^_`Cklmn
7
 ]Copqrstukl<v]7wxO
2.6
1z{|}~
2zr€
3zr€ƒ„
4zr€†‡
5z‰Š‹ 
6z
7zŽ
8z\u‘’7“<”
9z–—
10z{|†™
3.PQ8
š1z68›œžŸ ¡¢10j£7¤¥¦1§¨©
ª7O«¬­®¯°O
±žŸ 
ª74¢.²Pƒ³8´4µQ¶·8¸¹
67“º»f¼`µQš½Žzf¾¿¾À7PQOÁ4
ÂÃ8¸¹¼`¶·f¼`ÄÅƶ“š¼`Ä
ŎzOÇ4ÈÃ8¸¹¥ž}µQ¶·f¥ž}ÉÊËÌšE
ÎRŽzf¥ž}ÐÑËÌfÒÓJŽfÔ “Õ¼`ÄÅ<”OÖ
×Ø8×ØÙÚ7²P]CuÛYeÜÝÞßàCáâ9ãIÐÑ]ß
à^×äOåæiçèÞuÃé8çèêëæiìuí7 CÈÃîÀ
›Bï7ð³ïñOòóôõ šö÷øz:.
ùúÐûüý4þÿA4


4
!"#$%&'()*:.


+17./01830066-12300
/09830066-12300
/0:830066-12300
+18./018300-----12300
/0914330---18330
/0<830066-12300
6
1
=>3
?***@ABCDEF
9
>(GHI3
1>(3
1
HI?***@JKLMNOC++RS(******@VWXYZ
2
TUNO[\](TU^_W`aZ
3
Ybcde@(******@VWXYfghi([\]V=
2TUHI3
1
HIcd[\](`ajkC++(l^mnoAEF(Z
2
HIp(qrstuv(wxyZ
3
pEFrz{H|}:"w!"wrH~&(€*W`aZ
4
pEF(rz{HdK[\](1‚ƒ
3„…HI3
pTUHIJK†‡ˆ‰„…Š‹ŒŽBˆ‰‘(’Y
4“”•–—
<
`aWTU˜D3
1V=™š’YHI
:
1"~d(œ?***@ABCDž~Ÿ ¡W¢£’Y¤¥Yb
¦§‘¨|©ªk«"©ª¬A1"©ª­o®¯dwn°%±²$%[\
](³´
HI3
°%µH’Y3st©ª©ª(¶W·¸¢£¹ºŸ¹º‡j»¼ :.
¡¢£§½¾¹º¿‡jÀ§¶Á…(¹º
2V=(fg`Â3
‹ŒEF’YHI‡jV=fg²ÃjÄÅÆ3
1
#dEF²ÇstÈEF(’YÉÊËÌjkÍ[(¬ÎW;
2
²ÇEFr("°$k­ÐÑÒ(ÓEÔՀ*W‰ÃZ
3
‹ŒV=™šEF(wxyZ
4
oAwxyr"w(™šÔՀ*W`a
Z
5
oAwr"A×ØÙ(|}Z
6
oAEF(#dÉÊZ
7
’YÛÜZ
8
oAEFݏjkEF¯d•–—:.

ÞI²Ç.....................................................0
2.Ý$.........................................................0
3.ž$..........................................................1
ÛÜ.........................................................4
5.B²Ç.........................................................7
6.ݏ...............................................................7
7.àá.........................................................8:.
1.
(>(Gâ}3
%p(@ã?@Ùäå«æ(çÜ¿èåéêëìÞH1"?***@ABCD
EFn\?@(ABˆ‰CD
’YÞI3
UEF~:"wScorewSubjectwStudentwClasswí?@("
îïçÜð>kABîï~?***@ABîïºñ?***@ABî?***@ABîï
·¸?***@ABî?***@ABîjkٌÀ©ªò’Y
2.!"
’Y²Ç::.
EFóqÛdØÙn°%?***@ABîïºñ?***@ABî?***@ABîï¢
£?***@ABîjkٌÀ©ªò’YInsert()ØÙdôºñ?***@ABk
îïZUpdatel()ØÙdn‘?***@ABkîïZShowØÙdô·¸®õö~(
¹ºZDelete()ØÙdn¢£?***@ABkîïZSearchi()kSearch2()ØÙdn
ŸkîïZSaveØÙdô÷ñ(îïñ©ªøZµØÙmaindôÛdù
úØÙ
’YÉÊû²G3
UEF|}üScorewSubjectwStudentwjkClasswù:"w|}ü
Insert()Updatel()Show()Save()Delete()Searchi()kSearch2()
òØÙn°%EFeޒY
’YÉÊÌ3
?***@ABCDEF
同同显纪
学学??录退

成成@@存出

果果AA入系

查录BB纪文统
询入¢录件
£‘
保退
存出
胜胜
利利
3.ž$
²Ùw(3
Èw|}ü1"ÿ

:.
Score
-scoreint
+Score(sint=0)
+setl()void
+showl()
-

4
53
67Score33
6789:12;<

=>?@
_____________Subject_______________
-subject[20]char
-scScore________________________
+Subject()
+set2()void
+show2()void
-

4
53
67Subject33: 6789:6789 K7L
MN
=>?@
Student
-name[20]char
-numint
-Schar
-nint
-pl[8]Subject
+Student()
+set3()void
+show3()void
+getNUl()int
-

4
53
67Student33W89:WLN
=>?@
X
Class
-name[20]char
-num2int
+Class()
+getNU():int:.
-
\73]^_`:
Student
-name[20]char
-numint
-Schar
-nint
+Student()
+set3()void
+show3()void
+getNUl()int
+getNAl()char*
v:.
4.^cde
jk lm6nop
1Wqrst qo s3uv?wxy z{qrt|}~
2W6€‚ƒmqr„…†8‡t ˆ>‰opŠ‹v?Œpu f‚
switchŽ‘’“default:cout<<"•–op —˜™•–š›œM 
ždegh:.
‚ƒm
#$%
&'(
)*+,-:“生成绩查询
aZ
bZ生成绩录入
cZ生成绩删除
d子成绩修改

e显全部记录
示^入文件
f记
退雷统
nono
IJ?Ÿ r
01&'23:
-佳该生所在T鳏

也该班卷号1
用A-瞿
清善生学名2

号1
用A-小-小该性
本生^
嗝每门课:m
请的
住科目名^
11
用:
gA-
在.]入分数
用A-
.JA:
80
I1A^
IJ?Ÿ¡¢
678*+
3:;<=
2>?@:;<=
%1&B:;2'23
CD:EFC3i00i?@:GHIJ:m3i
C++80
IJ?Ÿ:.
CD:EFC31001?@:GHIJK32
C++90
IJ?Ÿ£¤
61&BLM2'2?@:
JP---
N&BLM2'23:
I,D主该生所在flflT

I,主班需号1
雇该
I,主I1A-生学名??
闫I1A^-该J
l,主生号2
用性
主每生
-门课:M的
,.-
I月I)^A:科目名
,主:
I月
+
C+主输入分数
W-W-.
,
¥ r¦§
笺生成绩查询
a
b文生成绩录人
幸生成绩删除
c
d生成绩修改

示全部记录
e记
f4入文件
退^统
aaaa^
STUV,?
IJ?Ÿ¨©
生成绩查询
a
b生成绩录入
生成绩删除
c
d于生成绩修改
显示全部记录
e
f记拿入文件
退水统
9
61&
XYZ2'23::.
5.[
hª«
4 ¬73 ­ ®¯°3}± f
4ghi ²³ ´µ¶
·3¸¹ º» m°°¼½¾MNC++¿hÀÁÂ?^c
4 ÃÄ
¦§ÅIJ?ŸÆÇW˜¦§iÈÉIJ?ŸÆÇW£¤ÆÇW¡¢ÆÇW¨©Æ
Ǧ§iÅÆÇX}±Ê˃mŠ‹ Š‹ÌÍÎÏhªÐÑ ÒӊÔ,
Ö×jkopØÙÚÛ£¤
6.![
ÜÝ ÞÄ
4¯2ßà f°á¯2âãätå æçè 67Øé}ê:.
ë ì›Ïí67hªîï|}67°¯2}±>67…†ðmäñ¹ ›5
òóhªô¾õ¯ 67öô¾Ï67öhª÷ø ºùô 67hªú
K7ûü®
ýþ>nÿ

C++

 !"#$% &'()*+

,-./0 12 3 45.
16&78#9 :;
<$%()=>?@" !A
"#$%()2BCDE
0FGH.
IJKLDM#-NOPNO$QRSTUV
WXYZ[\ ]^_`aJKb:;c>defg WXhi4:;
jklmCnopqrst?uv"#@wxyz{|}>~de
€ ‚. ƒ„…†X>QRST …‡ˆ‰Š …†x‹Œ_b:;,
rg$ Ž‘’“”4:;jklmv8bR•–h—{<˜R•™
š›œNn
!NOx$˜š›”DMžŸ<uv‹ &¡¢opq@£¤
& ¥¦”x§¨© ª«¬ˆ­…†§¨©ª«> @®8 
¯ QRST°>±² ³v<g´µSTR•>
¶ ·¸¹
º3C++>
¶ fgR• ST#R™’“ »¼<´µ ½¾
¶ ¿ÀQR 8
¶ @Á$ÂÃ& ÄÅÆǶ·´µ
&'$%()ÈÉÊ
}Ë[ …‡ÌÍÎ>Ï¥Ð
ÑÒÓÔ
ÕÖ×ÈgË[3Ø…‡–ÙÚÛÜÝ¡>ÝÞßg{ Ø Ø
àáÌ͝¸t?.â-ãä åD»¼<´µæ
@ç
¸èÐé
QRSTêëgìí¯ `a4îï°ð
Ùñn¬ò&óé”D°ð uôñõ
7.\]^_
#include<iostream>
#include<fstream>:.
#include<string>
usingnamespacestd;
intM=100;
staticintM2=0;
classScore{
private:
intscore;
public:
Score(ints=0){
score=s;
}
voidsetl0{
cout<<&'(:z/<<endl;
cin>>score;
voidshowl(){
cout<<zz:/z<<score-endl;
)
}.
classSubject{01
private:
Scoresc;
charsubject[20];
public:
Subject(){
for(inti=0;i<20;i++)
subject[i]=0;
J
voidset2(){
cout-&'(01567<<endl;:.
cin>>subject;
();
)
voidshow2(){
cout<<subject;
();
)
).
classStudent{9:
private:
Subjectpl[8];
charname[20];
intnum;
charS;
intn;
public:
Student(){
for(inti=0;i<20;i++)
name[i]=0;
num=0;
S=0;
)
voidset3();
voidshow3();
intgetNUl(){returnnum;}
char*getNAl(){returnname;}
:.
voidStudent::show3(){9:BCD
inti;
cout<EF5:GH:II-S<<II\t:K:Iz-num-endl;
for(i=0;i<8;i++)
pl[i].show2();
voidStudent::set3(){9:LMD
inti;
cout<<&'(9:F57.
cin>>name;
cout-&'(NO:K:.
cin>>num;
cout<E&'(NOGH:.
cin>>S;
cout*&'(PQRST5UV.<<endl;
for(i=0;i<8;i++)
pl[i].set2();
classClass{XY
private:
Studentstu;
charname2[20];
intnum2;
public:
Class(){
for(inti=0;i<20;i++):.
name2[i]=0;
num2=0;
)
intgetNU0{();}
stringgetNAO{();}
voidset4(){
coutG&'(NO]^XY56:.
cin>>name2;
cout<<&'(NXXK:;
cin>>num2;
();
)
voidshow4(){
cout<EXY:/z<<name2-/z\tXK:\t/z<<num2;
();
friendvoidSearchi(Classcl[],intcountl);
friendvoidSearch2(Classc2[],intcount2);
friendvoidUpdatel(Classc3[],intcount_d);
friendvoidDelete(Classc4[],int*count_c);
friendvoidInsert(Classc5[],int&count_a);
}b[100];
voidSave(Classc6[],intcount)fgh(ijD
fstreamfile(Iios::out|ios::binary);
if(!file)
cout-/<<endl;:.
abort();
for(inti=0;i<count;i++)
file,write(reinterpret_cast<char*>(&c6[i]),sizeof(c6[i]));
;
voidShow(Classc7[])BCfgD
inti=0;
for(i=0;c7Li].getNU()!=0;i++)
c7[i].show4();
voidInsert(Classc5[],int&count_a)pqg(D
(
inti,in_number,n=0;
if(count_a==M)
cout*rstuv;
return;
cout-&'(9:T:K7wendl;
cinxin_number;:.
for(i=0;i<count_a;i++)
if(c5[i].getNU()==in_number)
cout<<tyz9T:K,&{|'(!<<endl;
break;
)
}while(c5[i].getNU()==in_number);
if(in_number<l)
cout~'(€I&{|'(‚ƒT„!zI-endl;
}while(in_number<=0);
i=count_a;
c5[i].set4();
count_a++;
cout<<endl-endl;n=n+l;
if(n!=0)
cout<<9:…†g(‡ˆv<<endl;
voidSearchi(Classcl[],intcountl)‰:KŠ‹pqD
(
inti,number,flag=l,n=0;
cout-&'(]ŒŠ‹T9:T:K7ECendl;
do
(
cin>>number;
if(number<=0)
cout<X'(€I&{|'(‚ƒT„!zI-endl;
}while(number<=0);:.
for(i=0;i<countl&&flag;i++)
if(cl[i].getNU()==number)
(
cl[i].show4();
flag=0;n=n+l;
)
if(n==0)
cout-ŽyŠ‹N9:T‘!<<endl;
voidSearch2(Classc2[],intcount2)‰F5Š‹pqD
I
inti,n=0;
charnam[20];
cout-&'(]ŒŠ‹T9:TF57Hendl;
cin>>nam;
for(i=0;i<count2;i++)
if(c2[i].getNA()==nam)
(
c2[i].show4();
n=n+l;
)
if(n==0)
cout~ŽyŠ‹N9:T‘!wendl;
voidUpdatel(Classc3[],intcount_d)pqLMD
]
inti,n=0,flag=l,m;
charnam[20];:.
cout~''&'(]ŒLMT9:TF57"<<endl;
cin>>nam;
for(i=0;i<count_d&&flag;i++)
(
if(c3[i].getNA()==nam)
(
cout~"&'(]ŒLMT9:T:K:"<<endl;
cinxm;
for(i=0;i<count_d&&flag;i++)
{
if(c3[i].getNU()==m)
(
c3[i].set4();
flag=0;n=n+l;
)
)
)
break;
)
if(n!=0)
cout<<”LM‡ˆv"EVendl;
if(n==0)
cout~”ŽyŠ‹N9:T‘!”<Eendl;
)
voidDelete(Classc4[])pq—˜D
(
fstreamfile("class,dat”,ios_base::in|ios_base::out|ios_base::binary);
inti=0;
for(i=0;i<100;i++):.
(reinterpret_cast<char*>(&b[i]),sizeof(b[i]));
for(i=0;b[i].getNUO!=0;i++)
M2™i;
Classc9;
intn=0,number,flag=l;
cout<<&'(ŒŒ›œžT9:T:K7“endl;
cinxnumber;
for(i=0;i<M2&&flag;i++)
(
if(c4[i].getNU()==number)
(
ford;i<M2&&flag;i++)
c4[i]=c4[i+l];
flag=0;
(M2) ;n=l;
Save(b,M2);
break;
)
)
if(n==0)
cout<<ŽyŠ‹¡¢—˜T‘!wendl;
if(n!=0)
cout<<‘—˜‡ˆvwendl;
intmain()
charal;:.
fstreamfile("Iios_base::in|ios_base::out|ios_base::binary);
cout<X\t\t**************£¤›(9:…†¥¦§¨
**************EEendlEEendl;
do
(
cout<E&©ª«¬7<<endl;
cout-zI\t\t\:…†Š‹<<endl;
cout-zI\t\t\:…†g(<<endl;
cout-zI\t\t\:…†—˜"<<endl;
cout-z/\t\t\:…†LM<<endl;
cout-zz\t\t\­®fg<<endl;
cout-?I\t\t\(ij”<<endl;
cout-/z\t\t\tg.°±§¨“<<endl;
inti=0;
for(i=0;i<100;i++)
(
(reinterpret_cast<char*>(&b[i]),sizeof(b[i]));
}
for(i=0;b[i].getNU()!=0;i++)
x
M2=i;
cin>>al;
switch(al)
(
case'a':
(
coutE<"\t\t\t&²³©ª://-endl;
cout<<I/\t\t\t\tl.‰:KŠ‹pq"<<endl;
coutEE”\t\t\t\t2.‰F5Š‹pq<<endl;
intx;
cinxx;:.
switch(x)
case1:Search1(b,M2);break;
case2:Search2(b,M2);break;
default:coutµE©ª€I&{|©ª!IIµµendl;
)
)
break;
caseµbI:Insert(b,M2);break;
case'c':
¶
file,close();
Delete(b);
}break;
case'd':Update1(b,M2);break;
case'e':Show(b);break;
case'f’:
(
file,close();
Save(b,M2);
cout~