【项目任务】
输入三个整数,求它们的平均数。
【设计思路】
首先,定义三个整型变量a、b、c和一个实型变量aver(表示平均数);然后,通过键盘任意输入变量a、b、c的值;最后,计算三个整数的平均数,并输出结果,即aver的值。
【程序代码】
#include <stdio.h>
main()
{
int a,b,c;
float aver;
printf("Please input a,b,c:");
scanf("%d,%d,%d",&a,&b,&c);
aver=(a+b+c)/3.0;
printf("aver=%.2f\n",aver);
}
【运行结果】
Please input a,b,c:1,3,5
aver=3.00
【知识拓展】
1.printf( )和scanf( )分别用于格式输出和输入,其格式分别为printf(格式控制,输出列表),scanf(格式控制,地址列表)。
2.aver的数据类型应该为实型。另外,思考将aver=(a+b+c)/3.0;改写成aver=(a+b+c)/3;后,会有什么影响。
【项目任务】
输入一个华氏温度,要求输出其对应的摄氏温度。公式为:
C=(5/9)(F-32)
输出结果要有文字说明,取2位小数。
【设计思路】
先定义两个变量f和c,变量f用来存放输入的华氏温度的值,变量c用来存放转换好的摄氏温度的值。通过华氏温度与摄氏温度的转换关系公式C=(5/9)(F-32)计算,并将转换后的摄氏温度值输出。
【程序代码】
#include <stdio.h>
main()
{
float c,f;
printf("请输入一个华氏温度:\n");
scanf("%f",&f);
c=(5.0/9.0)*(f-32); /*注意5和9要用实型表示,否则5/9的值为0*/
printf("摄氏温度为:%5.2f\n",c);
}
【运行结果】
请输入一个华氏温度:
78
摄氏温度为:25.56
【知识拓展】
1.用运算符和括号将操作数连接起来的,并且符合C语言语法规则的式子称为算术表达式。在表达式求值时,应按运算符的优先级高低依次执行,其中括号在所有运算符中级别最高。
2.程序中%5.2f用来指定输出的数据共占5列,其中包含2位小数。通常在对单精度浮点型数据进行输出时,如果要指定输出的有效位数,可使用%m.nfh形式,它代表输出的数据共占m列,其中包含n位小数。
【项目任务】
输入三角形的三条边长,求三角形的面积(假定输入的三条边能构成三角形)。
【设计思路】
三角形的面积计算公式用海伦公式:
area=
其中a、b、c为三角形的边长,s=是三角形的半周长,area为三角形的面积。
分析:
(1)定义需要使用的变量a、b、c、s和area。
(2)确定三角形的边长,即变量a、b、c的值(直接赋值或从键盘上输入)。
(3)计算三角形的半周长,即变量s的值。
(4)计算三角形的面积,即变量area的值。
(5)输出变量area,显示计算结果。
【程序代码】
#include <stdio.h>
#include <math.h>
main()
{
float a,b,c,s,area;
printf("Please input a,b,c:");
scanf("%f,%f,%f",&a,&b,&c);
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%.2f\n",area);
}
【运行结果】
第一次运行:
Please input a,b,c:4,5,6
area=9.92
第二次运行:
Please input a,b,c:6,8,10
area=24.00
【知识拓展】
1.程序中的sqrt( )是求平方根的函数,由于要调用数字函数库中的函数,必须在程序的开始处增加一条#include命令,将头文件math.h包含到程序中来。
2.思考:s=(a+b+c)/2;是否要改写成s=(a+b+c)/2.0;。