复习C++

来源:互联网 发布:c语言在线编程 编辑:程序博客网 时间:2024/05/07 07:39

一、实验目的

复习巩固VC编程环境的使用,以及C++模板设计。

1.回顾并掌握VC单文件结构程序设计过程。

2.回顾并掌握VC多文件工程设计过程

3.掌握VC程序调试过程。

4.回顾C++模板和模板的程序设计。


二、实验内容

1.设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。要求如下:

1)设计函数来计算“和”和“积”,在主函数中调用,并能考虑重载函数,使整数和小数均能计算。

2)分别使用单步调试和断点调试来调试程序。并多次运行力求熟练调试方法。

2.使用函数的模板来实现上述功能。

3.使用一个类来实现上述功能。要求:

1)使用类模板

2)使用多文件:类的声明有头文件中;类的函数定义一个源文件中,在主程序文件中设计主函数程序,在实例化输出结果。



一、

#include<iostream>using namespace std;int Add(int a, int b){return a + b;}double Add(double a, double b){return a + b;}int Multiply(int a, int b){return a*b;}double Multiply(double a,double b){return a*b;}int main(){int za, zb;double sa, sb;cout << "Please input 2 integers:";cin >> za;cin >> zb;cout << "Please input 2 double-precision numbers:";cin >> sa;cin >> sb;cout << endl;cout << za << "+" << zb << "=" << Add(za, zb) << endl;cout << sa << "+" << sb << "=" << Add(sa, sb) << endl;cout << za << "*" << zb << "=" << Multiply(za, zb) << endl;cout << sa << "*" << sb << "=" << Multiply(sa, sb) << endl;return 0;system("pause");}


二、

#include<iostream>using namespace std;template<typename T>T Add(T a, T b){return a + b;}template<typename T>T Multiply(T a, T b){return a*b;}int main(){int za, zb;double sa, sb;cout << "Please input 2 integers:";cin >> za >> zb;cout << "Please input 2 double-persion numbers:";cin >> sa >> sb;cout << endl;cout << za << "+" << zb << "=" << Add(za, zb)<<endl;cout << sa << "+" << sb << "=" << Add(sa, sb) << endl;cout << za << "*" << zb << "=" << Multiply(za, zb) << endl;cout << sa << "*" << sb << "=" << Multiply(sa, sb) << endl;return 0;system("pause");}



三、

#include<iostream>using namespace std;template<typename T>class Add{public:Add(T a, T b)  //构造函数{x = a;y = b;}T sum(){return x+y;}T product(){return x*y;}private:T x,y;};#include"number.h"int main(){int za, zb;double sa, sb;cout << "请输入两个整数:";cin >> za;cin >> zb;cout << "请输入两个双精度数:";cin >> sa;cin >> sb;Add<int> number_1(za,zb);Add<double>number_2(sa,sb);cout<<"\n两个整数的和为:"<<number_1.sum()<<endl;cout<<"两个双精度数的和为:"<<number_2.sum()<<endl;cout<<"两个整数的积为:"<<number_1.product()<<endl;cout<<"两个双精度的积为:"<<number_2.product()<<endl;system("pause");return 0;}



1 0
原创粉丝点击