一..实验目的
复习巩固VC编程环境的使用,以及C++模板设计。
1.回顾并掌握VC单文件结构程序设计过程。
2.回顾并掌握VC多文件工程设计过程
3.掌握VC程序调试过程。
4.回顾C++模板和模板的程序设计。
二.实验时间
第二周第二次课。2个学时。
三.实验内容
1. 设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。要求如下:
1)设计函数来计算“和”和“积”,在主函数中调用,并能考虑重载函数,使整数和小数均能计算。
2)分别使用单步调试和断点调试来调试程序。并多次运行力求熟练调试方法。
#include<iostream> using namespace std; void Q(int a,int b) { cout<<"两数相加等于"<<a+b<<endl; cout<<"两数相乘等于"<<a*b<<endl; } void Q(int a,float b) { cout<<"两数相加等于"<<a+b<<endl; cout<<"两数相乘等于"<<a*b<<endl; } void Q(float a,float b) { cout<<"两数相加等于"<<a+b<<endl; cout<<"两数相乘等于"<<a*b<<endl; } void Q(float a,int b) { cout<<"两数相加等于"<<a+b<<endl; cout<<"两数相乘等于"<<a*b<<endl; } int main() { float a,b; cin >> a >> b; Q(a,b); return 0; }
实验二
#include<iostream> using namespace std; template<class Q> Q Add(Q q1,Q q2) { return q1+q2; } template<class Q> Q Multiply(Q q1,Q q2) { return q1*q2; } int main() { cout<<"请输入两个数字"<<endl; float a,b; cin>>a>>b; cout<<"两个数字相加等于"<<Add(a,b)<<endl; cout<<"两个数字相乘等于"<<Multiply(a,b)<<endl; return 0; }3.使用一个类来实现上述功能。要求:
1)使用类模板
2)使用多文件:类的声明有头文件中;类的函数定义一个源文件中,在主程序文件中设计主函数程序,在实例化输出结果。
头文件
lin,h
lin.h #ifndef lin_H #define lin_H #include <iostream> template<typename A,typename B> class lin { public: lin(A a,B b); }; template<typename A,typename B> lin<A,B>::lin(A a,B b) { cout<<"a+b="<<a+b<<endl; cout<<"a*b="<<a*b<<endl; }; #endif
main.cpp
main.cpp #include <iostream> using namespace std; #include"lin.h" int main() { cout<<"请输入两个数字"<<endl; float a,b; cin>>a>>b; lin<float,float>(a,b); }
总结:
上学期没学好C++,所以实验做得很吃力。还有好多不明白的地方,希望在之后可以完全理解。
还有现在才完成全部,在此说声抱歉!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。