c语言的输入以及 为常量定义名字 define _CRT_SECURE_NO_WARNINGS#includestdio.h#defineSCALE_FACTOR(5.0f/9.0f)#defineFREEZING_PT32intmain(void){floatfahrenheit;//代码即注释printf(Enter Fahreneit temparature:);scanf(%f,fahrenheit);floatcelsiusSCALE_FACTOR*(fahrenheit-FREEZING_PT);//魔法数字printf(Celsius equivalent: %.1f\n,celsius);return0;}这是一个华氏温度转摄氏温度的 C 语言入门程序整体逻辑是用户输入一个华氏度数值程序自动计算并输出对应的摄氏度数值。第 1 行#define_CRT_SECURE_NO_WARNINGS这是 Visual Studio 编译器的专属配置。VS 默认认为scanf这类传统 C 函数 “不安全”不加这行代码编译会直接报错。加上它之后就能正常使用 C 语言标准的输入输出函数了。**第2行**c#includestdio.h引入标准输入输出头文件。 stdio.h 里封装了printf打印文字、scanf读取输入这些基础功能。不写这一行程序就不认识printf和scanf无法运行**第4~5行**c#defineSCALE_FACTOR(5.0f/9.0f)#defineFREEZING_PT32宏定义可以理解成 “给固定数值起个好记的名字”SCALE_FACTOR 对应换算系数 5÷9是华氏转摄氏的核心比例FREEZING_PT 对应 32代表水的冰点0 摄氏度 32 华氏度好处代码可读性更强看到名字就知道数字的含义避免 “裸数字”也叫魔法数字后续要改数值只改宏定义这一处就行补充5.0f 里的f表示这是单精度浮点数保证除法是小数运算不会出现整数除法的错误。第 7 行intmain(void){ 定义变量。 声明了一个叫fahrenheit的float类型变量浮点型用来存带小数的数字专门用来存放用户输入的华氏温度。// 后面是注释写给人看的编译器会直接忽略不影响程序运行。**第9行**cprintf(Enter Fahrenheit temparature:);在控制台打印提示文字。执行后屏幕上会显示双引号里的内容Enter Fahrenheit temparature:用来提示用户该输入数字了。第 10 行scanf(%f,fahrenheit);%f 是格式控制符告诉程序 “我要读取一个浮点数小数”fahrenheit 里的是取地址符意思是把用户输入的数值存到fahrenheit这个变量对应的内存里。scanf必须拿到地址才能把值存进去这是入门很容易忘的点。第 12 行floatcelsiusSCALE_FACTOR*(fahrenheit-FREEZING_PT);//魔法数字核心计算逻辑执行华氏度转摄氏度的公式。数学公式摄氏度 (5/9) × (华氏度 - 32)代码里用宏替换后等价于celsius (5.0f/9.0f) * (fahrenheit - 32)同时定义了变量celsius把计算结果直接存进去。第 14 行printf(Celsius equivalent: %.1f\n,celsius);输出计算结果。%.1f 表示以浮点数格式输出保留 1 位小数\n 是换行符输出完结果后光标自动换到下一行最终效果类似Celsius equivalent: 25.0第 15 行return0;主函数返回值。返回整数 0 给操作系统表示程序正常执行、成功结束。如果返回非 0 数字一般代表程序异常退出程序完整执行流程屏幕弹出提示文字让用户输入华氏温度等待用户输入数字并存入变量按照公式计算出摄氏温度把结果打印到屏幕上程序正常结束

相关新闻

最新新闻

第六次作业Linux环境变量

第六次作业Linux环境变量

Linux环境变量 - 课堂笔记总结1. 什么是环境变量定义:在程序外部设置的变量,由名称/值对组成(VARIABLE_NAMEvalue),用于存储shell会话和工作环境的信息。分类: 全局环境变量:对shell会话和所有子…

2026/7/7 13:02:35
网盘下载加速终极方案:8大平台直链解析工具完全指南

网盘下载加速终极方案:8大平台直链解析工具完全指南

网盘下载加速终极方案:8大平台直链解析工具完全指南 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云…

2026/7/7 13:02:35
STM32F429与EM3080-W的条码识别系统硬件设计与优化

STM32F429与EM3080-W的条码识别系统硬件设计与优化

1. EM3080-W与STM32F429ZI硬件协同设计解析在工业级条形码识别系统中,EM3080-W图像传感器与STM32F429ZI微控制器的组合堪称黄金搭档。EM3080-W采用全局快门技术,最高支持1280800分辨率,其专为条码识别优化的光学特性使其在高速移动物体捕捉场…

2026/7/7 13:02:35
高压隔离设计:ISOM8710与STM32F205RB的实战指南

高压隔离设计:ISOM8710与STM32F205RB的实战指南

1. 高压隔离设计的关键挑战与选型思路 在工业控制、医疗设备和新能源系统中,高压隔离是确保人员安全和信号完整性的核心技术。传统光耦方案存在老化效应明显、传输速率受限等问题,而ISOM8710作为TI推出的光耦仿真器,在3750VRMS隔离等级下仍能…

2026/7/7 13:02:35
USB HID Client:如何快速将Android手机变成免驱动键盘鼠标的终极指南

USB HID Client:如何快速将Android手机变成免驱动键盘鼠标的终极指南

USB HID Client:如何快速将Android手机变成免驱动键盘鼠标的终极指南 【免费下载链接】android-hid-client Android app that allows you to use your phone as a keyboard and mouse WITHOUT any software on the other end (Requires root) 项目地址: https://g…

2026/7/7 13:02:35
传统产品经理转型AI产品,你需要掌握的5大核心能力与学习路径

传统产品经理转型AI产品,你需要掌握的5大核心能力与学习路径

本文针对传统产品经理转型AI产品经理的常见误区,指出“学会用ChatGPT”并不等同于懂AI产品。文章强调AI产品经理需要重建认知框架,并提出AI产品经理最重要的能力是接受不确定性。核心内容围绕AI技术基础、AI产品设计、数据驱动能力、AI商业思维以及跨团队…

2026/7/7 12:57:34

月新闻