文档库 最新最全的文档下载
当前位置:文档库 › CC++校园招聘面试笔试题

CC++校园招聘面试笔试题

1.以下三条输出语句分别输出什么?

char str1[] = "abc";

char str2[] = "abc";

string str3[] = "abc";

string str4[] = "abc";

const char* str5 = "abc";

const char* str6 = "abc";

cout << boolalpha << ( str1==str2 ) << endl; // 输出什么?

cout << boolalpha << ( str3==str4 ) << endl; // 输出什么?

cout << boolalpha << ( str5==str6 ) << endl; // 输出什么?

2.写一个函数,完成内存之间的拷贝。

void* mymemcpy( void *dest, const void *src, size_t count )

3.冒泡排序算法的时间复杂度是什么?

4.设有以下说明和定义:

typedefunion {long i; int k[5]; char c;} DATE;

struct data { int cat; DATE cow; double dog;} too;

DATE max;

则语句printf("%d",sizeof(struct date)+sizeof(max));的执行结果是:

5.假设有如下一个类

class String{

public:

String(constchar *value);

~String();

char* strcpy(char* dest, constchar* source);

size t strlen( constchar *string );

private:

char *data;

};

要求利用类中的已知函数实现该类的赋值运算符“operator=”。

6.函数palindrome(chars[])的功能是:判断字符串s是否为回文字符串,若是,则返回0,

否则返回-1。若一个字符串顺读和倒读都一样时,称该字符串是回文字符串,例如:“LE VEL”是回文字符串,而“LEV AL”不是。

[函数2.1]

int palindrome(char S[])

{ char*pi,*pj;

pi=S;pj=s+strlen(S)-1:

while ( pi

pi++;pj--;

}

if(__ (2)__)return-1;

else return 0;

}

7.函数f(char *str,char del)的功能是;将非空字符串str分割成若干个子字符串并输出,

del表示分割时的标志字符。

例如若str的值为“33123333435”,del的值为…3?,调用此函数后,将输出三个子字符串,分别为“12”、“4”和“5”。

void f(char*str,char del)

{ int i,j,len;

len = strlen(str);

i = 0;

while(i

while(__(3)__)i++;/*忽略连续的标志字符*/

/*寻找从str[i]开始直到标志字符出现的一个子字符串*/

j = i + 1;

while (str[j] !=del && str[j] !='\0') j++;

__ (4)__="\0";/*给找到的字符序列置字符串结束标志*/

printf(" %s\t",&str[i]):?

__ (5)__;

}

}

8.设计函数int atoi(char *s)。

9.类成员函数的重载、覆盖和隐藏区别?

10.101个硬币100真、1假,真假区别在于重量。请用无砝码天平称两次给出真币重还

是假币重的结论

相关文档
相关文档 最新文档