收藏 分销(赏)

实验三类的定义及使用.doc

上传人:仙人****88 文档编号:9199751 上传时间:2025-03-16 格式:DOC 页数:11 大小:217KB
下载 相关 举报
实验三类的定义及使用.doc_第1页
第1页 / 共11页
实验三类的定义及使用.doc_第2页
第2页 / 共11页
点击查看更多>>
资源描述
实验内容: (1) 定义一个类,要求:能完成计算矩形的面积和结果输出的操作; 实验源代码: #include<iostream> using namespace std; class Cylinder { private: double x; double y; public: double cylinderfun(double a,double b); }; double Cylinder::cylinderfun(double a,double b) { double cylinder; cylinder=a*b; return cylinder; } int main() { double x,y; double cylinder; cout<<"请输入长和宽"<<endl; cin>>x>>y; Cylinder obj1; cylinder=obj1.cylinderfun(x,y); cout<<"Cylinder="<<cylinder<<endl; system("PAUSE"); return 0; } 实验结果: (2) 定义一个类,分别统计一串字符的大写字母、小写字母、空格、数字和其他字符的个数。 实验源代码: #include<iostream> using namespace std; class Point { private: int a; int b; int c; int d; int e; int n; public: void count(char g[100],int &a,int &b,int &c,int &d,int &e,int &n) { if(g[n]>='A'&&g[n]<='Z') a++; else if(g[n]>='a'&&g[n]<='z') b++; else if(g[n]==' ') c++; else if(g[n]>='0'&&g[n]<='9') d++; else e++; n++; } }; int main() { char f[100]; int a,b,c,d,e,n,i; a=b=c=d=e=n=i=0; cout<<"请输入一串字符"<<endl; f[i]=cin.get(); while(f[i]!='\n') { Point v; v.count(f,a,b,c,d,e,n); i++; f[i]=cin.get(); } cout<<"一共有字符"<<i<<"个"<<endl; cout<<"大写字母有"<<a<<"个"<<endl; cout<<"小写字母有"<<b<<"个"<<endl; cout<<"空格有"<<c<<"个"<<endl; cout<<"数字有"<<d<<"个"<<endl; cout<<"其他字符有"<<e<<"个"<<endl; system("PAUSE"); return 0; } 实验结果: (3) 定义一个类,要求:能计算一个n×n数据方阵的两条对角线元素之和。 实验源代码: #include<iostream> using namespace std; class juzheng { private: int n,sum; public: int set(int n); }; int juzheng::set(int n) { int a[100][100]; int z; z=n*n; cout<<"请输入"<<z<<"个数"<<endl; int sum1,sum2,i,j,sum; sum1=sum2=0; for(i=0;i<n;i++) for(j=0;j<n;j++) cin>>a[i][j]; cout<<"输出这个方阵"<<endl; for(i=0;i<n;i++){ for(j=0;j<n;j++) cout<<a[i][j]<<'\t'; cout<<'\n';} for(i=0;i<n;i++){ for(j=0;j<n;j++) if(i==j) sum1=a[i][j]+sum1; else if((i+j)==n-1) sum2=sum2+a[i][j]; sum=sum1+sum2; } return sum; } int main() { int n,sum; cout<<"输入一个方阵的长宽的位数"<<endl; cin>>n; juzheng a; sum=a.set(n); cout<<"该方阵的对角线的数据之和为"<<sum; cout<<"\n"; system("PAUSE"); return 0; } 实验结果: (4) 定义一个类,要求:能判断这一天是这一年的第几天? 实验源代码: #include<iostream> using namespace std; class Point { private: int y; int m; int d; public: int show(int y,int m,int d); }; int Point::show(int y,int m,int d) { int c[13],x,o=0; int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31}; int b[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; if(y%4==0){ c[13]=a[13]; for(x=0;x<m;x++) o=o+a[x]; o=o+d;} else{ c[13]=b[13]; for(x=0;x<m;x++) o=o+b[x]; o=o+d;} return o; } int main() { int y,m,d,t; cout<<"请输入年y,月m,天d请用空格隔开:"<<endl; cin>>y>>m>>d; Point obj1; t=obj1.show(y,m,d); cout<<"这是一年中的第"<<t<<"天"<<endl; system("PAUSE"); return 0; } 实验结果: (5) 定义一个日期类,要求:能设置日期;能以“年/月/日”格式输出日期;能对某日期进行加一天的操作;能对某日期进行减一天的操作。 实验源代码: #include<iostream> using namespace std; class riji { private: int y; int m; int d; public: int set(int y,int m,int d); int add(int y,int m,int d); int jian(int y,int m,int d); }; int riji::set(int y,int m,int d) {cout<<y<<"年"<<m<<"月"<<d<<"日"<<endl; return 0; } int riji::add(int y,int m,int d) { if(y%4==0&&y%100!=0||y%400==0) { if(m==1||m==3||m==5||m==7||m==8||m==10) {if(d==31){ m=m+1; d=1;} else d=d+1; } else if(m==4||m==6||m==9||m==11) {if(d==30){ m=m+1; d=1;} else d=d+1; } else if(m==2) {if(d==29){ m=m+1; d=1;} else d=d+1; } else {if(d==31){ y=y+1; m=1; d=1;} else d=d+1; } } else { if(m==1||m==3||m==5||m==7||m==8||m==10) {if(d==31){ m=m+1; d=1;} else d=d+1; } else if(m==4||m==6||m==9||m==11) {if(d==30){ m=m+1; d=1;} else d=d+1; } else if(m==2) {if(d==28){ m=m+1; d=1;} else d=d+1; } else {if(d==31){ y=y+1; m=1; d=1;} else d=d+1; } } cout<<y<<"年"<<m<<"月"<<d<<"日"<<endl; return 0; } int riji::jian(int y,int m,int d) { if(y%4==0&&y%100!=0||y%400==0) { if(m==2||m==4||m==6||m==8||m==9||m==11) {if(d==1){ m=m-1; d=31;} else d=d-1; } else if(m==5||m==7||m==10||m==12) {if(d==1){ m=m-1; d=30;} else d=d-1; } else if(m==3) {if(d==1){ m=m-1; d=29;} else d=d-1; } else {if(d==1){ y=y-1; m=12; d=31;} } } else { if(m==2||m==4||m==6||m==8||m==9||m==11) {if(d==1){ m=m-1; d=31;} else d=d-1; } else if(m==5||m==7||m==10||m==12) {if(d==1){ m=m-1; d=30;} else d=d-1; } else if(m==3) {if(d==1){ m=m-1; d=28;} else d=d-1; } else {if(d==1){ y=y-1; m=12; d=31;} } } cout<<y<<"年"<<m<<"月"<<d<<"日"<<endl; return 0; } int main() { int y,m,d,choice,i; cout<<"请输入年y,月m,日d"<<endl; cin>>y>>m>>d; riji t; t.set(y,m,d); for(i=1;i<=3;i++){ cout<<"[1]进行加一天运算:"<<endl; cout<<"[2]进行减一天运算:"<<endl; cout<<"[0]exit:"<<endl; cout<<"ENTER choice:"<<endl; cin>>choice; if(choice==0) break; switch(choice){ case 1:riji v; v.add(y,m,d);break; case 2:riji z; z.jian(y,m,d);break; } } system("PAUSE"); return 0; } 实验结果: 11
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服