目录
2.1.6浮点数
一.浮点数
1.浮点数
(1.)两个整数的运算的结果只能是整数
(2.)10和10.0在C中是两个数
2.浮点数定义
带小数点的数值。是计算机内部表达非整数(包含分数的无理数)的一种方式。另一种方式叫做定点数,不过c语言中不会遇到定点数。人们借用浮点数这个词表达所有的带小数点的数。
3.浮点数和整数计算
当浮点数和整数放到一起运算时,C会将整数转换成浮点数,然后进行浮点数的运算。
二.double
1.inch是定义为int类型的变量,如果把int换成double,就把它改为double类型的浮点数变量了。
2.double的意思是“双”,它本来是“双精度浮点数”的第一个单词,用来表示浮点数类型。除了double,还有float表示单精度浮点数。
3.double 对应的输入为%lf
#include <stdio.h>
int main()
{
printf("请分别输入身高的英尺和英寸,""如输入\"57\表示5英尺7英寸;");
double foot;
double inch;
scanf("%lf%lf",&foot,&inch);
printf("身高是%f米。\n",((foot+inch/12)*0.3048));
return 0;
}
三.数据类型
1.整数
- int
- printf(“%d”,...)
- scanf(“%d”,...)
2.带小数点的数
- double
- printf(“%f”,...)
- scanf(“%lf”,...)
2.2.1表达式
一.表达式
1.表达式定义
一个表达式是一系列运算符的算子的组合,用来计算一个值
二.运算符
1.运算符的定义
是指进行运算的动作,比如加法运算符“+”,减法运算符“-”。
2.算子的定义
是指参与运算的值。这个值可能是常数,也可能是变量,还可能是一个方法的返回值
计算时间差
#include <stdio.h>
int main()
{
int hour1,minute1;
int hour2,minute2;
scanf("%d,%d",&hour1,&minute1);
scanf("%d,%d",&hour1,&minute2);
int t1=hour1*60+minute1;
int t2=hour2*60+minute2;
printf("时间差为%d时%d分",(t1-t2)/60,(t1-t2)%60);
return 0;
}
2.2.2运算符优先级
求两个数的平均值
#include <stdio.h>
int main()
{
int a,b;
scanf("%d%d",&a,&b);
double c=(a+b)/2.0;
printf("%d和%d的平均值=%f\n",a,b,c);
return 0;
}
一.运算符优先级
1.赋值运算符
(1.)赋值也是运算,也是有结果
(2.)a=6的结果是a被赋予的值,也就是6
(3.)a=b=6->a=(b=6)
2.结合关系
(1.)一般自左向右
(2.)单目+-和赋值=自右向左
2.2.3交换变量
#include <stdio.h>
int main()
{
int a=5;
int b=6;
int t;
t=a;
a=b;
b=t;
printf("a=%d,b=%d\n",a,b);
return 0;
}
2.2.4复合赋值和递增递减
一.复合赋值
1.复合运算符
(1.)“+=” “-=” “*=” “/=” “%=”
(2.)total+=5 total=total+5
(3.)total*=sum+12 total=total*(sum+12)
2.注意
两个运算符中间不要有空格
二.递增递减运算符
1.“++”“--”
他们是单目运算符,算子必须是变量,作用是给这个变量+1或者-1
2.前后缀形式
++和--可以放在变量前面,叫做前缀形式,也可以放在变量的后面,叫做后缀形式
3.a++和++a
a++的值是a加1以前的值,而++a的值是加了1以后的值,无论哪个,a自己的值都加1了。
#include <stdio.h>
int main()
{
int a;
a=10;
printf("a++=%d\n",a++);
printf("a=%d\n",a);
printf("++a=%d\n",++a);
printf("a=%d\n",a);
return 0;
}
答案:
a++=10
a=11
++a=12
a=12