实验目的
1、掌握C++中的基本数据类型的算术运算和逻辑运算;
2、理解并掌握C++中运算符的优先级;
3、掌握简单的类型转换方法;
4、掌握C++的math头文件中常用的几种数学运算;
5、了解visual studio的debug功能,并使用debug功能完成单步执行程序、设置断点和观察变量值等操作。
实验内容
实验一
给出系数a b c,求方程ax²+bx+c=0的解。a、b、c是浮点数。要求在程序中包含方程是一次方程还是二次方程的判断,对于解的个数不同的情况,也要分情况输出。
代码
#include <iostream>
#include <cmath>
#define E 0.01
using namespace std;
int main()
{
float a,b,c,delta,x1,x2;
cout << "请分别输入a,b,c" << endl;
cin >> a >> b >> c;
if(a < E && a > -E)
cout << "一次方程" << endl;
else
cout << "二次方程" << endl;
delta = b*b - 4.0*a*c;
if(delta < 0)
cout << "方程无解" << endl;
else if(delta > -E && delta < E)
{
cout << "有相同解" << endl;
cout << "该解值为" << x1 <<endl;
}
else
x1 = (-b+sqrt(delta))/(2*a);
x2 = (-b-sqrt(delta))/(2*a);
cout << "有不同解" << endl;
cout << "x1 = " << x1 << ", x2 = " << x2 << endl;
return 0;
}
运行结果
实验二
三角型的面积有很多种求法,有一种求法叫海伦公式,是在已知三角形三边长的条件下求解三角形面积的方法。用海伦公式求解三角形面积。
代码
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
float a,b,c,p,s;
cout << "Input a,b,c" << endl;
cin >> a >> b >> c;
p = (1.0/2)*(a+b+c);
s = sqrt((p*(p-a)*(p-b)*(p-c)));
cout << "S = " << s << endl;
return 0;
}
运行结果
实验三
调试过程如图所示,先在合适的位置设置断点,再调出变量观察窗口Watches,在Code:blocks上方控制调试步骤的进行。
总结
这次实验完成了求解一元二次方程组及用海伦公式计算三角形面积的实验,同时练习使用Code:blocks进行调试。
通过这次实验,进一步学习了解了C++的程序结构、基础知识(如输入输出的规范);同时学会了在C语言的基础上使用C++进行编程,完成简单的数据处理运算的程序。C++和C语言一脉相承,在面向过程编程的过程中语法通用;面向对象的思想,与Python、Java等语言大同小异。