首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

oracle的 C/C++ 面试题, 大家来挑战一上吧

2012-10-15 
oracle的 C/C++ 面试题, 大家来挑战一下吧.打印 1--1000不能使用条件运算符.不能使用循环语句.Task:Print

oracle的 C/C++ 面试题, 大家来挑战一下吧.
打印 1--1000;
不能使用条件运算符.
不能使用循环语句.


Task:
 Print numbers from 1 to 1000 without using any loop or conditional statements. Don't just write the printf() or cout statement 1000 times.


[解决办法]
与这一题思想类似
http://zhedahht.blog.163.com/blog/static/2541117420072915131422/

Oracle也堕落了,哥就不信他们敢在产品里写这种代码
[解决办法]
这是因为你沉迷在这些无聊的东西里了,还不理解算法和架构的决定性力量。
这些小技巧真心无聊,无用。

探讨
引用:

大公司也来这种题目,无聊。


没感觉有多无聊.

[解决办法]
看了几种方法,还是有高效易读的方法,菜鸟看牛人的代码只有唏嘘感叹的份!!
[解决办法]
剑指Offer上的,感觉设计的还是很巧妙的。

C/C++ code
#include<iostream>using namespace std;class print{public:    print(){        num++;        cout << num <<endl;    }private:    static int num;};int print::num = 0;int main(){    new print[1000];    return 0;}
[解决办法]
探讨
这个不符合要求啊.

引用:

条件运算符,包括问号吗?
C/C++ code

#include <iostream>
using namespace std;
int fun(int val)
{
cout<<val++<<" ";
return val>1000?0:fun(val);
}
int main()
{
fun(1);
ret……

[解决办法]
刚才内存泄露了。。。
C/C++ code
#include<iostream>using namespace std;class print{public:    print(){        num++;        cout << num <<endl;    }private:    static int num;};int print::num = 0;int main(){    print *pt=new print[1000];    delete [] pt;    pt = NULL;    return 0;}
[解决办法]
C/C++ code
void print(){     static int i = 1;     (i - 1001) && (printf("%d ", i++)) && (print(), 0);} 

热点排行