我想要开始工作的程序是“将分钟转换为年和日”。是的,分钟会转换为年和日。我尝试运行的代码是:
int main()
{
int minutes=0;
double minutesinayear=0.0;
double years=0.0;
double days=0.0;
printf("Enter minutes:");
scanf("%d", &minutes);
minutesinayear=(365*24*60);
years= (minutes / minutesinayear);
days=(minutes/60.0)/24.0;
printf("%d Minutes converted to years: %f and days: %f", &minutes, &years, &days);
return 0;
}
无论用户输入什么,输出始终是:
6356724 Minutes converted to years: 0.000000 and days: -0.000000
输出始终与上面相同。构建日志中的错误是:
|15|warning: format '%lf' expects argument of type 'double', but argument 4 has type 'double *' [-Wformat=]|
我尝试将格式“%lf”更改为“%f”,但仍然没有给出预期的输出。
最佳答案
您的 printf
上不需要 &
。如果这样做,您将获得地址而不是值。
要解决这个问题:
printf("%d 分钟转换为年:%f 和天:%f", 分钟,年,日);
关于c - 简单的C程序,但无法给出预期结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59750628/