double类型的变量通过scanf函数赋值时需注意的问题

/*
读取两个实数值,用实数表示出它们的和
*/


#include


int main(void)
{
double A,B; /*浮点数*/


puts("请输入两个实数。");
printf("实数A:");  scanf("%f",&A);
printf("实数B:");  scanf("%f",&B);


printf("A+B=%f\n",A+B);







return(0);




}

编译链接运行

出现

请输入两个实数。

实数A:(输入45.6 回车)

实数B:(输入12.3 回车)

A+B=(一个错误的值)

之所以会出现这种情况 是因为printf("实数A:");  scanf("%f",&A); 中的f 之前没有加上字母l

注意:double类型的变量通过scanf函数赋值时需要使用格式字符串“%lf”

你可能感兴趣的:(C)