复习巩固VC编程环境的使用,以及C++模板设计。
1.回顾并掌握VC单文件结构程序设计过程。
2.回顾并掌握VC多文件工程设计过程
3.掌握VC程序调试过程。
4.回顾C++模板和模板的程序设计。
二.实验内容
1. 设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。要求如下:
1)设计函数来计算“和”和“积”,在主函数中调用,并能考虑重载函数,使整数和小数均能计算。
2)分别使用单步调试和断点调试来调试程序。并多次运行力求熟练调试方法。
2.使用函数的模板来实现上述功能。
3.使用一个类来实现上述功能。要求:
1)使用类模板
2)使用多文件:类的声明有头文件中;类的函数定义一个源文件中,在主程序文件中设计主函数程序,在实例化输出结果。
三.程序代码:
1.单文件结构:
.#include<iostream>
using namespace std;
double add(double x,double y)
{
double sum;
sum=x+y;
return sum;
}
double product(double x,double y)
{
double pro;
pro=x*y;
return pro;
}
float main()
{
float x,y,z,h;
cout<<"请输入两个数:";
cin>>x>>y;
z=x+y;
h=x*y;
cout<<"这两个数的和是"<<z<<endl;
cout<<"这两个数的积是"<<h<<endl;
return 0;
}
调试结果
2使用函数的模板
template (class A1,class A2)
A1 plus(A1 a,A2 b)
{
double p;
p=a+b;
cout<<"这两个数和为:"<<p<<endl;
return p;
}
template(class B1,class B2)
B1 product(B1 a,B2 b)
{
double q;
q=a*b;
cout<<"这两个数的积为:"<<q<<endl;
return q;
}
int main()
{
char d='n';
double x,y;
while(d=='n'||d=='N')
{
cout<<"请输入两个数:";
cin>>x>>y;
plus(x,y);
product(x,y);
cout<<"是否结束(Y/N):";
cin>>d;
}
调试结果:此代码有错误,可是由于本人能力有限,调试不出结果。
3.3.使用一个类来实现上述功能。要求:
1)使用类模板
2)使用多文件:类的声明有头文件中;类的函数定义一个源文件中,在主程序文件中设计主函数程序,在实例化输出结果。
源文件:
#include <iostream>
using namespace std;
#include"CA.H"
int main()
{
float m1,m2;
cout<<"输入两个数:";
cin>>m1>>m2;
Ca<float>a;
Ca<float>b;
a.plus(m1,m2);
a.mul(m1,m2);
return 0;
}
头文件:
#include <iostream>
using namespace std;
template <class T>
class Ca
{
public:
void plus(T x,T y)
{
T he;
he=x+y;
cout<<"两个数的和为:"<<he<<endl;
}
void mul(T x,T y)
{
T ji;
ji=x*y;
cout<<"两个数的积为:"<<ji<<endl;
}
};
调试结果:参考前图。