这个题为2014网易C++笔试题,考得很烂,这题现场没做出来,只想到是用递归,但是怎么递归就不知道了。网上搜了一下,方法有两种,一种是用类的方式实现,一种是用&& 或||运算符来实现。
类实现方式:通过类的构造函数来实现小于k的整数输出
class test{
public: static int k;
test(){ cout<<k<<endl; }
}
int test::k=1;
void printLess(int k)
{
test t[k-1];
}
&&或||运算符实现:&&、||的运算规则是左边的值可以确定整个式子的值,则不进行右边式子的运算
所以可以使用递归实现
void printLess(int k)
{
printf("%d",k-1);
(k-1)&&printLess(k-1);
}