%d对应的是int%ld对应long%f对应的是float%lf对应的是double这些属于常识性的,你应该要了解的如果输入输出格式与类型不匹配,比如你数据是int而输出用%f,那么就会把存放int的4个字节直接当float类型的格式输出,那肯定全乱码了呀(注意这里不是强制转换,去复习各种格式的二进制存储方式你就知道有多不同了)
整型不能用%f输出的%f输出浮点数%d输出整数