20121129东方网力笔试题

来源:互联网 发布:电影 人工智能怎样评价 编辑:程序博客网 时间:2024/06/10 08:36

东方网力拟上市公司,解决户口能力未知,做视频监控解决方案,行业背景很好,为公安部门,城市建设服务

1.#include “a.txt”是否有误

有误 #include只接受一个参数就是头文件名

2.int  isSoreted(ini *p,intcount)判断是否排序成功 yes return1  ,no return 0

 

#include<iostream>

using namespacestd;

int isstore(int*p,int count)

{

    int i,j;

    int *q=p;

    int *r=p;

    for(i=0;i<count-1;i++)

    {

    

        if(*q>=*(q+1)) q++;

        else

        break;

    }

    if(i==count-1)

    return 1;

    for(j=0;j<count-1;j++)

    {

        if(*r<=*(r+1))r++;

        else

        break;

    }

    if(j==count-1)

        return 1;

    return 0;

}

int main()

{

     int a[]={3,1,3,4,5,8};

     int b=isstore(a,6);

     cout<<b;

     system("pause");

     return 0;

}

可能存在相等的两个数

3. sizeof(类名)

类似于 struct的对齐方式;另外如果是virtual函数,则加上一个指针4;如果继承基类,则加上基类

sizeof,再加上指向基类的指针4

4. explicit用法 好处

和构造函数一起使用,禁止隐式类型转换操作

5. Static用法三条以上

静态存储方式,限制作用域 限制存储域

  (1)局部静态变量  

  (2)外部静态变量/函数  

  (3)静态数据成员/成员函数  

  一、局部静态变量  

  C/C++,  局部变量按照存储形式可分为三种auto,   static,  register  

  (<C语言程序设计(第二版)>谭浩强,  174-175)  

  auto类型(普通)局部变量相比,  static局部变量有三点不同  

  1.   存储空间分配不同  

  auto类型分配在栈上,属于动态存储类别,占动态存储区空间,函数调用结束后自动释放,static

配在静态存储区,在程序整个运行期间都不释放.两者之间的作用域相同,但生存期不同.  

  2.  static局部变量在所处模块在初次运行时进行初始化工作,且只操作一次  

  3.   对于局部静态变量,如果不赋初值,编译期会自动赋初值0或空字符,auto类型的初值是不确定

.   (对于C++中的class对象例外, class的对象实例如果不初始化,则会自动调用默认构造函数,不

管是否是static类型)  

  特点:  static局部变量的”记忆性”与生存期的”全局性”  

  所谓”记忆性”是指在两次函数调用时,  在第二次调用进入时,   能保持第一次调用退出时的值.    

   二、外部静态变量/函数  

  Cstatic有了第二种含义:用来表示不能被其它文件访问的全局变量和函数。,  但为了限制全

局变量/函数的作用域,  函数或变量前加static使得函数成为静态函数。但此处“static”的含义不是指

存储方式,而是指对函数的作用域仅局限于本文件(所以又称内部函数)。注意此时,  对于外部(全局)

变量,  不论是否有static限制,  它的存储区域都是在静态存储区,   生存期都是全局的.   此时的static

只是起作用域限制作用,  限定作用域在本模块(文件)内部.  

  使用内部函数的好处是:不同的人编写不同的函数时,不用担心自己定义的函数,是否会与其它

文件中的函数同名。  

三、静态数据成员/成员函数(C++特有)  java也有c木有

  C++重用了这个关键字,并赋予它与前面不同的第三种含义:表示属于一个类而不是属于此类的

任何特定对象的变量和函数

6. 指针和引用相同和区别

指针和引用都表示某个对象或者变量的地址不同的是指针是一个实体而引用仅是个别名;引用使

用时无需解引用(*),指针需要解引用;引用只能在定义是被初始化,之后不变,指针可变;

引用没有const,指针有const;引用不能为空,指针可以为空;sizeof引用得到的十指相变量的大

小,sizeof指针指向的是指针的大小;指针自增和引用自增运算意义不一样;内存分配上程序为

指针变量分配内存区域,引用不需要

7.const 用法三条以上

欲阻止一个变量被改变,可以使用const关键字,在定义该const变量时,通常初始化后就没机会

改变;对于指针来说可以指定指针为const也可以指定指针指向数据为const或者同时const;const

在函数中可以修饰形参,表明是一个输入参数,内部不能改变参数值;对于类的成员函数若指定

const类型则表明是一个常函数;对于类的成员函数,必须制定返回值const以使得其返回值不

为位左值

8. #define CCC(n) ___

int x = rand();

int y = rand();

unsigned int cx = CCC(x);

unsigned int cy = CCC(y);

int less = ((x<y) == (cx<cy));

int diff = ((x-y) == (cx-cy));

if(less && diff)

printf("ture");

else

printf("false");

CCC要怎么定义可一直输出ture

sizeof(int)可能是1,2,4,8

rand()可以是int能表示的任意数

((n>0)?(n):(2<<(8*sizeof(n)-n)))

不知道对不对?????高人指导

   Ps小红考试问了几个题 加上#include<>和#include””区别 #include<>标准头文件在预定义位置查找后

者是用户自定义文件,从原文件位置开始查找

数据库事务四大特性原子性 一致性隔离性持久性Atomicity Consistency Isolation Durability 

原创粉丝点击