《数据结构》实验一: VC编程工具的灵活使用

来源:互联网 发布:mac卸载opera 编辑:程序博客网 时间:2024/05/29 12:21
一..实验目的

 复习巩固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;  
        }  
};  


调试结果:参考前图。


0 0
原创粉丝点击