请da佬帮忙看看
#include<iostream>
using namespace std;
int main()
{
为啥这段代码中if语句中的return 0一定要写,不写就会死循环
//创建一个数组表示0—9各有2021张
int a[10];
for (int i = 0;i < 10;i++)
{
a[i] = 2021;
}
//
for (int i = 0;;i++)
{
int temp = i;
while (temp != 0)
{
int t=temp % 10;//取到当前尾数
if (a[t] > 0)
{
a[t]--;//未耗尽则使用卡片,卡片数-1
temp = temp / 10;//除以10以便下次循环取到前一个数字
}
if (a[t] <= 0)//卡片张数说明已经耗尽则输出前一个数
{
cout << i - 1 << endl;
return 0;
}
}
}
system("pause");
return 0;
}