上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.2.6 顺序结构程序设计举例
所谓顺序结构就是按照程序编写的先后顺序来执行,程序语句中前面的先执行,后面的后执行。
【例3.6】 华氏温度转换成对应的摄氏温度。
#include <iostream> using namespace std; int main () {float c,f; cout<<"请输入一个华氏温度:"; cin>>f; c=(5.0/9.0)*(f-32); //5和9要用实型表示,否则5/9值为0 cout<<"摄氏温度为:"<<c<<endl; return 0; };
运行程序,程序的输出结果如下:
【例3.7】求一元二次方程式ax2+bx+c=0的根。a, b, c的值在运行时由键盘输入,它们的值满足b2-4ac≥0。
根据求x1,x2的算法。它可以编写出以下C++程序:
#include <iostream> #include<cmath> //由于程序要用到数学函数sqrt,故应包含头文件cmath using namespace std; int main( ) {float a,b,c,x1,x2; cin>>a>>b>>c; x1=(-b+sqrt(b*b-4*a*c))/(2*a); x2=(-b-sqrt(b*b-4*a*c))/(2*a); cout<<"x1="<<x1<<endl; cout<<"x2="<<x2<<endl; return 0; }
程序运行结果如下:
【例3.8】 输入三角形三边长,求三角形面积和周长。
程序分析:从键盘上随机输入的三角形三边长要符合三角形两边之和大于第三边,两边之差小于第三边的原理,在这里是顺序结构的程序设计,所以就需要练习者口算输入,该程序N-S框图如图3.1所示;如果需要机器来自行判断,该题目将在3.3.2节中再次讲解。
图3.1 N-S框图
已知三边长a,b,c,求三角形面积的公式area为,其中,s=(a+b+c)/2
编程如下:
#include <iostream> #include <cmath> using namespace std; void main() { float a,b,c,s,area,m; /* 用a,b,c来表示三角形的三边长,用area 表示面积,m表示周长*/ cout<<"input a,b,c"; cin>>a>>b>>c; s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c)); m=a+b+c; cout<<"area="<<area<<endl<<"m="<<m<<endl; }
运行程序,当输入5,6,7↙时,输出结果为:
3.3 选择控制语句及实例
根据某种条件的成立与否而采用不同的程序段进行处理的程序结构称为选择结构。通常选择结构有两个分支,条件为“真”,执行一程序段,否则执行另一程序段。有时,两个分支还不能完全描述实际问题。例如,判断学生成绩属于哪个等级(A:90~100,B:80~89,C:60~79,D:0~59)根据学生成绩的条件,分成4个分支,分别处理各等级情况。这样的程序结构称为多分支选择结构。选择控制语句主要有if语句和switch语句。其中if语句主要有四种形式:简单if语句、if-else语句和if-else if 语句、if语句嵌套。