首页 百科知识 顺序结构程序设计举例

顺序结构程序设计举例

时间:2024-10-03 百科知识 版权反馈
【摘要】:为简单起见,设输入的三边长a,b,c能构成三角形。#include<math.h> /*由于要调用数学函数库中的函数,所以必须用#include将数学函数库的头文件math.h包含进程序*/程序的作用是将大写字母A转化成小写字母a。‘A’的ASCII码为65,而 ‘a’为97。从ASCII代码表中可以看出,每一个大写字母比它相应的小写字母的ASCII码小32,C语言允许字符数据直接进行算术运算,即 ‘A’+32会得到整数97,即 ‘a’的ASCII码。

【例4.6】输入三角形的三边长,求三角形面积。

为简单起见,设输入的三边长a,b,c能构成三角形。求三角形面积的公式为:s=sqrt (p*(p-a)*(p-b)*(p-c)),其中p=(a+b+c)/2,sqrt为求平均。

据此编写程序如下:

#include<math.h> /*由于要调用数学函数库中的函数,所以必须用#include将数学函数库的头文件math.h包含进程序*/

main()

{floata,b,c,s,area;

scanf("%f%f%f",&a,&b,&c);

s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c)); /*sqrt()求平方根的函数*/

printf("a=%7.2f,b=%7.2f,c=%7.2f\n",a,b,c);

printf("area=%8.3f\n",area);

a=3.00,b=4.00,c=6.00

area=5.333

【例4.7】从键盘输入一个大写字母,要求改用小写字母输出。

#include<stdio.h>

main()

{charc1,c2;

c1=getchar(); /*输入大写字符*/

printf("%c,%d\n",c1,c1);

c2=c1+32; /*转变为小写*/

printf("%c,%d\n",c2,c2); /*输出*/

输入:A

输出:A,65

a,97

程序的作用是将大写字母A转化成小写字母a。‘A’的ASCII码为65,而 ‘a’为97。从ASCII代码表中可以看出,每一个大写字母比它相应的小写字母的ASCII码小32,C语言允许字符数据直接进行算术运算,即 ‘A’+32会得到整数97,即 ‘a’的ASCII码。

【例4.8】求ax2+bx+c=0方程的根。a,b,c由键盘输入,设b2-4ac>0。

一元二次方程的根为:

x1=p+q,x2=p-q

程序如下:

#include<math.h>

main()

{floata,b,c,disc,p,q,x1,x2;

scanf("%f%f%f",&a,&b,&c); /*输入a,b,c*/

disc=b*b-4*a*c; /*计算disc的值/

p=-b/(2*a);

q=sqrt(disc)/(2*a);

x1=p+q;x2=p-q; /*计算2个方程的根*/

printf("x1=%f\nx2=%f\n",x1,x2); /*输出*/

132

x1=-1.000000

x2=-2.000000

【例4.9】输入任意三个整数,求它们的和及平均值。

/*功能:设计一个顺序结构程序,求三个整数的和及平均值。*/

main()

{intnum1,num2,num3,sum;

floataver;

printf("Pleaseinputthreenumbers:");

scanf("%d,%d,%d",&num1,&num2,&num3);/*输入三个整数*/

sum=num1+num2+num3; /*求累计和*/

aver=sum/3.0; /*求平均值*/

printf("num1=%d,num2=%d,num3=%d\n",num1,num2,num3);

printf("sum=%d,aver=%7.2f\n",sum,aver);

思考题:能否将 “aver=sum/3.0;”中的 “3.0”改为 “3”?

在顺序结构程序中,一般包括以下几个部分:

1)程序开头的编译预处理命令。

在程序中要使用标准函数 (又称库函数),除printf()和scanf()外,其他都必须使用编译预处理命令,将相应的头文件包含进来。

2)顺序结构程序的函数体中,是完成具体功能的各个语句和运算,主要包括:

变量类型的说明。

②提供数据语句。

③运算部分。

④输出部分。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