`

面试题记

阅读更多

今天在学校里进行了第二次面试,这次面试官什么都不讲,只讲编程水平,便有下面两道编程题,在平时的话是很简单的,但在当时条件下,做的有点糟糕:过后又把它们做了一便:

1:数1,1,2,3,5,8,13,21.。。。。。求出第30个数?要求利用递归实现;
方法一:
#include "stdio.h"
#include "stdlib.h"
int Cacluate(int a,int b,int t){
   
    int m=0;
   m=a+b;a=b;b=m;
 
   t=t-1;
 
    if(t==0){return m;}
    else{
      return Cacluate(a,b,t); 
       }
}
int main(){
    int n=Cacluate(1,1,3);  
    printf("%d",n);
     getchar();
     return 0;
}
方法二:
#include "stdio.h"
#include "stdlib.h"
int Cacl(int n){
    if(n==1){return 1;}
    if(n==2){return 2;}
    else {return Cacl(n-1)+Cacl(n-2);}
}
int main(){
    int m=Cacl(1,1,3);  
    printf("%d",m);
     getchar();
     return 0;
}

2:给定一个数组a[100];要求随机的插入1—100个数并且不能重复;
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
int Cacluate(int a,int b,int t){
   
    int m=0;
   m=a+b;a=b;b=m;
 
   t=t-1;
 
    if(t==0){return m;}
    else{
      return Cacluate(a,b,t); 
       }
}

int main(){
    srand((unsigned)time(NULL));
    int a[100],b[100];
   
    for(int i=0;i<100;i++){
        b[i]=i+1; 
   
        //printf("%d/n",b[i]);
            }
for(int j=0;j<100;j++){
        int m=rand()%100;
        while(b[m]==0){
         m=rand()%100; }
        a[j]=b[m];
        b[m]=0;
        }
for(int j=0;j<100;j++){
        printf("%d/n",a[j]);
        }

     getchar();
     return 0;
}

分享到:
评论
2 楼 jasstion 2009-10-18  
星情泪 写道
第一题
def cal(num, a = 1, b = 0)
  tmp = a
  a = b
  b += tmp
	if num == 1
		b
	else
		cal(num-=1, a, b)
	end
end

p cal(1)
p cal(2)
p cal(3)
p cal(4)
p cal(5)
p cal(6)
p cal(30)

# 1 1 2 3 5 8...


第二题不知道有没有理解对,按照自己的理解写了一个
a = Array.new(100)
b = (1..100).to_a
a.length.times do |index|
  a[index] = b.delete_at(rand(b.length))
end
p a


变量名瞎定义的,见谅

ruby实现这么容易啊汗
1 楼 星情泪 2009-10-17  
第一题
def cal(num, a = 1, b = 0)
  tmp = a
  a = b
  b += tmp
	if num == 1
		b
	else
		cal(num-=1, a, b)
	end
end

p cal(1)
p cal(2)
p cal(3)
p cal(4)
p cal(5)
p cal(6)
p cal(30)

# 1 1 2 3 5 8...


第二题不知道有没有理解对,按照自己的理解写了一个
a = Array.new(100)
b = (1..100).to_a
a.length.times do |index|
  a[index] = b.delete_at(rand(b.length))
end
p a


变量名瞎定义的,见谅

相关推荐

    Java 公司面试的面试题记

    Java公司面试通常会涵盖多个方面的知识点,包括但不限于基础语法、面向对象编程、集合框架、多线程、异常处理、内存管理、JVM调优、设计模式、数据库操作、网络编程、Spring框架及其生态等。以下是对这些核心领域的...

    JAVA程序员面试大全(包括笔试和面试)

    Java程序员面试大全,这是一份综合性的资源,涵盖了Java程序员在面试和笔试过程中可能遇到的各种问题和知识点。作为Java开发者,深入理解并掌握这些内容至关重要,因为它们将直接影响到你在技术领域的竞争力和职业...

    Java 公司面试的笔试题记

    Java公司面试中的笔试题记涵盖了广泛的Java编程知识,这些知识点对于应聘者来说是必须要掌握的基础和进阶技能。以下是对这些知识点的详细说明: 1. **基础语法**:包括类、对象、封装、继承、多态等面向对象编程...

    Android 开发实例~~~~~~~~

    2. **面试题记**: Android面试中常见的问题可能包括内存管理(例如内存泄漏和如何避免)、线程和异步处理(如Handler、AsyncTask、Thread、Runnable)、生命周期管理和状态保存、以及性能优化(如使用ViewHolder、...

    各公司面试的题记,有问题和答案

    在 IT 行业面试中,掌握各种技术概念和实践能力至关重要。以下是一些基于题目给出的关键点的知识点详细说明: 1. 访问修饰符:`private`、`protected`、`public` 和 `internal` 是C#中的访问控制修饰符,用于定义类...

    java面试笔试题记有参考答案(北京达内培训时期整理)

    ### Java面试笔试题知识点解析 #### 一、有效标识符的选择 **问题**: 从下列选项中选择三个有效的标识符。 - A. IDoLikeTheLongNameClass - B. $byte - C. const - D. _ok - E. 3_case **答案**: ABD **解析**: -...

    java面试题详解如何更好面试

    java面试题 java面试题 java面试题 java面试题

    JAVA面试相关题集

    在Java面试中,掌握核心概念和技术是至关重要的。以下是一些常见的Java面试知识点,这些内容通常会在面试中被问及: 1. **Java基础** - **数据类型**:了解基本数据类型(如int, double, char)以及引用数据类型...

    interview-memo-iOS:iOS面试备忘录

    题记 近期一直在刷iOS面试题,由于自己之前从来没有系统的整理过,导致我看啥啥都会但答不出来。所以,给自己整理一份iOS面试题备忘录,拯救那糟糕的记忆力和表达力。 iOS面试题备忘录包含初级、中级和高级面试题,...

    毕业设计电商网站源码-FizzBuzz:ThoughtWorks作业https://www.jinshuju.net/f/EGQL3D

    题记 ThoughtWorks这次招人似乎有些狠。除了在微博上下大功夫,还和拉勾网、OSC合作。招人的方式比较特别,先交代码,才有机会得到面试电话。我想他们的嗅觉应该很灵敏。哈。代码臭味过不了他们的鼻子。 我比较喜欢...

    leetcode分类-js-offer-algo::globe_with_meridians:JS版剑指offer题解(用心整理)

    同时我一直秉持着这样的观念,知识的学习一定要有文字/其他形式的输出,对于算法的学习尤其如此,只做题记解法是非常低效的做法,可能你这两个月狂刷几百道 leetcode(当然狂刷几百道 leetcode 肯定有质变),但是知识...

Global site tag (gtag.js) - Google Analytics