【发布时间】:2021-08-04 01:28:51
【问题描述】:
您好,我是 C 和一般编程的新手,但听说如果可能,不应重复代码,这很有意义,但我不知道如何减少此代码的重复性。任何意见将不胜感激。
int main(void)
{
float dollars = 0;
float real_value = 0;
int cents = 0;
int coin_counter = 0;
do
{
dollars = get_float("change owed: ");
cents = round(dollars*100);
}
while(dollars<0);
如果可能的话,我希望这四个 for 循环可以合二为一?
for(int i = 0; cents>=25; i++)
{
cents = cents - 25;
real_value = cents;
coin_counter++;
}
for (int i = 0; cents>=10; i++)
{
cents = cents - 10;
real_value = cents;
coin_counter++;
}
for (int i = 0; cents >= 5; i++)
{
cents = cents - 5;
real_value = cents;
coin_counter++;
}
for (int i = 0; cents >= 1; i++)
{
cents = cents - 1;
real_value = cents;
coin_counter++;
}
printf("coins: %i\n",coin_counter);
printf("leftovers: %f\n", real_value);
}
【问题讨论】:
标签: c for-loop optimization