1.混合运算
1.1强制类型转换
#include<studio.h>
//强制类型转换
int main()
{
int i=5;
float j=i/2;
float k=(float )i/2;
printf("j=%f\n",j);
printf("k=%f\n",k);
return 0;
}
j=2.000000
k=2.500000
进程已结束,退出代码为 0
2. printf 函数介绍
可以输出各种类型的数据,
实际原理是:printf函数将这些类型的数据格式化为字符串后,放入标准的输出缓冲区,然后将结果显示到屏幕上。
#include <stdio.h>
int printf(const char *format,...);
printf 根据format给出的格式,打印出stdout(标准输出)和其他参数中。
字符串格式(format)由两部分组成;显示到屏幕上的字符和定义printf函数显示的其他
参数.我们可以指定一个包含文本在内的format字符串,也可以是映射到printf的其他参数的
“特殊"字符,如下列代码所示:
intage=21;
printf("HeIIo%s,youare%dyearsold\n""BOb",age);
代码的输出如下:
Hello Bob,you are 21 years old
其中,%s表示在该位置插人首个参数(一个字符串),%d表示第二个参数(一个整数)应该
放在哪里.不同的%codes表示不同的变量类型,也可以限制变量的长度·prin廿函数的具体代
码格式如下表所示.
位于%和格式化命令之间的一个整数被称为最小字段宽度说明符,通常会加上空格来控制格式。
- 用%f精度修饰符指定想要的小数位数.例如,%5.2f会至少显示5位数字并带有2位小
数的浮点数. - 用%s精度修饰符简单地表示一个最大的长度,以补充句点前的最小字段长度
printf函数的所有输出都是右对齐的,除非在%符号后放置了负号.例如,%—5.2f会显示
5位字符、2位小数位的浮点数并且左对齐,
下面来看一个例子,如下面例子所示.
[例}printf函数输出对齐.
#include <stdio.h>
int main() {
int i=10;
float f=96.3;
printf("student number=%3d score=%5.2f\n",i,f);
printf("student number=%-3d score=%5.2f\n",i,f);
printf("%10s\n","hello");
return 0;
}
执行结果如下图所示,可以看到整型数10在不加负号时靠右对齐,加负号时靠左对齐,
%10s代表字符串共占用10个字符的位置.因为printf函数默认靠右对齐,所以"hello"字符串相对于
左边的起始位置有5个空格的距离.
student number= 10 score=96.30
student number=10 score=96.30
hello
进程已结束,退出代码为 0