c语言中%If的意思
%lf代表按双精度输入或输出。
格式占位符(%)是在C/C++语言中格式输入函数,如scanf、printf等函数中使用。其意义就是起到格式占位的意思,表示在该位置有输入或者输出。
扩展资料:
双精度浮点数(double)是计算机使用的一种数据类型,使用 64 位(8字节) 来存储一个浮点数。 它可以表示十进制的15或16位有效数字,其可以表示的数字的绝对值范围大约是:-1.7E-308~1.7E+308
单精度浮点数(float)与双精度浮点数(double)的区别如下:
1,在内存中占有的字节数不同
单精度浮点数在机内占4个字节
双精度浮点数在机内占8个字节
2,有效数字位数不同
单精度浮点数有效数字7位
双精度浮点数有效数字16位
3,所能表示数的范围不同
单精度浮点的表示范围:-3.40E+38 ~ +3.40E+38
双精度浮点的表示范围:-1.79E+308 ~ +1.79E+308
4,在程序中处理速度不同
一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快。
参考资料来源:百度百科-双精度浮点数
if(表达式)表达式的值为1后面的程序执行,若为0则不执行。
比如if(1>2)其中1>2是个逻辑判断,1<2当然是假,所以就是false(false为0,true为1),但cpu不认false只认0和1,所以1《2的逻辑返回值就是0,所以if(0)等价于if(1>2),其他的同理。
还有一种就是if(5),c语言默认if(判别的返回值)是0就不执行,不是0就是执行!所以if(5)等同于if(1)也就是说if(表达式结果为0(逻辑判断只返回0和1,但若是某个数值则不为0则当做是1))。
所以f(0)等价于f(1<2)等价于f((1+4)<9),f(!1)等,不执行。
if(1)相当if(5),if(1<2);
int a=0;
if(1)执行;
a=3;结果a=3;
if(0)不执行跳过;
a=4;
else a=5;执行a=5;
扩展资料:
C语句常用语句:
一,表达式语句
表达式语句由表达式加上分号“;”组成。
其一般形式为:表达式;执行表达式语句就是计算表达式的值。
例如: x=y+z;a=520;赋值语句;
y+z;加法运算语句,但计算结果不能保留,无实际意义;
i++; 自增1语句,i值增1。
i++; 是先运算i后再加1。
++i; 是先把i值增1后运算。
二,函数调用语句
由函数名、实际参数加上分号“;”组成。
其一般形式为: 函数名(实际参数表) ;
执行函数语句就是调用函数体并把实际参数赋予函数定义中的形式参数,然后执行被调函数体中的语句,求取函数值。
调用库函数,输出字符串。
例如:
printf(a,b,c); /*调用名为"printf"的函数*/
三,控制语句
控制语句用于控制程序的流程, 以实现程序的各种结构方式。
它们由特定的语句定义符组成。C语言有九种控制语句。 可分成以下三类:
(1). 条件判断语句
if语句、switch语句;
(2) .循环执行语句
do while语句、while语句、for语句;
(3). 转向语句
break语句、goto语句(此语句尽量少用,因为这不利结构化程序设计,滥用它会使程序流程无规律、可读性差)、continue语句、return语句。
条件判断
int x,y;
if(x>y)
printf("x,\n");
else
printf("y,\n");
四,复合语句
把多个语句用括号{}括起来组成的一个语句称复合语句。 在程序中应把复合语句看成是单条语句,而不是多条语句,例如
{
x=y+z;
a=b+c;
printf(“%d%d”,x,a);
}
是一条复合语句。复合语句内的各条语句都必须以分号“;”结尾;此外,在括号“}”外不能加分号。
五,空语句
只有分号“;”组成的语句称为空语句。空语句是什么也不执行的语句。在程序中空语句可用来作空循环体。
例如 while(getchar()!='\n'); 本语句的功能是,只要从键盘输入的字符不是回车则重新输入。这里的循环体为空语句。
%lf在输入、输出双精度型变量(即double型)时用到。
例如:
double a;
scanf("%lf",&a);
printf("%lf",a);
具体百度一下pirntf( );这个函数。