用double定义的函数输出时可以以%f的形式输出嘛
或者说这样输出的结果正确吗
有啥影响不

用scanf()输入时,输入格式%f对应变量类型必须是float类型,%lf对应变量类型必须是double类型
用prinf()输出时,输出格式%f和%lf都是对应double类型,如果参数类型是float,它会把自动把参数提升为double类型输出。
参考:
https://en.cppreference.com/w/c/io/fscanf
https://en.cppreference.com/w/c/io/fprintf