数据结构 实验一:VC编程环境灵活应用
2014-09-17 21:16
453 查看
实验目的:
1.复习巩固VC编程环境的使用,以及C++模板设计。
2.回顾并掌握VC单文件结构程序设计过程。
3.回顾并掌握VC多文件工程设计过程
4.掌握VC程序调试过程。
5.回顾C++模板和模板的程序设计。
实验内容一:
设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。
实验内容二:
结果与“实验内容一”相同。
实验内容三:
结果与“实验内容一”相同。
由于模板类在多种编译环境下不支持声明与定义分开,其他程序员也不建议这样子做。所以实验内容三的模板类分多文件处理,只分了头文件。头文件中包含了类的声明与定义。
main.cpp
1.复习巩固VC编程环境的使用,以及C++模板设计。
2.回顾并掌握VC单文件结构程序设计过程。
3.回顾并掌握VC多文件工程设计过程
4.掌握VC程序调试过程。
5.回顾C++模板和模板的程序设计。
实验内容一:
设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。
#include <iostream> using namespace std; void add(int a, int b){ cout << "两数之和是" << a + b << endl; } void mul(int a, int b){ cout << "两数之积是" << a * b << endl; } void add(float a, float b){ cout << "两数之和是" << a + b << endl; } void mul(float a, float b){ cout << "两数之积是" << a * b << endl; } void add(int a, float b){ cout << "两数之和是" << a + b << endl; } void mul(int a, float b){ cout << "两数之积是" << a * b << endl; } void add(float a, int b){ cout << "两数之和是" << a + b << endl; } void mul(float a, int b){ cout << "两数之积是" << a * b << endl; } int main() { float a, b; int c, d; cin >> a >> b; c = a; d = b; if ( a == c ) if ( b == d ) { add(c, d); mul(c, d); } else { add(c, b); mul(c, b); } else { if ( b == d ) { add(a, d); mul(a, d); } else { add(a, b); mul(a, b); } } return 0; }
实验内容二:
#include <iostream> using namespace std; template<typename T> void add(T a, T b) { cout << "两数之和是" << a + b << endl; } template<typename U> void mul(U a, U b) { cout << "两数之积是" << a * b << endl; } int main() { float a, b; cin >> a >> b; add(a, b); mul(a, b); return 0; }
结果与“实验内容一”相同。
实验内容三:
#include <iostream> using namespace std; template <class T, class U> class Add { public: Add(T a, U b) { cout << "两数之和是" << a + b << endl; } }; template <class V, class W> class Mul { public: Mul(V a, W b) { cout << "两数之积是" << a * b << endl; } }; int main() { float a, b; int c, d; cin >> a >> b; c = a; d = b; if (a == c) if (b == d) { Add<int, int> m(c, d); Mul<int, int> n(c, d); } else { Add<int, float> m(c, b); Mul<int, float> n(c, b); } else { if (b == d) { Add<float, int> m(a, d); Mul<float, int> n(a, d); } else { Add<float, float> m(a, b); Mul<float, float> n(a, b); } } return 0; }
结果与“实验内容一”相同。
由于模板类在多种编译环境下不支持声明与定义分开,其他程序员也不建议这样子做。所以实验内容三的模板类分多文件处理,只分了头文件。头文件中包含了类的声明与定义。
main.cpp
#include <iostream> #include "Add.h" #include "Mul.h" using namespace std; int main() { float a, b; int c, d; cin >> a >> b; c = a; d = b; if (a == c) if (b == d) { Add<int, int> m(c, d); Mul<int, int> n(c, d); } else { Add<int, float> m(c, b); Mul<int, float> n(c, b); } else { if (b == d) { Add<float, int> m(a, d); Mul<float, int> n(a, d); } else { Add<float, float> m(a, b); Mul<float, float> n(a, b); } } return 0; }Add.h
#pragma once #include <iostream> template <class T, class U> class Add { public: Add(T a, U b) { cout << "两数之和是" << a + b << endl; } };Mul.h
#pragma once #include <iostream> template <class V, class W> class Mul { public: Mul(V a, W b) { cout << "两数之积是" << a * b << endl; } };运行结果也与实验内容一相同。
相关文章推荐
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》第一次实验:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 数据结构 实验一:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验1.2:VC编程环境灵活应用
- 《数据结构》第一次实验:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 《数据结构》实验1.1:VC编程环境灵活应用
- 《数据结构》实验1.3:VC编程环境灵活应用
- 《数据结构》实验一:VC编程环境灵活应用
- 实验一:VC编程环境灵活应用—>实验心得--信管1133-09
- 实验一 VC编程环境的灵活应用