《C语言程序设计》一 2.5 案例学习——华氏温度与摄氏温度的转换

简介: 本节书摘来自华章出版社《C语言程序设计》一 书中的第2章,第2.5节,作者:赵宏 陈旭东 马迪芳,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.5 案例学习——华氏温度与摄氏温度的转换

【例2-7】 你的一个朋友要去某地旅游,当地天气预报是用华氏温度报告的,请你编写程序,帮助你的朋友进行温度的转换,计算并输出对应的摄氏温度。
1.问题分析
1)确定预期的输出。问题中有“计算并输出对应的摄氏温度”,明确了输出项为摄氏温度celsius。
2)确定输入项。本需求中,输入项是华氏温度fahrenheit。
3)列出输入与输出关系的公式。本例中由华氏温度计算摄氏温度的公式为celsius = 5/9(fahrenheit-32)。
4)进行手工计算。设f值为80,对应的c值应为26.67。
2.算法设计
本例中只需要顶层算法:

输入一个华氏温度
用公式celsius = 5 / 9(fahrenheit - 32)计算对应的摄氏温度

输出摄氏温度值

3.代码编写

#include <stdio.h>

int main()
{  
    float  celsius, fahrenheit;           /*变量定义*/
    
    printf("请输入一个华氏温度:\n");       /*必要的提示信息*/
    scanf("%f", &fahrenheit);               /*键盘输入需要转换的华氏温度值*/
    
    celsius = 5 / 9 *(fahrenheit - 32);     /*计算对应的摄氏温度值*/
    
    printf("华氏温度:%.2f,对应的摄氏温度为%.2f\n", fahrenheit, celsius);  /*输出结果*/

    return 0;
}

4.测试与调试
运行该程序,结果为:

请输入一个华氏温度:
80

华氏温度:80.00,对应的摄氏温度为0

程序运行结果与手工计算结果不同,对程序进行测试,发现不管输入数据是多少,结果都为0。考虑到在C语言中5/9为0,所以将转换的数学模型变换为celsius = 5 *(fahrenheit-32)/9。修改后的程序为:

/*程序名:prg2-7.c*/
/*功能:输入一个华氏温度,输出对应摄氏温度*/
#include <stdio.h>

int main()
{    
    float  celsius, fahrenheit;             /*变量定义*/
    
    printf("请输入一个华氏温度:\n");       /*必要的提示信息*/
    scanf("%f", &fahrenheit);               /*键盘输入需要转换的华氏温度值*/
    
    celsius = 5 *( fahrenheit - 32)/ 9;     /*计算对应的摄氏温度值*/
    
    printf("华氏温度:%.2f,对应的摄氏温度为%.2f\n", fahrenheit, celsius);  /*输出结果*/

    return 0;
}

运行该程序,结果为:

请输入一个华氏温度:
80
华氏温度:80.00,对应的摄氏温度为26.67
相关文章
|
1月前
|
存储 编译器 C语言
初识C语言——详细入门(系统性学习day4)
初识C语言——详细入门(系统性学习day4)
|
1月前
|
C语言
C语言模块化程序设计
C语言模块化程序设计
21 0
|
1月前
|
C语言
【C语言】循环结构程序设计(第二部分 -- 习题讲解)
【C语言】循环结构程序设计(第二部分 -- 习题讲解)
|
1月前
|
编译器 程序员 开发工具
c语言从入门到实战——在系统学习C语言之前所需要了解的知识
C语言是一种通用的、过程式的计算机编程语言,支持结构化编程、词汇变量作用域和递归等功能,其设计提供了低级别的存取权限,并且要求程序员管理所有的内存细节。C语言的基本构成包括数据类型(如整型、浮点型、字符型等)、运算符(如算术运算符、关系运算符、逻辑运算符等)、控制结构(如顺序结构、选择结构、循环结构等)以及函数等。此外,C语言还提供了指针的概念,这是其他许多编程语言所不具备的。指针是一个变量,其值为另一个变量的地址,通过指针可以间接访问和操作内存中的数据。C语言也支持数组、结构体、联合体等复合数据类型,以及文件操作、动态内存分配等高级功能。
51 0
|
1月前
|
存储 C语言
通俗易懂的学习C语言中输入一组数并找出其最大值
通俗易懂的学习C语言中输入一组数并找出其最大值
C4.
|
1月前
|
程序员 C语言
C语言循环结构与程序设计
C语言循环结构与程序设计
C4.
23 0
|
1月前
|
存储 文件存储 C语言
《C语言程序设计》课程设计 -- 火车票票务管理系统
《C语言程序设计》课程设计 -- 火车票票务管理系统
23 1
|
1月前
|
存储 C语言
C语言顺序结构程序设计
C语言顺序结构程序设计
21 0
|
1月前
|
存储 C语言
C语言的顺序程序设计
C语言的顺序程序设计
11 2
|
1月前
|
存储 C语言
C语言的顺序程序设计
C语言的顺序程序设计
15 0