c++实验三16Word下载.docx
- 文档编号:21311946
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:13
- 大小:151.90KB
c++实验三16Word下载.docx
《c++实验三16Word下载.docx》由会员分享,可在线阅读,更多相关《c++实验三16Word下载.docx(13页珍藏版)》请在冰豆网上搜索。
n数据方阵的两条对角线元素之和。
(4)定义一个描述学生基本情况的类,数据成员包括姓名,学号,操作系统、计算机网络和数据库原理等课程成绩。
成员函数包括设置姓名、学号和三门课程的成绩、输出数据、以及求每个学生的平均成绩。
(5)定义一个日期类,要求:
能设置日期;
能以“年/月/日”格式输出日期;
能对某日期进行加一天的操作;
能对某日期进行减一天的操作。
(选做)
实验过程:
在背面
所遇到的问题:
对于问题想得不够全面,对象的使用不熟练,
及其解决方法:
上网查与同学的交流
实验总结及心得体会:
(1)更加熟悉类的定义;
(2)更加了解成员函数的定义和使用。
评定成绩:
批阅教师:
年月日
实验程序如下:
#include<
iostream>
cmath>
usingnamespacestd;
classTriangle
{private:
floata,b,c,p,s;
public:
Triangle(floatA,floatB,floatC)//构造函数;
{a=A;
b=B;
c=C;
}
voidShow();
//函数声明;
};
voidTriangle:
:
Show()//求三角形面积的函数
{
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
//三角形求面积公式;
cout<
<
"
三角形的面积s="
s<
endl;
voidmain(){
floata,b,c,p,s;
请输入三角形的三边a,b,c"
;
cin>
>
a;
b;
c;
while(a+b<
=c&
&
a-b>
=c)//若输入的便不符合要求将重新输入
{cout<
这不是一个三角形,请重新输入a,b,c"
a>
b>
}
Triangleaa(a,b,c);
//定义对象
aa.Show();
classCalculate
private:
doublelowercase;
doublealphabe;
doublespace;
doublenume;
doubleother;
public:
chara[30];
Calculate(chara[30])
{
lowercase=0;
alphabe=0;
space=0;
nume=0;
other=0;
for(inti=0;
i<
30;
i++)
{
if(a[i]=='
\0'
)
break;
if(a[i]>
='
0'
a[i]<
9'
)//判断字符为数字
nume++;
elseif(a[i]>
a'
z'
)//判断字符为小写字母
lowercase++;
A'
Z'
)//判断字符为大写字母
alphabe++;
elseif(a[i]=='
'
)//判断字符为空格符号
space++;
else
other++;
}
}
voidshow()//显示各个字符个数结果
cout<
数字的个数是:
nume<
小写字母个数是:
lowercase<
大写字母个数是:
alphabe<
空格字符个数是:
space<
其他个数是:
other<
intmain()
chara[30];
请输入一串字符"
gets(a);
//输入字符串
Calculatec(a);
c.show();
system("
PAUSE"
);
return0;
classdjx
private:
inti,j,I,J,n;
floatsum;
floatsum1;
floatsum2;
floata[30][30];
voidqiudjx();
//定义函数
voiddjx:
qiudjx()
{sum1=0;
sum2=0;
sum=0;
请输入n:
n;
情输入这个n*n矩阵:
for(i=0;
i++)//输入这个矩阵
for(j=0;
j<
j++)
cin>
a[i][j];
i++)
sum1=sum1+a[i][i];
//求第一条对角线的和
for(i=n-1,j=0;
i>
0,j<
i--,j++)
sum2=sum2+a[i][j];
//求第二条对角线的和
if(n%2==0)//如果输入的n为奇数,
{sum=sum1+sum2;
elseif(n%2!
=0)//如果输入的n为偶数
{sum=sum1+sum2-a[n/2][n/2];
对角线之和"
sum<
intmain()//主函数
{
djxaa;
aa.qiudjx();
//(4)定义一个描述学生基本情况的类,数据成员包括姓名,学号,操作系统、
//计算机网络和数据库原理等课程成绩。
classStudent
charname[18];
intnum;
floatcourse[3];
floatavg;
inti;
voidset();
voidshow();
voidStudent:
set()
请输入学生的姓名"
name;
请输入学生学号"
num;
请依次输入学生操作系统,计算机网络,数据库的成绩"
3;
{
course[i];
show()
姓名:
name<
学号"
num<
操作系统成绩:
course[0]<
计算机网络成绩:
course[1]<
数据库系统原理成绩:
course[2]<
avg=(course[0]+course[1]+course[2])/3;
平均成绩:
avg<
Studenta;
a.set();
a.show();
//(5)定义一个日期类,要求:
能以"
年/月/日"
格式输出日期;
classDate
intyear;
intday;
intMons;
intmons[12];
//函数声明
voidadd();
voidreduce();
voidDate:
set()//输入日期函数
请输入年/月/日:
year>
Mons>
day;
show()//显示日期函数
你输入的日期是:
year<
年"
Mons<
月"
day<
日"
add()
{intmons[12]={31,28,31,30,31,30,31,31,30,31,30,31};
//将每个月的最后一天放进数组里
if(Mons==12&
day==31)//如果输入的日期是一年中的最后一天
{year=year+1;
Mons=1;
day=1;
}
elseif(Mons!
=2)//如果输入的月份不是2月,则不用考虑润年的问题
{i=Mons-1;
//将当前输入月份-1,作为数组mons[]的下标
if(Mons==mons[i])//如果当前输入的日期是本月的最后一天;
{Mons=Mons+1;
else
day=day+1;
elseif(year%4==0&
year%100!
=0||year%400==0)//判读是否为闰年;
{if(day==29)
{day=1;
Mons=3;
else
if(Mons==2)
if(day==28)
{Mons=3;
day=1;
else
day=day+1;
reduce()//减少一天
if(Mons==1&
day==1)//如果输入的是本年的第一天;
year=year-1;
Mons=12;
day=31;
=3)
{if(day==1)
{Mons=Mons-1;
day=mons[i];
day=day-1;
=0||year%400==0)
if(day=1)
{Mons=2;
day=29;
else
day=28;
intmain()//主函数;
{intf;
Dateaa;
//定义对象;
aa.set();
aa.show();
while
(1)
{cout<
请选择操作:
(0:
增加一天"
1:
减少一天"
2:
重置日期:
)"
f;
switch(f)
{case0:
cout<
加一天后是:
aa.add();
break;
case1:
减一天后是:
aa.reduce();
case2:
aa.set();
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 实验 16