C++面向对象程序设计50道编程题(第01题)

版权声明:版权所有,尊重原创。转载请注明出处: https://blog.csdn.net/qq_36426650/article/details/84574161

C++面向对象程序设计50道编程题(第01题)

摘要:C++程序设计实习是为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析问题和解决问题的能力,提高学生运用所学知识解决实际问题的能力。
  本专辑为编程入门者、高校计算机软件专业学习或复习提供C++程序设计题库。
  读者请先独立思考哦,再与参考程序进行比对检查。

一、问题描述

在这里插入图片描述

二、考察内容

基本面向对象概念,如何创建类、对象,对公有数据成员和公有成员函数的理解,以及简单的数学运算。

三、难度等级

难度等级:★★☆☆☆

四、参考程序

#include<iostream.h>
class Fract{
	int num,den;
public:
	Fract(int a=0,int b=1){num=a;den=b;}
	int ged(int,int);
	Fract add(Fract);
	void show(){cout<<num<<'/'<<den<<endl;}
};
int Fract::ged(int m,int n) {
	int k;
	if(m>n)k=n;
	else k=m;
	for(;k>0;k--)
		if(m%k==0&&n%k==0)
			break;
			return k;
}
Fract Fract::add(Fract f) {
	Fract ff;
	int v;
	v=ged(den,f.den);
	v=den*f.den/v;
	num=v/den*num;
	f.num=v/f.den*f.num;
	ff.num=num+f.num;
	ff.den=v;
	v=ged(ff.num,ff.den);
	ff.num/=v;
	ff.den/=v;
	return ff;
}
void main(){
	Fract f1(1,5),f2(7,20),f3; //注15
	f3=f1.add(f2);
	f3.show();
}

五、心得感受

可以在评论处写下思考和编程此题的感受

猜你喜欢

转载自blog.csdn.net/qq_36426650/article/details/84574161