软通动力C语言笔试题和面试题答案目(3)

更新时间:2018-11-22 15:54作者:才子老师

      3。typedef unsigned char BYTE

      int examply_fun(BYTE gt_len; BYTE *gt_code)

      {

      BYTE *gt_buf;

      gt_buf=(BYTE *)MALLOC(Max_GT_Length);

      ......

      if(gt_len>Max_GT_Length)

      {

      return GT_Length_ERROR;

      }

      .......

      }

      答案:要释放内存

      问答题:

      1.IP Phone的原理是什么?

      答案:IPV6

      2.TCP/IP通信建立的过程怎样,端口有什么作用?

      答案:三次握手,确定是哪个应用程序使用该协议

      1. 用宏定义写出swap(x,y)

      #define swap(x, y)

      x $denghao$ x + y;

      y $denghao$ x - y;

      x $denghao$ x - y;

      2.数组a[n],存放了1至n-1个数,其中某个数重复一次。写一个函数,找出被重复的数字.时间复杂度必须为o(n)函数原型:

      int do_dup(int a[],int n)

      3 一语句实现x是否为2的若干次幂的判断

      int i $denghao$ 512;

      cout << boolalpha << ((i & (i - 1)) ? false : true) << endl;

      4.unsigned int intvert(unsigned int x,int p,int n)实现对x的进行转换,p为起始转化位,n为需要转换的长度,假设起始点在右边.如x$denghao$0b0001 0001,p$denghao$4,n$denghao$3转换后x$denghao$0b0110 0001

      unsigned int intvert(unsigned int x,int p,int n){

      unsigned int _t $denghao$ 0;

      unsigned int _a $denghao$ 1;

      for(int i $denghao$ 0; i < n; ++i){

      _t |$denghao$ _a;

      _a $denghao$ _a << 1;

      }

      _t $denghao$ _t << p;

      x ^$denghao$ _t;

      return x;

      }

      一. 选择题

      1. 在关系数据库德询问优化中,事先处理文件,如排序、建立索引的目的是:()

      A.优化表达式 B。减少中间结束 C。扩大缓冲数据 D。 减少扫描文件的时间

      2.进程是操作系统中的一个重要概念。进程是一个具有一定独立功能的程序在某个数据集合上的一次(A);进程是一个(B)的概念,而程序是一个(C)的概念;进程的最基本状态有(D)。在一个单处理机,若有6个用户进程,在非管态的某一时刻,处于就绪状态的用户进程最多有(E)个。

      供选择的答案

      A: (1)单独操作 (2)关联操作 (3) 进行活动 (4)并发活动

      B:(1)静态 (2)动态 (3)逻辑 (4) 物

      C:(1)物理 (2)逻辑 (3)动态 (4)静态

      D:(1)就绪、运行、隐蔽 (2)停止、就绪、运行 (3)运行、就绪、阻塞

      (4)就绪、车消、运行

      E: (1) 5 (2) 6 (3) 1 (4) 4

      3. 有以下几个条件成立:( )

      (1)如果小王是工人 ,那么小张不是医生

      (2)或者小李是工人,或者小王是工人

      (3)如果小张不是医生,那么小赵不是学生

      (4)或者小赵是学生,或者小周不是经理

      以下哪项如果为真,可得出小李是工人的结论?

      (A) 小周不是经理

      (B) 小王是工人

      (C) 小赵不是学生

      (D) 小周是经理

      二.简答题

      1.下面列举的是常用的排序方法:直接插入排序,二分法插入排序,起泡排序,快速排序,直接选择排序,堆排序,归并排序。试问,哪些排序方法是稳定的?

      答:(期待您的高见)

      2. 对序列(49,38,65,97,76,27,13,50)采用快速排序法进行排序,以序列的第一个元素为基准元素得到的划分结果是什么?

      答:

      3. 请仔细阅读下面的SQL,判断其是否有错误,如果有错误,请说明错误在哪里。

      Select id , name ,age ,count (*)

      From table_name

      Where name like %s%

      Group by name

      4. 请用面向对象分析的方法,分析我用电脑写程序这句话的对象、属性和方法。

      三 问答题

      电影《达芬奇密码》中讲到了一个非常有意思的数字序列---菲波拉契序列。请用任意计算机语言实现一段小程序,该程序在屏幕上输出1到1000之间的非波拉契序列。

      非波拉契序列:1,1,2,3,5,8,13,21,34,……

      要求:用程序描述 核心算法。语言不限。

      1. C++中如何阻止一个类被实例化?

      2. 一般在什么时候构造函数被声明成private呢?

      3. 什么时候编译器会生成默认的copy constructor呢?

      4. 如果你已经写了一个构造函数,编译器还会生成copy constructor吗?

      5. struct和class有什么区别?

      答:默认的访问级别不同,struct是public,class是private

      6. 没有别的不同了吗?

      7. 为什么说如果一个类作为基类,则它的析构函数要声明成virtual的?

      8. inline的函数和#define有什么区别?

      9. inline是什么意思?

      10. 那你说说什么时候会真的被inline,什么时候不会呢?

      11. 如果把一个类的成员函数写在类的声明中是什么意思?

      12. public继承和private继承有什么架构上的区别?

      13. 在多继承的时候,如果一个类继承同时继承自class A和class B,而class A和

      B中都有一个函数叫foo(),如何明确的在子类中指出override哪个父类的foo()?

      14. 虚拟继承的语法是什么?

      15. 部分模版特例化

      1.什么是平衡二叉树?编写一个删除平衡二叉树的程序?

      2.写一个程序,求有向有权图两点之间的最小权?

      3.根据你的理解,写出Cstring类的构造函数和析构函数?

      4.使用C语言实现对ini文件的访问,使程序可以对int,double,字符串类进行读写。

      5.n×n个方格(n为任意整数),定义若两个格有公共边则称两个格相邻。现将 个格中的N个格子图黑,使每个格子都与黑格子相邻。试编程,使N最小。

      1

      #define pi 3.14

      #define Area(R) pi*R*R

      main()

      {

      int r1=5,r2=2;

      double s=0;

      s=Area(r1-r2);

      printf("The area is %f",s);

      }

      求结果

      2

      函数 int compare(int a,int b),定义为该函数的函数指针P:为_______________

      3

      #include

      void sub(char*s,int num)

      {

      int i ,j=num;

      char t;

      while(j-->1)

      {

      for(i=0;i{

      if(s[i]{

      t=s[i];

      s[i]=s[i+1];

      s[i+1]=t;

      }

      }

      }

      }

      main()

      {

      char*s="CEAeded";

      sub(s,6);

      printf("%s ",s)

      }

      求结果

      4

      交换两个变量的值,不使用第三个变量,即a=3,b=5交换

      后b=3,a=5

      unsigned char a=3,b=5;

      5

      #define N 100

      void GetMemory1(char*p)

      {

      p=(char*)malloc(sizeof(char)*N);

      strcpy(p,"Have a good day!");

      }

      char*GetMemory2(void)

      {

      char p[]="Have a good day!";

      return p;

      }

      void main(void)

      {

      char*str1=NULL,*str2=NULL;

      GetMemory1(str1);

      GetMemory2(str2);

      printf(" str1:%s",str1);

      printf(" str2:%s",str2);

      6

      构造N个结点的单链表返回链表头指针,要求链表中各结点顺序

      与结点数据输入顺序相反,例如输入1,2,3,4,5,形成的链表为

      head->5 4 3 2 1 ,补充程序

      #define N 10

      typedef struct Node

      {

      int data;

      struct Node*next;

      }NODE;

      int Get_Data(int i);定义省略

      Node*Create_u()

      {

      int i;

      NODE*p,*Head=NULL;

      for(i=0;i{

      VP=New NODE;

      P->Data=Get_Data(i);

      ________________;

      ________________;

      }

      return Head;

      }

      7

      N个结点链表,每个结点中存放一个字符,判断链表存放的字符是否

      中心对称,即a b c c b a或a b c b a,补充程序

      typedef struct Node

      {

      int data;

      struct Node*next;

      }NODE;

      bool Is_symmeic(NODE*head,*int n)

      {

      char D[N];

      int i,d;

      __________;

      for(i=0;i{

      D[i]=head->data;

      head=head->next;

      }

      if(__________)

      {

      head=head->next;

      }

      while(head)

      {

      _______________;

      if(D[i]!=head->data)

      {

      return false;

      }

      head=head->next;

      }

      return true;

      }

      8

      str中只含有大写和小写字母函数change_move(char*str)将字符串中大写改成*并

      移到前面小写后返回*的个数

      如AabBdcYY改为*****abd,返回5

      int chang_move(char*str)

      {

      int len,i,curstr=-1;

      len=strlen(str);

      for(i=len-1;i>=0;i--)

      {

      if(str[i]>='A'&&str[i]<='Z')

      {

      str[i]='*';

      if(cursor==-1)

      {

      cursor=i;

      }

      else if(cursor>i)

      {

      _____________;

      str[i]='*';

      _____________;

      }

      }

      return____________;

      }

      9

      求两个字符串的第一个公共子串,并返回该子串

      如:"a b c d e f g e h i" "a a c d e f * * g e h i"

      第一个为"c d e f";不许用strcmp()

      char*Maxf(char*str1,char*str2)

      {

      }

    为您推荐

    2019年两会《政府工作报告》养老金新政策,要提高养老保障水平

    《关于2018年中央和地方预算执行情况与2019年中央和地方预算草案的报告》要求,提高养老保障水平。从2019年1月1日起,按平均约5%的幅度提高企业和机关事业单位退休人员基本养老金标准。

    2019-06-13 04:57

    如何在另类面试问题中胜出

    在面试中,有些考官会先提一个不甚友好的问题,或者劈头浇你一盆冷水,让你在委屈和激愤中露出本色。在他看来,击溃你的心理防线,才能筛选出有心理承受能力的智者,找到能面对压力的新鲜血液。要想在压力面试中胜出,只能学会绕开陷阱,奋战到底。

    2019-06-08 03:00

    面试紧张时应该怎么办

    面试是进入公职机关的最后一道主要的门槛,因此可以说每一位进入面试的人,心里就像绷住一根弦一样,也就是说每位考生,都会以高度的精神状态去抓住这次进入角色的机会。出现紧张、焦虑的心情也是不可避免的,只有认识了解,才能完全的克服。

    2019-06-08 02:58

    面对变故 学会自我解嘲

    面对降级、减薪、甚至解雇、离婚、丧子等变故,许多人反应过度,很长时间缓不过劲儿来。而有的人却能很快度过,重返正常的生活轨道。其决定因素是一种特殊的心理素质:心理复原力。有了它,人们不怕挫折;而缺少它,会特别害怕受伤害,不敢付出行动。

    2019-06-06 03:12

    办公室里该与不该谈论的话题

    办公室是一个充满原则、纪律,讲求策略的场合,更是一个充满利益冲突的是非之所。既如此,办公室里谈个人私事是否妥当呢?网上调查显示,尽管九成以上的人认为“办公室里隐私不宜说”,但是她/他们又同时承认有在办公室里谈论涉及私人感情、家庭关系、同事喜恶和上下级关系等隐私性内容的行为。

    2019-06-06 03:10

    面试自我介绍的几大原则

    应聘到外企或其他用人单位时,求职者往往最先被问及的问题就是“请先介绍介绍你自己”。这个问题看似简单,但求职者一定要慎重对待,它是你突出优势和特长,展现综合素质的好机会。回答得好,会给人留下良好的第一印象。

    2019-06-01 03:19

    外企面试必须要注意的五“必要”

    到外企面试前,仅仅准备好一份简历是不够的,还要提前做好面试前的“功课”,这样面试通过的几率就会大大增加。

    2019-06-01 03:16

    加载中...