C語言高級語言程序設(shè)計(jì)期末復(fù)習(xí)題-創(chuàng)新互聯(lián)

C程序設(shè)計(jì)期末復(fù)習(xí)

如皋網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,如皋網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為如皋上1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請找那個(gè)售后服務(wù)好的如皋做網(wǎng)站的公司定做!第一章程第二章

算法的五個(gè)特性?

1、有窮性:算法的有窮性是指算法必須能在執(zhí)行有限個(gè)步驟之后終止

2、確切性:算法的每一步驟必須有確切的定義;

3、輸入:一個(gè)算法有0個(gè)或多個(gè)輸入,以刻畫運(yùn)算對象的初始情況,所謂0個(gè)輸入是指算法本身定出了初始條件;

4、輸出:一個(gè)算法有一個(gè)或多個(gè)輸出,以反映對輸入數(shù)據(jù)加工后的結(jié)果。沒有輸出的算法是毫無意義的;

5、可行性:算法中執(zhí)行的任何計(jì)算步都是可以被分解為基本的可執(zhí)行的操作步,即每個(gè)計(jì)算步都可以在有限時(shí)間內(nèi)完成。

1、程序流程圖中的帶有箭頭的線段表示的是( ) 。

A. 圖元關(guān)系

B. 數(shù)據(jù)流

C. 控制流

D. 調(diào)用關(guān)系

答案:C

2、結(jié)構(gòu)化程序設(shè)計(jì)的基本原則不包括( )。

A. 多態(tài)性

B. 自頂向下

C. 模塊化

D. 逐步求精

答案: A

基本原則:自頂向下,逐步細(xì)化,模塊化設(shè)計(jì),結(jié)構(gòu)化編碼

第三章簡單程序設(shè)計(jì)

?書寫格式:分號結(jié)束、注釋

?標(biāo)識符1)對變量、函數(shù)、數(shù)組等命名的有效字符

2)命名規(guī)則:只能由字母數(shù)字下劃線組成,且第一個(gè)字符必須為字母或下劃線

?整型常量:包括十進(jìn)制整數(shù)、八進(jìn)制整數(shù)【以0開頭eg0123=十進(jìn)制83】、十六進(jìn)制整數(shù)【以0x開頭的數(shù)字0x123=十進(jìn)制291】? 103L, 256U

?實(shí)型常量:默認(rèn)double包括十進(jìn)制小數(shù)形式、指數(shù)形式?? 1.25f?? 1.25e-2f?? 1.25L (louble double)

?字符常量 1、普通字符:eg‘a(chǎn)’,‘1’,‘#’(字符常量:只能是一個(gè)字符)

????? 2、轉(zhuǎn)義字符:eg’\t’

?字符串常量

?符號常量? #define

?變量:強(qiáng)制類型轉(zhuǎn)換、自動(dòng)類型轉(zhuǎn)換

?注意數(shù)據(jù)的溢出問題

?各種運(yùn)算符:優(yōu)先級與結(jié)合性

?自增自減運(yùn)算符

?算術(shù)運(yùn)算、關(guān)系運(yùn)算、邏輯運(yùn)算優(yōu)先級

?數(shù)據(jù)類型的自動(dòng)轉(zhuǎn)化:

1)若參與運(yùn)算量的類型不同,則先轉(zhuǎn)換成同一類型,然后進(jìn)行運(yùn)算。

2)轉(zhuǎn)換按數(shù)據(jù)長度增加的方向進(jìn)行,以保證精度不降低。如int型和long型運(yùn)算時(shí),先把int量轉(zhuǎn)成long型后再進(jìn)行運(yùn)算。

a.若兩種類型的字節(jié)數(shù)不同,轉(zhuǎn)換成字節(jié)數(shù)高的類型

b.若兩種類型的字節(jié)數(shù)相同,且一種有符號,一種無符號,則轉(zhuǎn)換成無符號類型

3)所有的浮點(diǎn)運(yùn)算都是以雙精度進(jìn)行的,即使僅含float單精度量運(yùn)算的表達(dá)式,也要先轉(zhuǎn)換成double型,再作運(yùn)算。

4)char型和short型參與運(yùn)算時(shí),必須先轉(zhuǎn)換成int型。

5)在賦值運(yùn)算中,賦值號兩邊量的數(shù)據(jù)類型不同時(shí),賦值號右邊量的類型將轉(zhuǎn)換為左邊量的類型。如果右邊量的數(shù)據(jù)類型長度左邊長時(shí),將丟失一部分?jǐn)?shù)據(jù),這樣會(huì)降低精度,丟失的部分按四舍五入向前舍入。

?&&?? || 短路現(xiàn)象

1、以下合法的字符常量是( )。

A. '\109'

B. '\x64a'

C. '\t'

D. 'ab'

答案: C

2、以下選項(xiàng)中不合法的整型常量是( )。

A. -012

