📄 cjj109.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>C++习题与解析(类和对象-09)</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<SCRIPT language=JavaScript>
var currentpos,timer;
function initialize()
{
timer=setInterval("scrollwindow()",50);
}
function sc(){
clearInterval(timer);
}
function scrollwindow()
{
currentpos=document.body.scrollTop;
window.scroll(0,++currentpos);
if (currentpos != document.body.scrollTop)
sc();
}
document.onmousedown=sc
document.ondblclick=initialize
</SCRIPT>
<META content="MSHTML 5.00.2614.3500" name=GENERATOR>
<link rel="stylesheet" href="body1.css" type="text/css">
</HEAD>
<BODY topMargin=0 marginheight="0" bgcolor="#CCCCCC">
<TABLE align=center border=1 cellPadding=0 cellSpacing=1
style="BORDER-COLLAPSE: collapse" width=550>
<TBODY>
<TR>
<TD bgColor=#c1c1c1 height=35> <img src="jsdd.gif" width="159" height="57" > <img src="jjdd.gif" ></TD>
</TR>
</TBODY>
</TABLE>
<TABLE align=center border=1 cellPadding=0 cellSpacing=1
style="BORDER-COLLAPSE: collapse" width=550>
<TBODY>
<TR>
<TD width="100%">
<TABLE border=0 borderColor=#e2ca9f cellPadding=0 cellSpacing=0
width="100%">
<TBODY>
<TR>
<TD align=middle vAlign=top width="95%">
<TABLE border=1 borderColor=#e2ca9f cellPadding=0 cellSpacing=0
width="100%">
<TBODY>
<TR>
<TD align=middle background=002.gif
borderColor=#e2ca9f vAlign=top width="69%">
<TABLE align=center border=0 cellPadding=0 cellSpacing=0
width="100%">
<TBODY>
<TR>
<TD height=35 width="100%"></TD>
</TR>
<TR>
<TD align=middle bgColor=#dddddd height=20
style="FONT-SIZE: 18px" vAlign=bottom
width="85%" class="body18black">C++习题与解析(类和对象-09)</TD>
<BR>
</TR>
<TR>
<TD align=middle width="100%"><BR>
</TD>
</TR>
<TR>
<TD align=middle width="100%">
<!--下面的这一句是设置阅读文本区的宽度-->
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width="75%">
<TBODY>
<TR>
<TD align=middle width="100%"></TD>
</TR>
<TR>
<TD class="body12black" >题19.编写一个程序,输入N个学生数据,包括学号、姓名、成绩,要求输出这些学生数据并计算平均分。<BR>
解:<BR>
设计一个学生类Stud,除了包括no(学号)、name(姓名)和deg(成绩)数据成员外,有两个静态变量sum和num,分别存放总分和人数,另有两个普通成员函数setdata()和disp(),分别用于给数据成员赋值和输出数据成员的值,另有一个静态成员函数avg(),它用于计算平均分。在main()函数中定义了一个对象数组用于存储输入的学生数据。<BR>本题程序如下:<BR>#include<stdio.h><BR>#include<string.h><BR>#define
N 3<BR>class Stud<BR>{<BR> int
no;<BR> char
name[10];<BR> int
deg;<BR> static int
num;<BR> static int
sum;<BR>
public:<BR>
void setdata(int n,char na[],int
d)<BR>
{<BR>
no=n;
deg=d;<BR>
strcpy(name,na);<BR>
sum+=d;<BR>
num++;<BR>
}<BR>
static double
avg()<BR>
{<BR>
return
sum/num;<BR>
}<BR>
void
disp()<BR>
{<BR>
printf("
%-5d%-8s%3d\n",no,name,deg);<BR>
}<BR>};<BR>int Stud::sum=0;<BR>int
Stud::num=0;<BR><BR>void
main()<BR>{<BR> Stud
st[N];<BR> int
i,n,d;<BR> char
na[10];<BR>
for(i=0;i<N;i++)<BR>
{<BR>
printf("输入学号 姓名
成绩:");<BR>
scanf("%d%s%d",&n,na,&d);<BR>
st[i].setdata(n,na,d);<BR>
}<BR>
printf("输出数据\n");<BR>
printf(" 学号 姓名
成绩\n");<BR>
for(i=0;i<N;i++)<BR>
st[i].disp();<BR> printf("
平均分=%g\n\n",Stud::avg());<BR>}<BR><BR>本程序的执行结果如下:<BR>输入学号
姓名 成绩: 1 stud1 89<BR>输入学号
姓名 成绩: 2 stud2 78<BR>输入学号
姓名 成绩: 3 stud 84<BR>输出数据<BR>
学号 姓名 成绩<BR>
1 stud1
89<BR> 2
stud2
78<BR> 3
stud3
84<BR>平均分=83<BR><BR>-------------------------------------------------------<BR><BR><FONT
color=#0000ff>题20.编写一个程序,已有若干个学生数据,这些数据包括学号、姓名、语文成绩、数学成绩和英语成绩,求各门功课的平均分。要求设计不同的成员函数求各门课程的平均分,并使用成员函数指针调用它们。<BR></FONT>解:<BR>
设计一个学生类student,包括no(学号)、name(姓名)、deg1(语文成绩)、deg2(数学成绩)、deg3(英语成绩)数据成员和三个静态数据成员sum1(累计语文总分)、sum2(累计数学部分)、sum3(累计英语总分);另外有一个构造函数和三个求平均分的成员函数和一个disp()成员函数。<BR>本题程序如下:<BR>#include<stdio.h><BR>#include<string.h><BR>#define
N 4<BR>class student<BR>{<BR>
int no;<BR> char
name[10];<BR> int
deg1;
// 语文成绩<BR> int
deg2;
// 数学成绩<BR> int
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -