在这里,我们将看到如何在不使用循环或任何条件语句的情况下打印1到1000。由于不能使用循环,因此我们可以尝试递归,但是这里有另一个约束,我们也不能使用条件。因此,将不使用递归的基本情况。
在这里,我们使用静态成员解决此问题。首先,我们将静态成员初始化为1,然后在构造函数中,我们打印值并增加其值。现在,创建一个由该类的1000个对象组成的数组,因此将创建1000个不同的对象,因此该构造函数将被调用1000次。这样我们就可以打印1到1000。
#include<iostream> using namespace std; class PrintN { public: static int value; PrintN() { cout<< value++ <<", "; } }; int PrintN::value = 1; //initialize to 1 main() { int N = 1000; PrintN obj[N]; //create an array of size 1000 to create 1000 objects }
输出结果
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, .... 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,