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è)公司要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的如皋做網(wǎng)站的公司定做!第一章程第二章算法的五個(gè)特性?
1、有窮性:算法的有窮性是指算法必須能在執(zhí)行有限個(gè)步驟之后終止
2、確切性:算法的每一步驟必須有確切的定義;
3、輸入:一個(gè)算法有0個(gè)或多個(gè)輸入,以刻畫運(yùn)算對(duì)象的初始情況,所謂0個(gè)輸入是指算法本身定出了初始條件;
4、輸出:一個(gè)算法有一個(gè)或多個(gè)輸出,以反映對(duì)輸入數(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ì)?書寫格式:分號(hào)結(jié)束、注釋
?標(biāo)識(shí)符1)對(duì)變量、函數(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’
?字符串常量
?符號(hào)常量? #define
?變量:強(qiáng)制類型轉(zhuǎn)換、自動(dòng)類型轉(zhuǎn)換
?注意數(shù)據(jù)的溢出問題
?各種運(yùn)算符:優(yōu)先級(jí)與結(jié)合性
?自增自減運(yùn)算符
?算術(shù)運(yùn)算、關(guān)系運(yùn)算、邏輯運(yùn)算優(yōu)先級(jí)
?數(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ù)相同,且一種有符號(hào),一種無符號(hào),則轉(zhuǎn)換成無符號(hào)類型
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)算中,賦值號(hào)兩邊量的數(shù)據(jù)類型不同時(shí),賦值號(hào)右邊量的類型將轉(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
解:逗號(hào)表達(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、對(duì)于數(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、對(duì)于以下代碼
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配對(duì)問題
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、對(duì)于以下代碼int i=6if(i<= 6 )
printf("hello\n");;
else
printf("bye-bye\n");哪句話是對(duì)的?
A.打印出"hello bye-bye
B.打印出"bye-bye'
C.不能通過編譯
D.打印出"hello"
else未能找到配對(duì)的if
第五章循環(huán)求素?cái)?shù)、窮舉法、取各位數(shù)字、數(shù)學(xué)公式
1、設(shè)有int i=0;對(duì)以下語句描述正確的是______。
while( i =1 )
{ …… }
A. 循環(huán)條件表達(dá)式的值為0
B. 循環(huán)條件表達(dá)式的值為1
C. 循環(huán)條件表達(dá)式不合法
D. 以上說法都不對(duì)
答案: 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;則對(duì)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級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
當(dāng)前標(biāo)題:C語言高級(jí)語言程序設(shè)計(jì)期末復(fù)習(xí)題-創(chuàng)新互聯(lián)
鏈接地址:http://muchs.cn/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)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容