1、 單選題(每題1分,共70分)算法
- 如下哪一個表述不正確___D___。
A.ARM是一個公司的名稱shell
B.ARM是對一類微處理器的通稱 數組
C.ARM是一種技術的名字編輯器
D.ARM是一款芯片的名稱函數
- ( D ) 命令是在vi編輯器中執行保存退出。
A :q加密
B ZZ操作系統
C :q!命令行
D :wq設計
- GCC的正確編譯流程爲 ( A ) 。
A 預處理-編譯-彙編-連接 3d
B 預處理-編譯-連接-彙編
C 預處理-連接-編譯-彙編
D 編譯-預處理-彙編-連接
- 下列命令中,刪除文件的命令是:___D___。
A. ls
B. mkdir
C. tail
D. rm
- 嵌入式處理器指令的執行週期不包括__A____。
A.啓動
B.取指令
C.指令譯碼
D.執行指令
- 將系統啓動代碼讀入內存是___C___的主要職責。
A.內存管理
B.VFS
C.Boot Loader
D.虛擬內存
- 下列不屬於嵌入設計處理器自己帶有的基本接口是___C___。
A.串口
B.並口
C.PCIE
D.AD/DA
- 下列選項中,描述錯誤的是__D__。
A.arch爲體系結構相關的代碼
B.block爲塊設備的通用函數
C.crypto只能用於加密和散列算法
D.ipc進程件通訊代碼
- SRAM與DRAM相比,優勢是___A___。
A.SRAM比DRAM快
B.DRAM與SRAM耗電多
C.SRAM比DRAM存儲密度高
D.以上都是
- 預處理後的文件後綴名爲___D___。
- .c
- .C
- .M
- .i
- 下列哪條指令把寄存器R0、R1的值相加後存到R2中:__C____。
A.AND R0, R1, R2
B.SUB R0, R1, R2
C.ADD R2, R1, R0
D.AND R1, R2, R0
- 下面描述不屬於Bootloader的第二階段的是:___A___。
- 硬件設備初始化
- 初始化本階段要使用到的硬件設備
- 檢測系統內存映射
- 爲內核設置啓動參數
- 下面關於UBOOT有點描述錯誤的是:___D___。
- 開發源碼
- 僅支持Linux操做系統
- 支持多個處理器系列
- 較高的可靠性和穩定性
- 對於「ls –l|more」操做,命令解釋程序運行進程ls和more使用瞭如下哪一種通訊方式___A___。
- 管道
- 消息隊列
- 套接字
- 信號
- 下列關於Linux根文件目錄,描述錯誤的是___C___。
- /bin目錄下存放通常用戶可使用的基本命令
- /sbin目錄下存放系統命令
- /dev目錄下存放設備文件
- /etc目錄下存放各類配置文件
1六、指令「LDMIA R0!, {R1, R2, R3, R4}」的尋址方式爲( C )。
A. 當即尋址 B. 寄存器間接尋址
C. 多寄存器尋址 D. 堆棧尋址
1七、下列不屬於RISC計算機特色的是( C )。
A. 流水線每週期前進一步。 B. 更多通用寄存器。
C. 指令長度不固定,執行須要多個週期。
D. 獨立的Load和Store指令完成數據在寄存器和外部存儲器之間的傳輸。
1八、USB接口移動硬盤最合適的傳輸類型爲( B )。
A. 控制傳輸 B. 批量傳輸 C. 中斷傳輸 D. 等時傳輸
1九、在嵌入式系統設計中,嵌入式處理器選型是在進行( C )時完成。
A. 需求分析 B. 系統集成 C. 體系結構設計 D. 軟硬件設計
20、無符號二進制數左移一位,則數值( A )。
A. 增大一倍 B. 減少一倍 C. 增大10倍 D. 不變
2一、登錄系統後首先進入下列哪個目錄?( D )
A./home
B.root的主目錄
C./root
D.用戶本身的主目錄
2二、用」rm -i」,系統會提示什麼來讓你確認 ( B )
A.命令行的每一個選項
B.是否真的刪除
C.是否有寫的權限
D.文件的位置
2三、除非特別指定,cp假定要拷貝的文件在下面哪一個目錄下( B )
A.home目錄
B.當前目錄
C.root目錄
D.用戶目錄
2四、Linux的創始人是芬蘭Helsinki大學的學生,他是誰( B )
A.Andrew Tanenbaum
B.Linus Torvalds
C.Bill Gates
D.Richard Stallman
2五、假如你獲得一個運行命令被拒絕的信息,你能夠用哪一個命令去修改它的權限使之能夠正常運行( B )
A.path=
B.chmod
C.chgrp
D.chown
2六、顯示用戶的主目錄的命令是什麼( A )
A.echo $HOME
B.echo $USERDIR
C.echo $ECHO
D.echo $ENV
2七、用來分離目錄名和文件名的字符是什麼( A )
A.反斜槓 (/)
B.點號 (.)
C.減號 (-)
D.星號 (*)
2八、肯定myfile的文件類型的命令是什麼( C )
A.type myfile
B.type -q myfile
C.file myfile
D.whatis myfile
2九、按_____鍵能停止當前運行的命令( B )
A.Ctrl-D
B.Ctrl-C
C.Ctrl-B
D.Ctrl-F
30、哪一個符號加在命令後面能夠在後臺執行程序( B )
A.@ B.&
C.# D.*
3一、經過shell執行一個命令,必須先敲入一個__B___
A. 參數
B.命令
C.操做符
D.終端ID號
3二、當登陸Linux時,一個具備惟一進程ID號的shell將被調用,這個ID是什麼?( A )
A.PID B.UID
C.NID D.CID
3三、想查找system-config-network所在的目錄,經過什麼命令能夠實現?B
A.whereis system-config-network
B.which system-config-network
C.look system-config-network
D.show system-config-network
3四、經過下面哪一個命令能夠打印顯示當前工做的目錄(B)
A.cd B.pwd
C.ls D.ls -l
3五、本機有兩塊硬盤,分別放置在IDE1和IDE2的主盤上,其中掛在IDE2上的主盤有三個主分區,在Linux下IDE2上的主盤第二個主分區的名稱爲:C
A.hda2
B.hdb2
C.hdc2
D.hdd2
36、一個C程序的執行是從( A )
A.本程序的main函數開始,到main函數結束
B.本程序文件的第一個函數開始,到本程序文件的最後一個函數結束
C.本程序的main函數開始,到本程序文件的最後一個函數結束
D.本程序文件的第一個函數開始,到本程序main函數結束
37、在一個單鏈表中,若要刪除由指針q所指結點的後繼,則(D)
A.p= q->next; p->next= q->next B.p = q->next; p->next =p
C.p= q->next; q->next= p->next D.q->next= q->next->next; q->next=q
38、下列四組選項中,均不是C語言關鍵字的選項是( A )
A.define B.getc C.include D.while
IF char scanf go
type printf case pow
39、C語言中的標識符只能由字母、數字和下劃線三種字符組成,且第一個字符( C )
A.必須爲字母 B.必須爲下劃線
C.必須爲字母或下劃線 D.能夠是字母,數字和下劃線中任一種字符
40、下面四個選項中,均是不合法的浮點數的選項是 B
A) 160. B) 123 C)一.18 D)一e3
0.12 2e4.2 123e4 .234
e3 .e5 0.0 1e3
41、棧結構一般採用的兩種存儲結構是( A )
A、線性存儲結構和鏈表存儲結構 B、散列方式和索引方式
C、量表存儲結構和數組 D、線性存儲結構和非線性存儲結構
42、一個向量第一個元素的存儲地址是100,每一個元素的長度爲2,則第5個元素的地址是( B )
A、110 B、108 C、100 D、120
43、如有代數式3ae/bc,則不正確的C語言表達式是( C )
A. a/b/c*e*3 B.3*a*e/b/c
C.3*a*e/b*c D.a*e/c/b*3
44、如下不正確的敘述是( D )
A.在C程序中,逗號運算符的優先級最低
B.在C程序中,APH和aph是兩個不一樣的變量
C.若a和b類型相同,在執行了賦值表達式a=b後b中的值將放人a中,而b中的值不變。
D.當從鍵盤輸入數據時,對於整型變量只能輸入整型數值,對於實型變量只能輸入實型數值。
45、在C語言中,要求運算數必須是整型的運算符是( D )
A. / B. ++ c. != D.%
46、如有定義:int a=7;float x=2.5,y=4.7;則表達式x+a%3*(int)(x+y)%2/4的值是 ( A)
A.2·500000 B.2.7500OO c. 3.500000 D. 0.000000。
47、循環隊列用數組A[0,m-1]存放其元素值,已知其頭尾指針分別是front和rear,則當前隊列中的元素個數是( A )
A、(rear-front+m)%m B、rear-front+1
C、rear-front-1 D、rear-front
48、向一個棧頂指針爲Top的鏈棧中插入一個s所指結點時,其操做步驟是(D )
A.Top->next=s B.s->next= Top->next; Top->next=s
C.s->next= Top; Top =s D.s->next= Top; Top = Top->next
49、若x ,y均定義爲int型,z定義爲double型,如下不合法的scanf函數調用語句是( D )
A. scanf(" %d%lx,%le",&x,&y,&z);
B. scanf("%2d * %d%lf"&x,&y,&z );
C. scanf("%x %* d%o",&x,&y);
D. scanf("%x%o%6.2f",&x,&y,&z);
50、如下說法正確的是( D )
A.輸入項能夠爲一實型常量,如scanf("%f",3.5);
B.只有格式控制,沒有輸入項,也能進行正確輸入,如scanf("a=%d,b=%d");
C.當輸入一個實型數據時,格式控制部分應規定小數點後的位數,
如scanf("%4.2f",&f);
D.當輸入數據時,必須指明變量的地址,如scanf("%f",&f);
51、根據下面的程序及數據的輸入方式和輸出形式,程序中輸入語句的正確形式應該爲( C )
main()
{char ch1 ,ch2 ,ch3;
輸入語句
printf("%c%c%c",ch1,ch2,ch3);}
輸入形式: A B C
輸出形式: A B
A. scanf("%c%c%c",&ch1,&ch2,&ch3);
B. scanf("%c,%c,%c", &ch1,&ch2, &ch3);
C. scanf("%c %c %c",&ch1,&ch2,&ch3);
D. scanf("%c%c",&ch1,&ch2,&ch3);
52、下關於運算符優先順序的描述中正確的是( C )
A.關係運算符< 算術運算符< 賦值運算符< 邏輯與運算符
B.邏輯 運算符< 關係運算符< 算術運算符< 賦值運算符
C.賦值運算符< 邏輯與運算符< 關係運算符< 算術運算符
D.算術運算符< 關係運算符< 賦值運算符< 邏輯與運算符
53、判斷char型變量c1是否爲小寫字母 正確表達式爲( D )
A.' a' <=cl<=' z' B. (cl> = a)&&(cl<=z)
C.(' a' >=cl)||(' z' < = cl) D.(c1>='a')&&(cl<='z')
54、執行如下語句後a的值爲( C )
int a,b,c;
a= b= c= 1;
++a||++b&&++c
A.錯誤 B. 0 C. 2 D. 1
55、下列運算符中優先級最低的是( A )
A.?: B.&& c.+ D. !=
56、如下程序的運行結果是( C )
main()
{int m=5;
if(m++> 5) printf(" %d\n",m);
e1se printf("%d\n",m- - );
}
A.4 B.5 C.6 D.7
57、如下程序的輸出結果是( C )
#include <stdio.h>
main()
{
int a=100,x =10,y=20,okl=5,ok2=0;
if(x<y)
if(y!=10)
if(!okl) a=1;
else
if(ok2) a=10;
a=-1;
printf( "%d\n",a );
}
A. 1 B. 0 C.-1 D.值不肯定
58、設有程序段( C )
int k=10;
while (k=0) k= k—1;
則下面描述中正確的是
A. while循環執行10次 B.循環是無限循環
C.循環體語句一次也不執行 D.循環體語句執行一次
59、下面程序的運行結果是 ( B )
#include <stdio. h>
main()
{int i;
for(i=1;i<=5;i++)
switch(i%5)
{case 0:printf("* ");break;
case 1 :printf("#");break;
default :printf("\n");
case 2 :printf("&");}
}
A.#&&&* B. #& C. # D.#&
& &
& &*
60、下面程序段( D )
for (t=1; t<=100;t++)
{scanf("%d",&x);
if(x<0) continue;
printf("%3d",t);}
A. 當x<0時整個循環結束
B. x>=0時什麼也不輸出
C. printf函數永遠也不執行
D.最多容許輸出100個非負整數
2、多選題(10題每題3分共30分)
一、下面代碼行的空格符合規範的是( AC )
A.*pApple = 'a
B. flag =! BIsEmpty
C. p = &cMem
D. i ++
2 、設已有定義:float x;,則如下對指針變量p進行定義且賦初值的語句中不正確的是:( ABC )。
A、float *p=1024; B、int *p=(float)x;
C、float p=&x; D、float *p=&x;
三、 設變量x,y均已正肯定義並賦值,如下if語句中,在編譯時能產生正確信息的是( ABD )。
A、if(x++);
B、if(x>y&&y!=0);
C、if(x>0)x-- else y++;
D、if(y<0){;} else x++;
四、如下for循環的執行次序是( A )
for (x=0, y=0; (y=123)&&x<4; x++)
A 執行3次
B. 循環次數不定
C. 執行4次
D. 是無限次循環
五、代碼文件由( ABD )組成
A.定義文件開頭處的版權和版本聲明
B. API函數的調用示例
C.全局變量的聲明
D.程序的實現體(包括數據和代碼)
六、若用數組名做爲函數調用時的實參,則實際上傳遞給形參的是( C )
A.數組中所有元素的值
B.數組的第一個元素的值
C.數組的首地址
D. 數組元素的個數
七、下面程序的輸出結果是( A )
#include <stdio.h>
int x,y ;
f( )
{ int y, a = 25 , b=10;
x =a + b; y = a - b;
return;}
main()
{
int a =9 , b =5;
x = a+b; y = a-b;
f();
printf("d%,d%\n",x,y); }
A. 14,4 B. 35,15 C.35,4 D. 14,15
八、下列選項中正確的語句組是( CD )
A.char s[8]; s={"Beijing"}; B.char *s; s={"Beijing"};
C.char s[8]="BeijingT"; D.char *s; s="Beijing";
九、如有定義:int *p[3];,則如下敘述中正確的是( AD )
A.定義了一個可指向一維數組的指針變量p
B.定義了一個指針數組p,該數組含有三個元素,每一個元素都是基類型爲int的指針
C.定義了一個名爲*p的整型數組,該數組含有三個int類型元素
D.定義了一個可指向一維數組的指針變量p,所指一維數組應具備三個int類型元素
十、下面程序的輸出結果是( C )
int x =1;
f()
{static int i = 2; int x = 10;
x+=++i;
printf("%d\n",x);}
main()
{
int i;
for (i=1;i<4;i++) {++x; f();}
printf("%d\n",x);}
A. 13,17,22,4 B.13,14,15,15 C.13,14,15,4 D.無答案
3、判斷題(10題每題1分共10分)
44、用do-while語句構成的循環,當while後的表達式的值爲零時結束循環。( )
4五、結構體和共同體能夠相互欠套,均可以作爲函數的參數使用。( )
4六、在C語言裏容許兩個同類型的結構體之間相互賦值,也能夠將一組常量賦給結構體。( )
4七、在C語言裏只能對外部或靜態的數組進行初始化。( )
4八、在C語言裏,一個共同體不是同時存放多個成員變量的,而是存放其中的一個值,可是不肯定是那個值。( )
4九、%-20s的做用是告訴系統按照字符串的形式輸出,佔20列,向右對齊。( )
50、賦值表達式是一種表達式,它能夠出如今任何容許表達式出現的地方,而賦值語句則不能。( )
5一、continue語句的做用是跳過循環本中剩餘的語句而強行執行下一次循環。continue語句只用在for、while、do-while等循環體中,常與if條件語句一塊兒使用,用來加速循環。( )
5二、在C語言裏數組的下標都是取整數,若是是小數將不會作處理。( )
5三、如有定義:int (*p)[4],則p是一個指向含有四個整型元素的一維數組 的指針。( )