當(dāng)前位置:首頁 > 嵌入式培訓(xùn) > 嵌入式招聘 > 嵌入式面試題 > 50道經(jīng)典c語言筆試題(精華)
1.2. 算法具有五個特性,以下選項中不屬于算法特性的是 [單選題] [必答題]
○ A. 有窮性
○ B. 簡潔性(正確答案)
○ C. 可行性
○ D. 確定性
3. 以下敘述中正確的是 [單選題] [必答題]
○ A. 用C程序?qū)崿F(xiàn)的算法必須要有輸入和輸出操作
○ B. 用C程序?qū)崿F(xiàn)的算法可以沒有輸出但必須要有輸入
○ C. 用C程序?qū)崿F(xiàn)的算法可以沒有輸入但必須要有輸出(正確答案)
○ D. 用C程序?qū)崿F(xiàn)的算法可以既沒有輸入也沒有輸出
4. 用C語言編寫的代碼程序 [單選題] [必答題]
○ A. 可立即執(zhí)行
○ B. 是一個源程序(正確答案)
○ C. 經(jīng)過編譯即可執(zhí)行
○ D. 經(jīng)過編譯解釋才能執(zhí)行
5. 一個算法應(yīng)該具有“確定性”等5個特性,下面對另外4個特性的描述中錯誤的是 [單選題] [必答題]
○ A. 有零個或多個輸入
○ B. 有零個或多個輸出(正確答案)
○ C. 有窮性
○ D. 可行性
6. 以下敘述中正確的是 [單選題] [必答題]
○ A. C語言的源程序不必通過編譯就可以直接運行
○ B. C語言中的每條可執(zhí)行語句最終都將被轉(zhuǎn)換成二進(jìn)制的機器指令(正確答案)
○ C. C源程序經(jīng)編譯形成的二進(jìn)制代碼可以直接運行
○ D. C語言中的函數(shù)不可以單獨進(jìn)行編譯
7. 要把高級語言編寫的源程序轉(zhuǎn)換為目標(biāo)程序,需要使用 [單選題] [必答題]
○ A. 編輯程序
○ B. 驅(qū)動程序
○ C. 診斷程序
○ D. 編譯程序(正確答案)
8. 以下敘述中正確的是 [單選題] [必答題]
○ A. C語言比其他語言高級
○ B. C語言可以不用編譯就能被計算機識別執(zhí)行
○ C. C語言以接近英語國家的自然語言和數(shù)學(xué)語言作為語言的表達(dá)形式(正確答案)
○ D. C語言出現(xiàn)的最晚,具有其他語言的一切優(yōu)點
9. C語言中用于結(jié)構(gòu)化程序設(shè)計的三種基本結(jié)構(gòu)是 [單選題] [必答題]
○ A. 順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)(正確答案)
○ B. if、switch、break
○ C. for、while、do-while
○ D. if、for、continue
10. 以下敘述中錯誤的是 [單選題] [必答題]
○ A)用戶所定義的標(biāo)識符允許使用關(guān)鍵字(正確答案)
○ B)用戶所定義的標(biāo)識符應(yīng)盡量做到“見名知意”
○ C)用戶所定義的標(biāo)識符必須以字母或下劃線開頭
○ D)用戶定義的標(biāo)識符中,大、小寫字母代表不同標(biāo)識
11. 以下敘述中錯誤的是 [單選題] [必答題]
○ A)C語句必須以分號結(jié)束
○ B)復(fù)合語句在語法上被看作一條語句
○ C)空語句出現(xiàn)在任何位置都不會影響程序運行(正確答案)
○ D)賦值表達(dá)式末尾加分號就構(gòu)成賦值語句
12. 以下能正確定義且賦初值的語句是 [單選題] [必答題]
○ A)int n1=n2=10;
○ B)char c=32;(正確答案)
○ C)float f=f+1.1;
○ D)double x=12.3E2.5;
13. 設(shè)有定義:int k=1,m=2; float f=7;,則以下選項中錯誤的表達(dá)式是 [單選題] [必答題]
○ A)k=k>=k
○ B)-k++
○ C)k%int(f)(正確答案)
○ D)k>=f>=m
14. 以下不能定義為用戶標(biāo)識符的是 [單選題] [必答題]
○ A)Main
○ B)_0
○ C)_int
○ D)sizeof(正確答案)
15. 有以下程序
main()
{
int m = 12, n = 34;
printf (" %d %d", m++, ++n);
printf (" %d %d \n", n++, ++m );
}
程序運行后的輸出結(jié)果是 [單選題] [必答題]
○ A)12353514(正確答案)
○ B)12353513
○ C)12343514
○ D)12343513
16. 下列選項中,不能用作標(biāo)識符的是 [單選題] [必答題]
○ A) _1234_
○ B) _1_2
○ C) int_2_
○ D) 2_int_(正確答案)
17. 有以下程序
main()
{
int m=3,n=4,x;
x=-m++;
x=x+8/++n;
printf("%d\n",x);
}
程序運行后的輸出結(jié)果是 [單選題] [必答題]
○ A) 3
○ B) 5
○ C) -1
○ D) -2(正確答案)
18. 若以下選項中的變量已正確定義,則正確的賦值語句是 [單選題] [必答題]
○ A) x1=26.8%3;
○ B) 1+2=x2;
○ C) x3=0x12;(正確答案)
○ D) x4=1+2=3;
19. 設(shè)有以下定義
int a=0;
double b=1.25;
char c=’A’;
#define d 2
則下面語句中錯誤的是 [單選題] [必答題]
○ A) a++;
○ B) b++
○ C) c++;
○ D) d++;(正確答案)
20. 設(shè)有定義:float a=2,b=4,h=3;,以下C語言表達(dá)式與代數(shù)式 計算結(jié)果不相符的是 [單選題] [必答題]
○ A) (a+b) *h/2
○ B) (1/2)*(a+b) *h(正確答案)
○ C) (a+b) *h*1/2
○ D) h/2*(a+b)
21. 以下敘述中正確的是 [單選題] [必答題]
○ A) C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方(正確答案)
○ B) 花括號“{”和“}”只能作為函數(shù)體的定界符
○ C) 構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名
○ D) 分號是C語句之間的分隔符,不是語句的一部分
22. 以下選項中可作為C語言合法整數(shù)的是 [單選題] [必答題]
○ A) 10110B
○ B) 0386
○ C) 0Xffa(正確答案)
○ D) x2a2
23. 下列關(guān)于單目運算符++、--的敘述中正確的是 [單選題] [必答題]
○ A) 它們的運算對象可以是任何變量和常量
○ B) 它們的運算對象可以是char型變量和int型變量,但不能是float型變量
○ C) 它們的運算對象可以是int型變量,但不能是double型變量和float型變量
○ D) 它們的運算對象可以是char型變量、int型變量和float型變量(正確答案)
24. 以下非法的賦值語句是 [單選題] [必答題]
○ A) n=(i=2,++i);
○ B)j++;
○ C) ++(i+1);(正確答案)
○ D)x=j>0;
25. 設(shè)a和b均為double型變量,且a=5.5、b=2.5,則表達(dá)式(int)a+b/b的值是 [單選題] [必答題]
○ A)6.500000
○ B)6
○ C) 5.500000
○ D) 6.000000(正確答案)
26. 若有以下程序:
main()
{
int k=2,i=2,m;
m=(k+=i*=k);
printf(“%d,%d\n”,m,i);
}
執(zhí)行后的輸出結(jié)果是 [單選題] [必答題]
○ A) 8,6
○ B) 8,3
○ C) 6,4(正確答案)
○ D) 7,4
27. 以下選項中,與k=n++完全等價的表達(dá)式是 [單選題] [必答題]
○ A) k=n,n=n+1(正確答案)
○ B) n=n+1,k=n
○ C) k=++n
○ D) k+=n+1
28. 若有定義:int a=8,b=5,c;,執(zhí)行語句c=a/b+0.4;后,c的值為 [單選題] [必答題]
○ A) 1.4
○ B) 1(正確答案)
○ C) 2.0
○ D) 2
29. 以下選項中不屬于C語言的類型的是 [單選題] [必答題]
○ A) signed short int
○ B) unsigned long int
○ C) unsigned int
○ D) long short(正確答案)
30. 以下敘述正確的是 [單選題] [必答題]
○ A) 可以把define和if定義為用戶標(biāo)識符
○ B) 可以把define定義為用戶標(biāo)識符,但不能把if定義為用戶標(biāo)識符(正確答案)
○ C) 可以把if定義為用戶標(biāo)識符,但不能把define定義為用戶標(biāo)識符
○ D) define和if都不能定義為用戶標(biāo)識符
31. 假定x和y為 double型,則表達(dá)式x=2,y=x+3/2的值是 [單選題] [必答題]
○ A) 3.500000
○ B) 3
○ C) 2.000000
○ D) 3.000000(正確答案)
32. 以下合法的賦值語句是 [單選題] [必答題]
○ A) x=y=100
○ B) d--;(正確答案)
○ C) x+y;
○ D) c=int(a+b);
33. 設(shè)正x、y均為整型變量,且x=10 y=3,則以下語句的輸出結(jié)果是 printf(”%d,%d\n”,x--,--y); [單選題] [必答題]
○ A) 10,3
○ B) 9.3
○ C) 9.2
○ D)10.2(正確答案)
34. 下列選項中,合法的C語言關(guān)鍵字是 [單選題] [必答題]
○ A) VAR
○ B) cher
○ C) integer
○ D) default(正確答案)
35. C語言中運算對象必須是整型的運算符是 [單選題] [必答題]
○ A) %=(正確答案)
○ B) /
○ C) =
○ D) 〈=
36. 若已定義x和y為double類型,則表達(dá)式x=1,y=x+3/2 的值是 [單選題] [必答題]
○ A) 1
○ B) 2
○ C) 2.0(正確答案)
○ D) 2.5
37. 若變量a、iI已正確定義,且i已正確賦值,合法的語句是 [單選題] [必答題]
○ A) a==1
○ B) ++i;(正確答案)
○ C) a=a++=5;
○ D) a=int(i);
38. 設(shè)有 int x=11; 則表達(dá)式 (x++ * 1/3) 的值是 [單選題] [必答題]
○ A) 3(正確答案)
○ B) 4
○ C) 11
○ D) 12
39. 下列程序的輸出結(jié)果是
main()
{
double d=3.2;
int x,y;
x=1.2;
y=(x+3.8)/5.0;
printf("%d \n", d*y);
} [單選題] [必答題]
○ A) 3
○ B) 3.2
○ C) 0(正確答案)
○ D) 3.07
40. 以下選項中屬于C語言的數(shù)據(jù)類型是 [單選題] [必答題]
○ A) 復(fù)數(shù)型
○ B) 邏輯型
○ C) 雙精度型(正確答案)
○ D) 集合型
41. 在C語言中,不正確的int類型的常數(shù)是 [單選題] [必答題]
○ A) 32768(正確答案)
○ B) 0
○ C) 037
○ D) 0xAF
42. 設(shè)x、y、z和k都是int型變量,則執(zhí)行表達(dá)式:x=(y=4,z=16,k=32)后,x的值為 [單選題] [必答題]
○ A) 4
○ B) 16
○ C) 32(正確答案)
○ D) 52
43. 設(shè)有如下的變量定義:
int i=8, k, a, b;
unsigned long w=5;
double x=1, 42, y=5.2;
則以下符合C語言語法的表達(dá)式是 [單選題] [必答題]
○ A) a+=a-=(b=4)*(a=3)(正確答案)
○ B) x%(-3);
○ C) a=a*3=2
○ D) y=float(i)
44. 假定有以下變量定義:
int k=7,x=12;
則能使值為3的表達(dá)式是 [單選題] [必答題]
○ A) x%=(k%=5)
○ B) x%=(k-k%5)
○ C) x%=k-k%5
○ D) (x%=k)-(k%=5)(正確答案)
45. 設(shè)x和y均為int型變量,則以下語句:x+=y;y=x-y;x-=y;的功能是 [單選題] [必答題]
○ A) 把x和y按從大到小排列
○ B) 把x和y按從小到大排列
○ C) 無確定結(jié)果
○ D) 交換x和y中的值(正確答案)
46. 若已定義x和y為double類型,則表達(dá)式:x=1,y=x+3/2的值是 [單選題] [必答題]
○ A)1
○ B)2
○ C)2.0(正確答案)
○ D)2.5
47. C語言提供的合法的數(shù)據(jù)類型關(guān)鍵字是 [單選題] [必答題]
○ A) Double
○ B) short(正確答案)
○ C) integer
○ D) Char
48. 若有說明和語句:
int a=5;
a++;
此處表達(dá)式a++的值是 [單選題] [必答題]
○ A) 7
○ B) 6
○ C) 5(正確答案)
○ D) 4
49. C語言中最簡單的數(shù)據(jù)類型包括 [單選題] [必答題]
○ A) 整型、實型、邏輯型
○ B) 整型、實型、字符型(正確答案)
○ C) 整型、字符型、邏輯型
○ D) 整型、實型、邏輯型、字符型
50. 設(shè) int a=12,則執(zhí)行完語句 a+=a-=a*a后,a的值是 [單選題] [必答題]
○ A) 552
○ B) 264
○ C) 144
○ D) -264(正確答案)
51. C語言程序的基本單位是 [單選題] [必答題]
○ A) 程序行
○ B) 語句
○ C) 函數(shù)(正確答案)
○ D) 字符
52. 若有定義:int a = 10, b = 9, c = 8;接著順序執(zhí)行下列語句后,變量b中的值是__________。
c = ( a -= ( b - 5 ) ) ;
c = ( a % 11 ) + ( b = 3 ); [填空題] [必答題]
_________________________________(答案:3)
53. 設(shè)x和y均為int型變量,且x=1,y=2,則以下表達(dá)式的值為________。
1.0+x/y [填空題] [必答題]
_________________________________(答案:1.0)
54. 設(shè)a、b、c為整型數(shù), 且a=2、b=3、c=4, 則執(zhí)行完以下語句:
a*=16+(b++)-(++c);
后,a的值是___________。 [填空題] [必答題]
_________________________________(答案:28)