爲什麼即使輸入值999999,它總是會去else語句?有人可以解釋爲什麼和什麼是正確的方法來做到這一點?比較C值的雙倍值
#include <stdio.h>
int main(int argc, char **args)
{
double dValue = 0;
scanf("%d",&dValue);
if(10000 < dValue){
printf("More than");
} else {
printf("Less than");
}
return 0;
}
在'scanf'調用中嘗試'%f'或'%g'。 – vpit3833 2012-07-09 05:54:27
'%d' - >'%lf',打開編譯器警告。 – Mysticial 2012-07-09 05:54:41
'%d'確實*不*代表'double'。這意味着十進制轉換爲'int'。 – wallyk 2012-07-09 05:57:33