上机内容:输出三角形的面积
上机目的:熟悉循环结构
我的程序:
/*
* 程序的版权和版本声明部分:
* Copyright (c) 2011, 烟台大学计算机学院
* All rights reserved.
* 文件名称:2.cpp
* 作 者:陆文飞
* 完成日期:2012 年 9 月 15 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:无
* 问题描述:熟悉C++循环结构
* 程序输出:看运行结果
* 问题分析:略
* 算法设计:略
*/
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
float a,b,c,s,t;
while(true)
{
cout<<"请输入三角形的三条边:"<<endl;
cin>>a>>b>>c;
if(a <= 0 || b <= 0 || c <= 0)
{
cout<<"No Triangle!请从新输入,";
continue;
}
else if(a + b <= c || a + c <= b || b + c <= a)
{
cout<<"No Triangle!请从新输入,";
continue;
}
else
{
t = (a + b + c)/2;
s = sqrt(t*(t-a)*(t-b)*(t-c));
cout<<"三角形的面积为"<<s<<endl;
return 0;
}
}
}
运行结果:
心得体会:
终于可以运行了,一直都是用else if一直向下写,每次运行第二条时就跳出来了,翻课本时才发现if只有两个分支结构———郁闷,不知道会不会被鄙视。。。。
知识点总结:
if语句中只有两个分支结构可供选择,所以选择了用while,continue.我感觉就是做题前应该想清楚该用哪个循环结构,然后再做题,这样就简单多了。还有就是
用到数学符号的时候要包含<math.h>,就这些了!