为何这个结构体程序得出的结果是乱码呢
为什么这个结构体程序得出的结果是乱码呢?
程序如下:
我在黑窗口中输入20.00与30.00
结果为:
20.00 30.00
TOM has -185119209437232060000000000000000000000000000000000000000000000.00 money.
Press any key to continue
为什么会这样呢?
------解决方案--------------------
float->%f
double->%lf
------解决方案--------------------
scanf("%lf", &TOM.firstyear);
scanf("%lf", &TOM.secondyear);
这样即可
程序如下:
#include "stdafx.h"
#include "stdio.h"
#include "string.h"
struct fund
{
double firstyear;
double secondyear;
};
double sum(double x, double y);
int main(void)
{
struct fund TOM ;
double a;
scanf("%f", &TOM.firstyear);
scanf("%f", &TOM.secondyear);
a = sum(TOM.firstyear, TOM.secondyear);
printf("TOM has %.2f money.\n", a);
return 0;
}
double sum(double x, double y)
{
return x+y;
}
我在黑窗口中输入20.00与30.00
结果为:
20.00 30.00
TOM has -185119209437232060000000000000000000000000000000000000000000000.00 money.
Press any key to continue
为什么会这样呢?
------解决方案--------------------
float->%f
double->%lf
------解决方案--------------------
scanf("%lf", &TOM.firstyear);
scanf("%lf", &TOM.secondyear);
这样即可