一.实验目的
复习巩固VC编程环境的使用,以及C++模板设计。
1.回顾并掌握VC单文件结构程序设计过程。
2.回顾并掌握VC多文件工程设计过程
3.掌握VC程序调试过程。
4.回顾C++模板和模板的程序设计。
二.实验内容1. 设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。
#include<iostream>using namespace std;
float s(float a,float b)
{
float sum;
sum=a+b;
return sum;
}
int s(int a,int b)
{
int sum;
sum=a+b;
return sum;
}
float j(float a,float b)
{
float ji;
ji=a*b;
return ji;
}
int j(int a,int b)
{
int ji;
ji=a*b;
return ji;
}
void main()
{
float x,y; int q,p;
cout<<"键盘上输入两个小数:";cin>>x>>y;
cout<<"该两数的和sum="<<s(x,y)<<endl;
cout<<"该两数的积ji="<<j(x,y)<<endl;
cout<<"键盘上输入两个整数:";
cin>>q>>p;
cout<<"该两数的和sum="<<s(q,p)<<endl;
cout<<"该两数的积ji="<<j(q,p)<<endl;
}
以上是源程序,以下是调试内容:
单步调试:
断点调试:
由于刚审题不清,所以程序稍微修改了下,望见谅。
2.使用函数的模板来实现上述功能。
源程序代码
#include<iostream>
using namespace std;
template<class T1>
T1 s(T1 a,T1 b)
{
T1 sum;
sum=a+b;
return sum;
}
template<class T>
T j(T a,T b)
{
T ji;
ji=a*b;
return ji;
}
void main()
{
float x,y;
int q,p;
cout<<"键盘上输入两个小数:";
cin>>x>>y;
cout<<"该两数的和sum="<<s(x,y)<<endl;
cout<<"该两数的积ji="<<j(x,y)<<endl;
cout<<"键盘上输入两个整数:";
cin>>q>>p;
cout<<"该两数的和sum="<<s(q,p)<<endl;
cout<<"该两数的积ji="<<j(q,p)<<endl;
}
程序执行结果:
3.使用一个类来实现上述功能。要求:
1)使用类模板
2)使用多文件:类的声明有头文件中;类的函数定义一个源文件中,在主程序文件中设计主函数程序,在实例化输出结果。
源程序文件:
//头文件.h
#include<iostream>
using namespace std;
template<class T>
class L
{
private:
T a;
T b;
public:
L(T x,T y)
{
a=x;b=y;
}
T s()
{
T sum;
sum=a+b;
return sum;
}
T j()
{
T ji;
ji=a*b;
return ji;
}
};
//程序.cpp
#include "头文件.h"
void main()
{
int aa,bb;
cout<<"请输入两个整数:";
cin>>aa>>bb;
L<int> heji(aa,bb);
cout<<"两数之和sum="<<heji.s()<<endl;
cout<<"两数之积ji="<<heji.j()<<endl;
float cc,dd;
cout<<"请输入两个小数:";
cin>>cc>>dd;
L<float> jihe(cc,dd);
cout<<"两数之和sum="<<jihe.s()<<endl;
cout<<"两数之积ji="<<jihe.j()<<endl;
}
运行结果如图所示: