一、混合运算
1.1、类型强制转化的场景
整型数进行除法运算时,如果运算结果为小数,那么存储浮点数时一定要进行强制类型转换。
- 等号或其他符号左边称为左操作数
- 等号或其他符号右边称为右操作数
#include <stdio.h>
//强制类型转化前
int main(){
int i=5;
float f=i/2;//因为i为整型变量,2为整型常量,进行的是整型运算。
//因为左右操作数
printf("%f\n",f);
return 0;
}
输出结果:
2.000000
#include <stdio.h>
//强制类型转化
int main(){
int i=5;
float f=i/2;//因为i为整型变量,2为整型常量,进行的是整型运算。
//因为左右操作数
float k=(float)i/2;
printf("%f\n",f);
printf("%f\n",k);
return 0;
}
输出结果:
2.000000
2.500000
二、printf函数介绍
原理:printf函数将这些类型的数据格式转换成字符串后,放在标准输出缓冲区,将结果显示在屏幕上
int printf(const char *format,…)
字符串格式(format)由两部分组成:显示到屏幕上的字符和定义printf函数显示的其他参数。
#include <stdio.h>
//联系printf
int main(){
int age=21;
printf("Hello %s,you are %d years old\n","Bob",age);
}
输出结果:
Hello Bob,you are 21 years old
#include <stdio.h>
//联系printf
int main(){
int i=10; //这里是定义需要加int
float f= 96.3;
printf("student number=%3d,score=%5.2f\n",i,f);
i=100;//这里是直接使用,不用加int
f=98.21;
printf("student number=%3d,score=%5.2f\n",i,f);
//%3d=> 3代表的是占3个位置
//%5.2f=> 5代表整体占5个位置(算上小数点) 2代表的是小数点后占2个位置
return 0;
//%3d 默认右对齐 %-3d默认左对齐
}
输出结果:
%3d时
student number= 10,score=96.30
student number=100,score=98.21
%-3d时
student number=10 ,score=96.30
student number=100,score=98.21