printf函数不会进行任何类型转换(包括隐式转换),它只是从内存中读出你所提供的元素的值(按照%d,%f等控制字符提示的格式)
void main()
{
int i=10.0/3;
float j=10.0/3;
printf("%d\n",i); //3
printf("%f\n",j); //3.333333
printf("%d\n",10.0/3); //-1431655765
printf("%f\n",10.0/3); //3.3333
printf("%d\n",10/3); //3
printf("%f\n",10/3); //0.000000
}
#include<stdio.h>
void main()
{
int c1=128;
int c2=352;
char c3='A';
char c4='B';
float c5=1;
double c6=2;
int d;
int e;
//输出个数不匹配
printf("%d %d\n",c1);
printf("%d\n",c1,c2);
printf("%c\n",c1);
//输出类型不匹配
printf("%f\n",c1);
printf("%d\n",c5);
printf("%d\n",c6);
//输入间隔符
scanf("%d %d",&d,&e);
//scanf("please input value:%d",&d); //输入为:please input value:12
printf("%d %d\n",d,e);
}
输出结果: