C语言的int和double转换的值为什么是一个很小的数?

图片说明
图片说明
图片说明

double num=0.0d;
这个要加上

至于为什么a的值不对,你先调试下n的值

首先如楼上所说,第7行需要对num初始化,如果使用高版本的编译器第21行是编译不过的,使用未初始化的变量,不知道你用的哪个编译器。a的值应输出5.0000...,你再确定下,price的值是随机的,因为num未初始化。

num这个变量是要初始化的呀