如下代码 int x = 800; for (int i = x; i >= 0; i = i - 50) { } 如果x为四位数,如x=3000,首次递减100 如果x为三位数,如x=800,首次递减50 如果x为二位数,如x=70,首次递减10 如果x为个位数,如x=4,首次递减1 关键在于下面的设计,如果x=800的时候,首次递减为50,当i到100以内的时候,递减为10,当i到10以内的时候递减为1,请问这样代码如何写?
这种情况用for循环明显不能实现,改用其他的循环结构,如while
int x = 3000;
int xx = x;
while (xx >= 0)
{
if (xx >= 1000)
{
xx = xx - 100;
}
else if (xx >= 100)
{
xx = xx - 50;
}
else if (xx >= 10)
{
xx = xx - 10;
}
else
{
xx = xx - 1;
}
}