1. 1-20的兩個(gè)數(shù)把和告訴A,積告訴B,A說不知道是多少,B也說不知道,這時(shí)A說我知道了,B接著說我也知道了,問這兩個(gè)數(shù)是多少?
答案:2和3
2 爸爸,媽媽,妹妹,小強(qiáng),至少兩個(gè)人同一生肖的概率是多少?
1-12*11*10*9/12*12*12*12 = 1-55/96 = 41/96
3, 計(jì)算 a^b << 2
答案:
運(yùn)算符優(yōu)先級:括號(hào),下標(biāo),->和.(成員)最高;
單目的比雙目的高;
算術(shù)雙目的比其他雙目的高;
位運(yùn)算 高于 關(guān)系運(yùn)算;
關(guān)系運(yùn)算 高于 按位運(yùn)算(與,或,異或);
按位運(yùn)算 高于 邏輯運(yùn)算;
三目的只有一個(gè) 條件運(yùn)算,低于邏輯運(yùn)算;
賦值運(yùn)算僅比 , (順序運(yùn)算)高。
在此題中,位左移”<<” 優(yōu)先級高于按位異或”^”,所以b先左移兩位(相當(dāng)于乘以4),
再與a異或。
例如: 當(dāng) a = 6; b = 4 時(shí); 則 a^b<<2 = 22
4 如何輸出源文件的標(biāo)題和目前執(zhí)行行的行數(shù)?
答案: printf(”The file name: %d\n”, __FILE__);
printf(”The current line No:%d\n”, __LINE__);
ANSI C標(biāo)準(zhǔn)預(yù)定義宏:
__LINE__
__FILE__
__DATE__
__TIME__
__STDC__ 當(dāng)要求程序嚴(yán)格遵循ANSI C標(biāo)準(zhǔn)時(shí)該標(biāo)識(shí)符被賦值為1
__cplusplus__ 當(dāng)編寫C++程序時(shí)該標(biāo)識(shí)符被定義
5 a[3][4]哪個(gè)不能表示 a[1][1]: *(&a[0][0]+5) *(*(a+1)+1) *(&a[1]+1) *(&a[0][0]+4)
答案: *(&a[1]+1)
a是數(shù)組的首地址,a[1]就表示a[1][0]地址了,不用再取地址了。
6 fun((exp1,exp2),(exp3,exp4,exp5))有幾個(gè)實(shí)參?
答案:兩個(gè)。
形式參數(shù):在聲明和定義函數(shù)時(shí),寫在函數(shù)名后的括號(hào)中的參數(shù)。
實(shí)參是調(diào)用參數(shù)中的變量,行參是被調(diào)用函數(shù)中的變量。
7. 希爾 冒泡 快速 插入 哪個(gè)平均速度最快?
答案:快速排序
快速排序、歸并排序和基數(shù)排序在不同情況下都是最快最有用的。
8. enum的聲明方式
答案:enum 枚舉類型名 {
枚舉常量1,
枚舉常量2,
…
枚舉常量n
};
For example:
enum weekday { sunday, monday, tuesday, wednesday, thursday, friday, saturda
y};
enum weekday week_day;//week_day 就是一個(gè)枚舉類型變量
9. 頻繁的插入刪除操作使用什么結(jié)構(gòu)比較合適,鏈表還是數(shù)組?
答案:鏈表
10. *p=NULL *p=new char[100] sizeof(p)各為多少?
答案:都為4。因?yàn)槎际侵羔橆愋停即鎯?chǔ)空間必然為4。
11. 順序查找的平均時(shí)間
答案:(1+2+3+…+n)/n = (n+1)/2
12. for(i=0,sum=0; i<10; ++i,sum+=i);的運(yùn)行結(jié)果
答案:sum = 55
13. 不能做switch()的參數(shù)類型是:
答案:switch的參數(shù)不能為浮點(diǎn)型。
14.不使用其他變量,交換兩個(gè)整型a,b的值
答案:x = x+y; y = x-y; x = x-y
15. 寫出float x 與“零值”比較的if語句。
if(x>=0.000001 && x<=-0.000001)(x不為0的比較)
float: 6位精度
double: 16位精度
16. 有個(gè)表tableQQ,有整型的ID項(xiàng)和字符類型的Nickname項(xiàng),這兩個(gè)項(xiàng)都不允許為空
(1)寫出建立該表的SQL語句
(2)找出Nickname為QQ的用戶,按ID降序排列的SQL語句
(3)寫出刪除ID為1234用戶記錄的SQL語句
(4)寫出添加ID為5555,Nickname為’1234′的SQL語句
答案:
(1) CREATE TABLE tableQQ
(
ID NUMBER(12) NOT NULL,
Nickname Varchar2(30) NOT NULL
);
(2) select * from tableQQ where Nickname = ‘QQ’ order by ID desc;
(3) delete from tableQQ where >
(4) insert into tableQQ values(5555,’1234′);