c++一些笔试题目和整理的答案

时间:2024-06-20 10:21:32 综合指导 我要投稿
  • 相关推荐

c++一些笔试题目和整理的答案

  NO1

c++一些笔试题目和整理的答案

  Below is usual way we find one element in an array

  const int *find1(const int* array, int n, int x)

  {

  const int* p = array;

  for(int i = 0; i < n; i++)

  {

  if(*p == x)

  {

  return p;

  }

  ++p;

  }

  return 0; }

  In this case we have to bear the knowledge of value type "int", the size of array, even the existence of an array. Would you re-write it using template to eliminate all these dependencies?

  template

  const T *find1(const T* array, int n, T x)

  {

  const T* p = array;

  for(int i = 0; i < n; i++)

  {

  if(*p == x)

  {

  return p;

  }

  ++p;

  }

  return 0; }

  NO2

  Give an example of implementing a Stack in the template way(only template class declaration without detail definition and realization)

  template

  class Stack

  {

  public:

  Stack(int = 10) ;

  ~Stack() { [] stackPtr ; }

  int push(const T&);

  int pop(T&) ;

  int isEmpty()const { return top == -1 ; }

  int isFull() const { return top == size - 1 ; }

  private:

  int size ; // number of elements on Stack.

  int top ;

  T* stackPtr ;

  } ;

  NO3

  Implement the simplest singleton pattern(initialize if necessary).

  class Singleton {

  public:

  static Singleton* Instance();

  protected:

  Singleton();

  private:

  static Singleton* _instance;

  }

  // Implementation

  Singleton* Singleton::_instance = 0;

  Singleton* Singleton::Instance() {

  if (_instance == 0) {

  _instance = new Singleton;

  }

  return _instance;

  }

  NO4

  1.Jeff and Diamond like playing game of coins, One day they designed a new set of rules:

  1)Totally 10 coins

  2)One can take away 1,2or 4 coins at one time by turns

  3)Who takes the last loses.

  Given these rules Whether the winning status is pre-determined or not

  解答: 1:从后面开始考虑,最后肯定要留1个才能保证自己赢

  2:所以要设法让对方留下2,3,5个

  3:也就是要自己取后留下1,4,6,7,8,9

  4:如果自己取后留下6,对方取2个,与(3)矛盾,所以排除6

  5:如果自己取后留下8,对方取4个,与(3)一样情况,所以也排除8

  6:同样,9也不行,如果我抽后剩下9,对方抽2个,就反过来成对方抽剩成7个了,也与3)矛盾,所以也排除

  7:所以很显然,我只能抽剩1,4,7

  8:因为只能抽后剩1,4,7才能赢,我先抽得话不可能达到这几个数,很显然,只能让对

  方先抽,也即是先抽的人输


【c++一些笔试题目和整理的答案】相关文章:

C++工程师笔试题目11-25

报社笔试题目及答案03-23

笔试的题目和经验分享11-21

2024腾讯笔试题目及答案08-21

游戏策划笔试题目答案02-25

口语和笔试题目分享11-21

笔试的具体题目数和形式02-23

马士基的笔试题目和感受11-21

史上最全软件笔试题目及答案04-03

富士康笔试题目及答案03-30