《数据结构》实验一:VC编程工具的灵活使用
一、实验目的
复习巩固VC编程环境的使用,以及C++模板设计。
1、回顾并掌握VC单文件结构程序设计过程。
2、回顾并掌握VC多文件工程设计过程
3、掌握VC程序调试过程。
4、回顾C++模板和模板的程序设计。
二、实验内容
1、 设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。要求如下:
1)设计函数来计算“和”和“积”,在主函数中调用,并能考虑重载函数,使整数和小数均能计算。
2)分别使用单步调试和断点调试来调试程序。并多次运行力求熟练调试方法。
源代码如下:
#include <iostream>
using namespace std;
float add(float x,float y)
{
float sum;
sum = x+y;
return sum;
}
int add(int x,int y)
{
int sum;
sum = x+y;
return sum;
}
float multiply(float x,float y)
{
float sum;
sum = x*y;
return sum;
}
int multiply(int x,int y)
{
int sum;
sum = x*y;
return sum;
}
int main ()
{
float x1 = 3.8, y1 = 5.6;
int x2 = 2, y2 = 3;
cout << "3.8+5.6=" << add(x1, y1) << endl;
cout << "2+3=" << add(x2, y2) << endl;
cout << "3.8*5.6=" << multiply(x1, y1) << endl;
cout << "2*3=" << multiply(x2, y2) << endl;
system("pause");
return 0;
}
运行结果:
断点调试:
2、使用函数的模板来实现上述功能。
源代码如下:
#include<iostream>
#include<stdlib.h>
#include<iomanip>
using namespace std;
template<class T>
T add(T a, T b)
{
return a + b;
}
template<class T>
T multiply(T m, T n)
{
return m*n;
}
int main()
{
int x = 2; int y = 3;
float i = 5.8, j = 6.7;
cout << "2+3=" << add(x, y) << endl;
cout << "5.8+6.7=" << add(i, j) << endl;
cout << "2*3=" << multiply(x, y) << endl;
cout << "5.8*6.7=" << multiply(i, j) << endl;
system("pause");
return 0;
}
运行结果:
3、使用一个类来实现上述功能。要求:
1)使用类模板
2)使用多文件:类的声明有头文件中;类的函数定义一个源文件中,在主程序文件中设计主函数程序,在实例化输出结果。
源代码如下:
#include<iostream>
#include"HEAD.h"
#include<stdlib.h>
#include<iomanip>
using namespace std;
template<typename T>
T Cal<T>::add(T x, T y)
{
return x + y;
}
template<typename T>
T Cal<T>::multiply(T x, T y)
{
return x*y;
}
int main()
{
Cal<int> x;
Cal<float> y;
cout << "2+3=" << x.add(2, 3) << endl;
cout << "5.6+6.7=" << y.add(5.6, 6.7) << endl;
cout << "8*9=" << x.multiply(8, 9) << endl;
cout << "3.8*2.1=" << y.multiply(3.8, 2.1) << endl;
system("pause");
return 0;
}
运行结果: