can';t输出调整后的值

can';t输出调整后的值,c,C,我一直在努力,但我犯了错误。 我想显示以下内容: 输入一个值: 2.5 调整值为:14.000000 但我不知道为什么我总是得到: 未命名11.c:6:9:警告:格式说明符不完整[-Wformat] scanf(“%l”,q); ^~ 生成1个警告。 输入值:调整后的值为:0.000000 #include <stdio.h> double SPECIAL_CONST = 5.6; int main(void) { printf("Enter a value:\n"); double

我一直在努力,但我犯了错误。 我想显示以下内容: 输入一个值: 2.5 调整值为:14.000000 但我不知道为什么我总是得到: 未命名11.c:6:9:警告:格式说明符不完整[-Wformat] scanf(“%l”,q); ^~ 生成1个警告。 输入值:调整后的值为:0.000000

#include <stdio.h>
double SPECIAL_CONST = 5.6;
int main(void)
{
printf("Enter a value:\n");
double q;
scanf("%l", q);
printf("The adjusted value is: %f\n", q*SPECIAL_CONST);
return 0;
} 
#包括
双特殊常数=5.6;
内部主(空)
{
printf(“输入值:\n”);
双q;
scanf(“%l”,q);
printf(“调整后的值为:%f\n”,q*特殊常数);
返回0;
} 

您对
双精度
使用了错误的格式说明符(
%l
)。使用
%lf
读取
double
类型值。和
scanf
aspects
double*
type参数,但您正在传递
double
type参数。用
追加
q

改变

scanf("%l", q);   
//     ^wrong format specifier 
scanf("%lf", &q);