(一)类型强制转换(📢)
// 强制类型转换
void main(){
int num=5;
// 左操作数(整型) / 右操作数(整型) [做整型操作运算]
float fnum1=num/2;
printf("fnum=%f\n",fnum1); //结果是2.0000
// (float)并不是说 num 变成float类型了,
// 而是把 (float) num 称为强制类型转换后的一表达式
float fnum2=(float)num/2;
printf("fnum=%f\n",fnum2); //结果是2.5
}
(二)printf函数介绍(📢)
输出函数(可以输出各种类型的数据),实际原理是 [将所类型转成字符串后,放入标准输出缓冲区] printf函数站位符格式
站位符 | 涵义 |
---|---|
"%c" | 字符 |
"%s" | 字符串 |
"%f" | 浮点型 |
"%d" | 整型 |
"%o" | 八进制 |
"%x" | 十六进制 |
可以同时输出多个,但站位符类型要与后面输出的类型一一对应,如:printf("i=%d, f=%f, c=%c, s=%s",i,fnum2,c,"hello world");
浮点数进行格式控制
在 [%] 和 [字母] 中间 加 [数字] 可以控制输出长度
其中 [%5.2f] 表示 整体站5位 [.2]是小数点后保留两位小数
[%-3d] 中的 [-]表示左对齐,默认是右对齐
void main(){
printf("student %10s number=%-3d\n","LiLei",10);
printf("student %10s number=%-3d\n","HanMeimei",100);
//输出
// student LiLei number=10
// student HanMeimei number=100
int i = 7;
float f = 5.0/2;
char c = 'A';
printf("i=%d, f=%5.2f, c=%c, s=%s",i,fnum2,c,"hello world");
// 输出
// i=7, f= 2.50, c=A, s=hello world
}