[英]Expression result unused — what's wrong with my C code?
我編寫了一個運行“貪婪”算法的程序,該程序要求輸入找零的輸入值,並返回返回該找零所需的最小硬幣數量,同時使用盡可能少的硬幣。 只能使用四分之一硬幣,一角硬幣,鎳硬幣和一分錢硬幣。 請查看我的代碼,並告訴我如何解決所顯示的錯誤。
#include <stdio.h>
#include <cs50.h>
#include <math.h>
int main(void)
{
float change;
int counter;
counter = 0;
do
{
printf("Please imput how much change is owed: ");
change = GetFloat();
}
while (change<=0);
int centv;
{
centv = round(change*100);
}
int quarter, dime, nickel, penny;
quarter= 25;
dime= 10;
nickel= 5;
penny= 1;
{
while( centv>=quarter )
{
(centv-25);
counter++;
}
while( centv>=dime )
{
(centv-10);
counter++;
}
while( centv>=nickel )
{
(centv-5);
counter++;
}
while( centv>=penny)
{
(centv-1);
counter++;
}
if(centv == 0)
{
printf("%i \n", counter);
}
}
}
我遇到的錯誤是與(centv-25)
, (centv-10)
, (centv-5)
和(cent-1)
。
對於所有這些錯誤消息均為“未使用表達式結果”。 我該如何解決?
如果要更改centv
的值, centv
需要類似centv = centv - 25;
centv - 25
應該替換為centv = centv - 25
,其他行也類似。
如Jens的評論中所述, (centv-25)
計算(centv-25)
的值,但隨后不執行任何操作。 與(centv-10)
, (centv-5)
和(centv-1)
。 在這四種情況的每種情況下,您都需要將減法的結果分配給centv
。
centv = centv-25;
...
centv = centv-10;
...
centv = centv-5;
...
centv = centv-1;
您可能打算從centv
減去25
等。 用復合賦值替換表達式:
centv -= 25;
etc.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.