B. 8E2.5

C. 123L

D. 0x35

答案:B

解析:以e或E表示以十為底的指數(shù),特別的e或E前必須有數(shù)字,其后必須為整數(shù)

3、若已定義x和y為double型,變量,則表達(dá)式x=1,y=x+3/2的值是( )

答案: 2.0

4、下面程序的輸出結(jié)果是( )。

int a;printf("%d\n",(a=3*5,a*4,a+5));

答案:20

解:逗號表達(dá)式結(jié)果取最后一個(gè)表達(dá)式

5、已知int x=5,y=5,z=5;則執(zhí)行語句x%=y+z;后,x的值是

答案:5

解:x=x%(y+z)

6、C語言中,數(shù)字029是一個(gè)( )。

A. 十進(jìn)制數(shù)

B. 八進(jìn)制數(shù)

C. 十六進(jìn)制數(shù)

D. 不合法

答案:D

解:八進(jìn)制數(shù),每位上的數(shù)只能為0~7

7、代數(shù)式2lnxcosx/3x,則正確的C語言表達(dá)式是( )。

A. 2*ln(x)*cos(x)/3*x

B. 2*ln(x)*cos(x)/(3*x)

C. 2*log(x)*cos(x)/3*x

D. 2*log(x)*cos(x)/(3*x)

答案:D

8、對于數(shù)據(jù)類型的自動(dòng)轉(zhuǎn)換,正確的說法是( )。

A. 字符型與單精度實(shí)型進(jìn)行運(yùn)算時(shí)都轉(zhuǎn)換為雙精度實(shí)型

B. 字符型與字符型進(jìn)行轉(zhuǎn)換時(shí)不進(jìn)行轉(zhuǎn)換

C. 整型與字符型進(jìn)行運(yùn)算時(shí)根據(jù)字符的ASCII碼值來決定是否進(jìn)行類型轉(zhuǎn)換

D. 單精度實(shí)型之間進(jìn)行運(yùn)算時(shí)不進(jìn)行轉(zhuǎn)換。

答案:A

9、下列程序的輸出結(jié)果是____。

#include

void main()

{int a,b=322;

float x,y=8.88;

char c1='k',c2;

a=y;

x=b;

a=c1;

c2=b;

printf("%d,%f,%d,%c",a,x,a,c2);}

答案:107,322.000000,107,B

10、下列程序的輸出結(jié)果是____。

#include

void main()

{

int i=8;

printf("%d\n",++i);

printf("%d\n",--i);

printf("%d\n",i++);

printf("%d\n",i--);

printf("%d\n",-i++);

printf("%d\n",-i--);

}

答案:9 8 8 9 -8 -9

11、設(shè) int x=1,y=1; 表達(dá)式(!x||y--)的值

答案:1

解析:短路

12、以下哪個(gè)直接量是十進(jìn)制的124?

A.0124?? B.0x124?? C.124d?? D.0174

答案:D

解:C語言無d這種后綴

13、以下代碼的輸出是

int x=0,y=0,z=0;

z =(x==1)&&(y=2);printf("%d ", y);

答案:0

14、對于以下代碼

int i

scanf("%d",&i);

i %= 4;執(zhí)行后,i會(huì)有幾種可能性?

答案:7

解:①能被整除:即余數(shù)為 0 時(shí),即 i = 0;

②不能被整除:即余數(shù)為位于區(qū)間 ( - 4 , 0 ) U ( 0 , 4 ) 的整型數(shù),則 i={ - 3,- 2,- 1,1,2,3 } 。

第四章選擇結(jié)構(gòu)程序設(shè)計(jì)

1)If else配對問題

2)switch break

3)循環(huán)體內(nèi)的break、continue

1、

#include

void main(){

int a=1,b=2,c=3;

if(c=a) printf("%d\n",c);

else printf("%d\n",b);}

答案:1

解:注意是賦值還是判斷

2、#include

void main()

{char? c1,c2,c3,c4,c5,c6;

scanf("%c%c%c%c",&c1,&c2,&c3,&c4);

c5=getchar(); c6=getchar();

putchar(c1); putchar(c2);

printf("%c%c\n",c5,c6);

}

程序運(yùn)行后,若從鍵盤輸入

(從第一列開始)

123↙

45678↙

則運(yùn)行結(jié)果是???????

答案:1245

3、下面程序的運(yùn)行結(jié)果是____。

#include

void main( )

{

int a=1,b=2,c=2;

switch(a)

{ case 1:switch(b)

?? {

??? case 1: printf ("@" ); break;

??? case 2: printf("!" ); break;

? }

case 0: switch(c)

{

case 0: printf("*"); break;

case 1: printf("#"); break;

case 2: printf("$"); break;

? }

default : printf(" &");

}

printf(" \n ");

}

答案:!$&

4、對于以下代碼int i=6if(i<= 6 )

printf("hello\n");;

