这个题为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);
}
本文解析了一道2014年网易C++笔试题,介绍了两种解决方案:一是利用类构造函数输出小于指定整数k的所有整数;二是采用递归方式结合逻辑运算符&&或||实现相同功能。

被折叠的 条评论
为什么被折叠?



