本文章介绍了我本人对常用打印类型的粗略见解,希望可以帮到初学者解决疑惑,谢谢支持。
本文讲解了%d、%u、%c、%s、%f、%lf这六种常用打印类型。
%d:打印有符号整型(就是打印整数的意思,而且该整数为10进制整数),对应 int 类型。
%u:打印无符号整型,对应unsigned int 类型。
无符号类型可以存放的正数范围比有符号整型中的范围大一倍,因为有符号类型将最高位储存符号,而无符号类型全都储存数字。例:在16位系统中一个int能存储的数据的范围为-32768~ 32767,而unsigned int能存储的数据范围则是0~65535。
示例:
#include<stdio.h>/头文件,必不可少
int main()/主函数,必不可少
{
int a=3;//定义a为int类型
printf("%d\n",a);///此处\n的作用是换行,具体看运行结果
printf("%d\n",1);
printf("%u",2);
return 0;
}
/运行结果为
3
1
2
%c:打印一个字符,对应char类型。
示例:
#include<stdio.h>
int main()
{
char z='b';//定义z为char类型,一个字符表示用单引号,c语言规定
printf("%c",z);
printf("%c",'a');
return 0;
}
/运行结果为ba(第一个printf输出为b,第二个printf输出为a,所以运行结果为ba)
%s:打印字符串(就是打印一串字符的意思),对应char*类型。
示例:
#include<stdio.h>
int main()
{
char* a="abc";
printf("%s\n",a);
printf("%s","asdfghjkl");//字符串表示用双引号,c语言规定
return 0;
}
/运行结果为
abc
asdfghjkl
%f:打印单精度浮点数(对应float类型)。
%lf:打印双精度浮点数(对应double类型)。
C语言中,float和double都属于浮点数类型。区别在于:double所表示的范围,整数部分范围大于float,小数部分,精度也高于float(一般情况下差别不大)。float 占用4个字节,double 占用8个字节。
%f和%lf打印输出时默认保留六位小数,不足六位以 0 补齐,超过六位按四舍五入截断。
示例:
#include<stdio.h>
int main()
{
float a=1.123456;/定义a为float类型
printf("%f\n",a);
printf("%f\n",1.2);
printf("%lf\n",1.3333333333);
printf("%lf\n",1.5555555555);
printf("%.2f\n",1.23456);/(这里%.2f相当于%.nf 这里.n表示精确到小数位后n位)
printf("%.8f",1.23456);(%.8f意思是精确到小数点后8位)
return 0;
}
/运行结果为
1.123456
1.333333
1.555556
1.23
1.23456000