scanf()的的返回值
来源:互联网 发布:在单片机中TXD和RXD 编辑:程序博客网 时间:2024/05/01 11:54
在C语言中scanf()函数主要是用来读入函数的值,比如语句scanf("%d",&num),scanf函数读入一个值,并把它保存到num中。scanf()函数成功读取一个项目,它就会返回值1;如果它没有读取任何项目(当它期望一个数字而你键入的却是了一个非数字的字符或者字符串就会发生这种情况),scanf()聚会返回值0。当它检测到“文件结尾”(end of file)时,它就返回EOF(EOF是文件stdio.h中定义的特殊值)。一般#define指令把EOF的值定义为-1。在while语句中,我们可以利用scanf()的返回值来检测和处理不匹配的输入。下面我用一个简单的C语言例子来说明一下这个问题。
编写一个程序,该程序要求用户输入一个华氏温度,程序以double类型读入温度值,并将它作为一个参数传递给用户提供的函数Temperatures()。该函数将计算相应的摄氏温度和绝对温度,并显示这三种温度。下面是华氏温度转换成摄氏温度的方程:
celsius=1.8*fahrenheit+32.0
下面是摄氏温度转换成绝对温度的方程:
kelvin=celsius+273.16
Temperatures()函数用const来创建转换里3个常量的符号。main()函数将使用循环来允许用户重复键入温度,当用户输入 q 或其他非数字值时,循环结束。代码如下:
#include <stdio.h>
void temperatures(double fahrenheit);
int main(void)
{
double temperatures_value;
int status;
printf("Please enter a temperatures value ");
printf("(q to quit):");
status=scanf("%lf",&temperatures_value);
while(status==1)
{
temperatures(temperatures_value);
printf("Please enter next temperatures_value(q to quit):");
status=scanf("%lf",&temperatures_value);
}
return0;
}
void temperatures(double fahrenheit)
{
constdouble T1=1.8;
constdouble T2=32.0;
constdouble T3=273.16;
double celsius;
double kelvin;
celsius=T1*fahrenheit+T2;
kelvin=celsius+T3;
printf("%lf ",celsius);
printf("%lf\n",kelvin);
}
- scanf的返回值
- scanf的返回值
- scanf的返回值
- scanf的返回值
- scanf()的的返回值
- 关于scanf的返回值
- 关于scanf的返回值
- 关于scanf的返回值
- 关于scanf的返回值
- scanf的返回值探究
- scanf( )函数的返回值
- Scanf函数的返回值
- scanf函数的返回值
- scanf() 的返回值
- scanf函数的返回值
- 关于检查scanf的返回值
- scanf和cin的返回值
- scanf,printf函数的返回值
- 算法导论快速排序python实现
- Animation & Property Animation 使用
- 图片测试一下
- 蓝牙的技术特点
- OC初识之简单的OC程序
- scanf()的的返回值
- Centos6.3安装配置svn(转载自博客园)
- Trapping Rain Water
- 2015-03-10数据加载、存储与文件格式(3)
- Windows7+BluetoothSDK如何配置
- hdu 1241 dfs
- MD5算法使用简述
- js小计
- 黑马程序员——【C语言】用三种方式交换两个变量的值