else

printf("bye-bye\n");哪句話是對的?

A.打印出"hello bye-bye

B.打印出"bye-bye'

C.不能通過編譯

D.打印出"hello"

else未能找到配對的if

第五章循環(huán)

求素?cái)?shù)、窮舉法、取各位數(shù)字、數(shù)學(xué)公式

1、設(shè)有int i=0;對以下語句描述正確的是______。

while( i =1 )

{ …… }

A. 循環(huán)條件表達(dá)式的值為0

B. 循環(huán)條件表達(dá)式的值為1

C. 循環(huán)條件表達(dá)式不合法

D. 以上說法都不對

答案: B

2、以下程序的運(yùn)行結(jié)果是______。

#include

void main( )

{int x=20;

do

{printf("%d\n", x--);

} while(!x) ;

}

A. 20

B. 19

C. 不打印任何內(nèi)容

D. 陷入死循環(huán)

答案: A

解:!表示取反

3、當(dāng)從鍵盤上輸入question? 下面程序的運(yùn)行結(jié)果是____。

#include

void main( )

{while( putchar(getchar( )) != '? ') ;

}

答案:question?

解:先輸出后判斷

4、在代碼while (!e )中,!e等價(jià)于

答案:e == 0

第六章數(shù)組

?越界問題

?初始化

?字符串的操作:比較、賦值、求長度、連接、結(jié)束標(biāo)記

?求大值、最小值及其位置。

?折半查找

?冒泡排序

?插入有序數(shù)組

?二維數(shù)組、轉(zhuǎn)置

第七章函數(shù)

1、)以下敘述中不正確的是()。

A.一個(gè)函數(shù)中可以有多個(gè)return語句

B.函數(shù)通過return語句傳回函數(shù)值

C.主函數(shù)可以有形參

D.調(diào)用函數(shù)須獨(dú)立語句完成

答案: D

解析: 選項(xiàng)A是正確的,函數(shù)中可以有多條return 語句,例如在分支結(jié)構(gòu)中,可以從不同的分支返回到主調(diào)函數(shù).

選項(xiàng)D是錯(cuò)誤的,C語言中,調(diào)用函數(shù)方式3種:一是函數(shù)調(diào)用作為一條獨(dú)立的語句,二是函數(shù)作為表達(dá)式的一項(xiàng),出現(xiàn)在表達(dá)式中,以函數(shù)返回值參與表達(dá)式的運(yùn)算。三是函數(shù)作為另一個(gè)函數(shù)調(diào)用的實(shí)際參數(shù)出現(xiàn)。故答案選D。

2、以下敘述中不正確的是( ).

A.在不同的函數(shù)中可以使用相同名字的變量

B.函數(shù)中的形式參數(shù)是局部變量

C.在一個(gè)函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效

D.在一個(gè)函數(shù)內(nèi)的復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效

我的答案: C正確答案: D

答案解析:在一個(gè)函數(shù)或復(fù)合語句定義的變量,稱為局部變量。局部變量僅在定義它的函數(shù)或復(fù)合語句內(nèi)有效。函數(shù)的形參也是局部變量。

不同函數(shù)或者并列復(fù)合語句各自定義的同名變量互不干擾。故答案選D。

第八章指針

?簡單指針

?數(shù)組與指針

?字符串與指針? 結(jié)束標(biāo)記

?二維數(shù)組與指針

1、假如有語句char * s1 = “abc”; char s2[] = “xyz”; 下列_____

語句是錯(cuò)誤的。

A *s1++;??? B *s2++;??? C *(s1 + 1);?? D *(s2 + 1);

答案:B

2、分析下面程序的運(yùn)行結(jié)果

int? a[3] [3]={10,9,8,7,6,5,4,3,2};

int? *pa[3]={a[0],a[1],a[2]};

int? *p=a[0];

main ( ) {

int? i;

for (i = 0 ; i<3 ; i++)

printf("%d\t%d\t%d\n", *a[i], *(*(pa+i)) , p [i]) ;

}

10????? 10????? 10

7?????? 7?????? 9

4?????? 4?????? 8

第九章結(jié)構(gòu)體

定義方法

結(jié)構(gòu)體與指針

例:

設(shè)有如下定義:struct jan{int a;float b;}c2,*p;若有p=&c2;則對c2中的成員a的正確引用是

A、(*p) c2 a??? B、(*p).a???? C、p->c2.a???? D、p.c2.a

答案:B

解:三種方式

c2.a

(*p).a

p->a

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

當(dāng)前標(biāo)題:C語言高級語言程序設(shè)計(jì)期末復(fù)習(xí)題-創(chuàng)新互聯(lián)
鏈接地址:http://bm7419.com/article4/dsecie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、關(guān)鍵詞優(yōu)化、品牌網(wǎng)站制作、響應(yīng)式網(wǎng)站、網(wǎng)站制作小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)