繁体   English   中英

简单的C程序从硬币总数中查找卢比的总量。

[英]Simple C program to find total amount of rupees from total number of coins.

我试图编写一个C程序来输入25派,50派,1卢比和2卢比的硬币数量,并以卢比为单位计算总金额。 这是我的代码。 我没有得到正确的结果。

例如,对于5个25派硬币的硬币,我应该得到1.25卢比。 但我得到1.00卢比。 我是C的新手。请指出我的错误

#include <stdio.h>

//Q 7d 2011 7th paper Honours 2008 syllabus
int main()

{
int paise25, paise50, rs1, rs2;
double total;
printf("\n Number of coins of:\n\n");
printf(" 25 paise    = ");
scanf("%d",&paise25);
printf(" 50 paise   = ");
scanf("%d",&paise50);
printf(" 1 rupee = ");
scanf("%d",&rs1);
printf(" 2 rupee      = ");
scanf("%d",&rs2);

total=paise25/4 + paise50/2 + rs1 + 2*rs2;
//if(stat<40 || chemistry<40 || physics<40 || math<40 || c<40)

printf("\n Total amount in rupees: Rs %.02f\n",total);

return 0;
}

问题在这一行:

total=paise25/4 + paise50/2 + rs1 + 2*rs2;

当您将一个整数除以另一个整数时,会得到一个整数。 如果要获取浮点值,则应明确指定此目的。 例如:

total=paise25/4.0 + paise50/2.0 + rs1 + 2*rs2;

请注意我添加的.0部分-它们将有所作为。

当您将2个integers ,小数点将被截断。

例如,对于整数, 5/4 = 1

从而:

total = ((double)paise25)/4 + ((double)paise50)/2 + rs1 + 2*rs2;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM