- 相關(guān)推薦
TCL集團(tuán)校園招聘C/C++方向筆試題
TCL集團(tuán)2013年校園招聘筆試題[C/C++方向]
提示:本測試題總分100分,請60分鐘內(nèi)完成測試,
TCL集團(tuán)校園招聘C/C++方向筆試題
。一、判斷題(正確的打√,錯誤的打×,每題1分,合計(jì)1x10=10分)
1. C語言中,016218表示為一個八進(jìn)制整數(shù)。()
2. switch(c)語句中,c可以是int, long, unsigned char, char, unsigned int類型。()
3. 有數(shù)組定義int a1[2][2]={{1,2},{2}};則a1[1][1]的值為不確定的。()
4. 有#define MYPRINT(x) printf("#x") 則MYPRINT(test)的輸出結(jié)果為test.()
5. a=(b=4)+(c=6)是一個合法的賦值表達(dá)式。()
6. 自增運(yùn)算符(++)和自減運(yùn)算符(--)只能用于變量,不能用于常量和表達(dá)式。()
7. 若有說明static int a[3][4];?則數(shù)組a中各元素可在程序的編譯階段得到初值0。()
8. char const * const p;與const char * const p;是一樣,但是char * const p;與char const *p;是不一樣的。()
9. C++中const成員函數(shù)對于任何本類的數(shù)據(jù)成員都不能進(jìn)行寫操作。()
10. C++中所有的函數(shù)都是純虛函數(shù)的才是純虛類。()
二、填空題(20分)
注:以下填空題目都是以32位機(jī)為主
1. 給定結(jié)構(gòu)
#pragma pack(4)
struct A{
int a1:30;
char a2:2;
int a3:16;
int a4:16;
char a5;
int a6:3;
};
union B{
int b1:16;
char b2:2;
};
則
sizeof(A)= _____________
sizeof(B)= _____________
(5分)
2、 下面代碼實(shí)現(xiàn)統(tǒng)計(jì)一個整數(shù)二進(jìn)制格式中包含多少個'1'請補(bǔ)充完整(5分)
int GetBitNumber(int number)
{
int cnt=0;
while(number!=0)
{
__________________________;
__________________________;
}
return cnt;
}
3、 有如下定義
char *a1[]={"hello!","tclmob"};
char a2[]="\thello\0";
char a3[][8]={"hello!","tclmob"};
char *p1="hello";
char **p2=a1;
char a4[]={'h','e','l','l','o','\0'};
int a5[]={'h','e','l','l','o','\0'};
請問
sizeof(a1)= _____________
sizeof(a2)= _____________
strlen(a2)= _____________
sizeof(a3)= _____________
sizeof(p1)= _____________
sizeof(p2)= _____________
sizeof(a4)= _____________
sizeof(a5)= _____________
(4分)
4、 在一棵二叉樹上第8層的結(jié)點(diǎn)數(shù)最多是____個。(2分)
5、 進(jìn)程之間通信的途徑有____._____._____._____.(4分)
三、單/多項(xiàng)選擇題(每題2分,合計(jì)2*15=30分)
1、 對于浮點(diǎn)變量f,能實(shí)現(xiàn)對f中的值在小數(shù)點(diǎn)后第三位進(jìn)行四舍五入的表達(dá)式有_____
A)f=(f*100+0.5)/100.0 B)f=(f*100+0.5)/100
C)f=(int)(f*100+0.5)/100.0 D)f=((int)(f*100+0.5))/100.0
2、 若x、b、m、n均為int型變量,執(zhí)行下面語句后b的值為_____
m=20;n=6;
x=(--m==n++)?--m:++n
b=m++;
A)11 B)6 C)19 D)18
3、 下列選項(xiàng)中可以將變量n清零的表達(dá)式有____
A)n=~n&~n B)n=n&~n C)n=n^n D)n=n|n
4、 若有以下說明int a[5][9]; 則下列選項(xiàng)中對數(shù)組元素a[i][j]的正確引用有________(0<=i<4,0<=j<0)
A)*(&a[0][0]+9*i+j) B)*(a+i)(j)
C)*(*(a+i)+j) D)*(a[i]+j)
5、 下列選項(xiàng)中沒有構(gòu)成死循環(huán)的程序段有______
A)int i=100; B)for( ; ; )
while(1)
{ i=i%100+1;
if(i>=100) break;}
C)int k=0; D)int s=36; while(s);--s;
do{++k;}while(k>=0);
6、 有如下程序:
void fun(int i)
{
printf("%d,",i);
}
void main()
{
int i=5;
fun(i);
fun;
}
則運(yùn)行結(jié)果是_____
A)5,0, B)5, C)5,5, D)5,隨機(jī)值 E)可能出現(xiàn)運(yùn)行異常
7、 若變量已正確定義,要求程序段完成求5!的計(jì)算,下列選項(xiàng)中能完成此操作的程序段
A)for (i=1,p=1;i<=5;i++) p*=i;
B)for (i=1;i<=5;i++) {p=1;p*=i;}
C)i=1;p=1;while(i<=5) p*=i;i++;
D)i=1;p=1;do{p*=i;i++;}while(i<=5);
8、 有如下代碼:
int a,b,c;a=b=c=0;
0>1?a++:1>0?b++:c++;
printf("%d%d%d\n",a,b,c);
則輸出結(jié)果是_________
A)010 B)110 C)111 D)語法錯誤
9、 OSI模型中,會話層的主要任務(wù)有______
A)向用戶提供可靠的端到端服務(wù),透明地傳送報(bào)文
B)組織兩個會話進(jìn)程之間的通信,并管理數(shù)據(jù)的交換
C)處理兩個通信系統(tǒng)中交換信息的表示方式
D)確定進(jìn)程之間通信的性質(zhì),以滿足用戶的需要
10、有以下程序
main()
{
int x=102,y=012;
printf("%2d,%2d\n",x^y,x|y);
}
執(zhí)行后輸出結(jié)果是是()
A)4,110 B)002,112 D)108,110 D)106,110
11、設(shè)有如下的程序段:
char str[]="Hello";
char *ptr;
ptr=str;
執(zhí)行上面的程序段后,*(ptr+5)的值為______
A)'o' B)'\0' C)不確定的值 D)'o'的地址
12、一個棧的輸入序列為1 2 3,則可能是棧的輸出序列的是_____
A)231 B)321 C)312 D)123
13、下面關(guān)于完全二叉樹的敘述中,正確的有______
A)除了最后一層外,每一層上的結(jié)點(diǎn)數(shù)均達(dá)到最大值,
資料共享平臺
《TCL集團(tuán)校園招聘C/C++方向筆試題》(http://www.msguai.com)。B)可缺少若干個左右葉子結(jié)點(diǎn)
C)完全二叉樹一般不是滿二叉樹
D)具有結(jié)點(diǎn)的完全二叉樹的深度為[log2n]+1
14、下面概念中,屬于面向?qū)ο蠓椒ǖ挠衉__________
A)對象、消息 B)繼承、多態(tài) C)類、封裝 D)過程調(diào)用
15、在下列幾種排序方法中,要求內(nèi)存量最大的是__________.
A)插入排序 B)選擇排序 C)快速排序 D)歸并排序
四、簡答題(每題5分,合計(jì)5x4=20分)
1、 寫出程序執(zhí)行結(jié)果,并解釋原因(5分)
void getstr(char *p)
{
p=(char *)malloc(100);
strcpy(p,"TCL");
}
void main()
{
char *str;
getstr(str);
if(str)
{
str[3]='0';
printf("%s,%d\n",strlen(str));
free(str);
}
}
2、 寫一個“標(biāo)準(zhǔn)”宏,這個宏返回一個數(shù)組最高維的下標(biāo)(如數(shù)組a[2][4][6],執(zhí)行宏之后結(jié)果是2)。(5分)
3、 比較說明什么是Big-Endian,Little-Endian,網(wǎng)絡(luò)字節(jié)序。(5分)
4、 下面程序
main()
{
char *p1="abc", *p2="ABC", str[8]="xyz";
strcpy(str+2,strcat(p1,p2));
printf("%s \n",str);
}
運(yùn)行結(jié)果是什么?為什么?(5分)
五、編程題(20分)
有兩個單向鏈表,函數(shù)find_node作用是判斷兩個鏈表是否有交點(diǎn)(兩個鏈表有相同的節(jié)點(diǎn)),如果有返回第一個交點(diǎn)。請編程實(shí)現(xiàn)。
type struct tag_node
{
int key;
struct tag_node *next;
}node;
函數(shù)原型:
node* find_node(node *head1,node *head2)
入?yún)⒄f明:
head1,head2:待檢查的兩個鏈表
返回:
相交的節(jié)點(diǎn)
【TCL集團(tuán)校園招聘C/C++方向筆試題】相關(guān)文章:
網(wǎng)易校園招聘C/C++筆試題08-27
網(wǎng)易校園招聘C/C++筆試題09-14
C/C++筆試題05-24
普天C++筆試題09-10
C/C++面試題目07-05
聯(lián)想C++筆試題10-12
普天C++筆試題09-09
C++面試題11-08
C/C++筆試題目大全08-22
C,C++的幾個面試題小集08-22