計(jì)算機(jī)二級(jí)C語言五套模擬卷及答案要點(diǎn)_第1頁
計(jì)算機(jī)二級(jí)C語言五套模擬卷及答案要點(diǎn)_第2頁
計(jì)算機(jī)二級(jí)C語言五套模擬卷及答案要點(diǎn)_第3頁
計(jì)算機(jī)二級(jí)C語言五套模擬卷及答案要點(diǎn)_第4頁
計(jì)算機(jī)二級(jí)C語言五套模擬卷及答案要點(diǎn)_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、計(jì)算機(jī)二級(jí)C語言五套模擬卷及答案模擬試題一一、 選擇題(本大題30分,每小題2 分)1.下列說法正確的是E) main函數(shù)必須放在F) main函數(shù)必須放在G) main函數(shù)可以放在H) main函數(shù)可以放在C程序的開頭C程序的最后C程序的中間部分,但在執(zhí)行C程序的中間部分,但在執(zhí)行C程序時(shí)是從程序開頭執(zhí)行的C程序時(shí)是從 main函數(shù)開始的2.在下面幾組數(shù)據(jù)類型中,全為最常用的基本數(shù)據(jù)類型的是哪一組:A) 整型實(shí)型字符型整型數(shù)組指針B) 數(shù)組結(jié)構(gòu)體共用體指針邏輯型空類型3. 若有說明語句:char c= 64'則變量C包含:。A)1個(gè)字符B) 2個(gè)字符C) 3個(gè)字符D)說明不合法,C值

2、不確定4. 設(shè)有如下定義和執(zhí)行語句,其輸出結(jié)果為:。int a=3,b=3;a = -b + 1; printf( “ %d' ,a,b);A)3 2B) 4 2C) 2 2D) 2 35. C語言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是。A)%B) C) % 和 D) *6. 能正確表示x的取值范圍在0, 100和-10,-5內(nèi)的表達(dá)式是A)( x<=-10) |( x>=-5 ) && (x<=0) |( x>=100 )B)( x>=-10) &&( x<=-5) |( x>=0 ) &&( x&

3、lt;=100 )C)( x>=-10) &&( x<=-5) &&( x>=0 ) &&( x<=100)D)( x<=-10) |( x>=-5 ) &&( x<=0) |( x>=100 )7. 程序段如下int k=0;while(k+<=2);prin tf("last=%dn",k);則執(zhí)行結(jié)果是last=A)2B)3C)4D)無結(jié)果8. 下面有關(guān)for循環(huán)的正確描述是。A) for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況B) for循環(huán)是先執(zhí)行循環(huán)體

4、語句,后判斷表達(dá)式C) 在for循環(huán)中,不能用 break語句跳出循環(huán)體D) for循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用花括號(hào)括起來9. 若二維數(shù)組a有m列,則aIj元素前的數(shù)組元素個(gè)數(shù)為:。A) j*m+i B) i*m+jC) i*m+j-113 D) i*m+j+110. C語言中變量的指針指的是:。A)變量類型B)變量值C)變量值D)變量地址11. 設(shè)有兩字符串“ Beijing ”、“China”分別存放在字符數(shù)組str110,str210中,下面語句中能把"China”連接到“ Beijing ”之后的為:。A) strcpy(str1,str2);B) str

5、cpy(str1, “ China”);C)strcat(str1 , “China ” )D)strcat( “Beijing ”,st;12以下程序的運(yùn)行結(jié)果是:。mai n() int a=2, i ;for(i=0;i<3;i+) printf( “ 4d' ,f(a);f( int a) int b=0,c=3;b+; c+;retur n( a+b+c); A)71013B) 777C)7911D) 78913. 在 C語言程序中,若未在函數(shù)定義時(shí)說明函數(shù)類型,則函數(shù)默認(rèn)的類型為:。A)void B) double C) int D) char14. 在說明一個(gè)結(jié)構(gòu)體

6、變量時(shí)系統(tǒng)分配給它的存儲(chǔ)空間是。E)該結(jié)構(gòu)體中第一個(gè)成員所需存儲(chǔ)空間F)該結(jié)構(gòu)體中最后一個(gè)成員所需存儲(chǔ)空間G)該結(jié)構(gòu)體中占用最大存儲(chǔ)空間的成員所需存儲(chǔ)空間H)該結(jié)構(gòu)體中所有成員所需存儲(chǔ)空間的總和15. 使用fseek函數(shù)可以實(shí)現(xiàn)的操作是。E)改變文件的位置指針的當(dāng)前位置F)文件的順序讀寫G)文件的隨機(jī)讀寫H)以上都不對(duì)二、判斷題(本大題 10分,每小題1分)1、C程序可以由若干個(gè)源文件組成,因此最小的功能單位是源文件,最小編譯單位的是函 數(shù)。()2、 C程序有三種結(jié)構(gòu)化程序設(shè)計(jì)方法,分別順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。()3、 在if語句中,if子句與else子句都可以單獨(dú)使用,構(gòu)成了if語句的

7、兩種缺省形式。()4、 for語句作為循環(huán)控制語句時(shí),其括號(hào)內(nèi)各個(gè)表達(dá)式及其后的分號(hào)都可缺省。()5、 C程序中函數(shù)不可以嵌套定義但可以嵌套調(diào)用。()6、 字符串可以用來給數(shù)組賦值,在C程序的執(zhí)行語句中可以直接用字符串給數(shù)組名賦值。()7、 數(shù)組名也可作為函數(shù)參數(shù)使用,此時(shí)數(shù)組名代表數(shù)組的起始地址。()8、 在函數(shù)內(nèi)的復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效。()9、 聲明一個(gè)結(jié)構(gòu)體類型的一般形式為struct結(jié)構(gòu)體名成員表列;。()10、 ANCI C規(guī)定了標(biāo)準(zhǔn)輸入輸出函數(shù)庫,用fseek()函數(shù)來實(shí)現(xiàn)打開文件。()三、 程序填空題(本大題12分,每小題2分)1下面程序可求出11000的自然數(shù)

8、中所有的完數(shù)(因子和等于該數(shù)本身的數(shù))請(qǐng)?zhí)羁?。mai n() int m, n, s;for(m=2;m<1000;m+) for(n=1; n<=m/2;n+) ( 1);if( (2) _) s+=n;if(_ (3) ) printf( “ dn” , m); 2.用起泡法對(duì)十個(gè)數(shù)由大到小排序。mai n() int a11, i, j, t;printf( "input 10 numberS':);for(i=1;i<11;i+)scanf(“ d',&ai);printf( n"");for (j=1;j<

9、=9;j+)for(i=1; _ (1) _; i+)if (_ (2)t=ai;ai=ai+1; (3) ;printf( “ the sortedn” );for ( i=1; i<11; i+)printf( “ d' ,ai);四、寫出下面程序的執(zhí)行結(jié)果(本大題24分,每小題4分)1. # in clude<stdio.h>mai n() char c=,A?+,10?-,5?;prin tf(“ c=%c,c);2. # in clude<stdio.h>mai n() int a,b,c;a=1;b=2;c=3;if(a>b)if(a&g

10、t;c)printf("r%d ,a);else printf( “ b);printf( “ over); 3. mai n() char a66, i, j;for(i=0;i<6;i+)for(j=0;j<6;j+) if ( i<j )aij= ,#?;else if(i=j) aij= ,?;else aij= ,*? ; for(i=0;i<6;i+) for(j=0;j<6;j+)printf( “ c” ,aij);printf( n”“);4. mai n() int i=2, x=5, j=7;fun (j,6);printf(&qu

11、ot;i=%d; j=%d; x=%d , i, j, x ) ; printf("i=%d; j=%d; x=%d , i, j, x);5. # in elude <stdio.h>mai n () int i, j; int * p, * q; i=2;j=10;p=&i;q=&j;* p=10;* q=2;printf(" i=%d, j=%dn " , i, j);6. struct stru int x; char c; ;mai n() struct stru a=10, ?x?,*p=&a;func (p);pr

12、intf (“ d,%c” , a.x, R.c);func (struct stru *b)b->x=20;b->c=?y?;五、編程題(本大題 24分,第一題7分,第二題8分,第三題9分)1. 把輸入的整數(shù)(最多不超過5位)按輸入順序的反方向輸出,例如,輸入數(shù)是12345,要求輸出結(jié)果是54321,編程實(shí)現(xiàn)此功能。2. 編一程序,從鍵盤輸入10個(gè)整數(shù)并保存到數(shù)組,要求找出最小的數(shù)和它的下標(biāo),然后把 它和數(shù)組中最前面的元素對(duì)換位置。3. 編寫一個(gè)函數(shù)計(jì)算一個(gè)字符串的長(zhǎng)度,輸入輸出在主函數(shù)內(nèi)完成。(使用指針)模擬試題二一、選擇題(本大題 30分,每小題2分)1.C語言中不能用來表示

13、整常數(shù)的進(jìn)制是B )十六進(jìn)制 等字符組成。B)D)A)十進(jìn)制2. C語言規(guī)定標(biāo)識(shí)符由A)字母數(shù)字下劃線C)字母數(shù)字逗號(hào)3. 若有如下定義:int a=2,b=3; float (float)(a+b)/2+(i nt)x%(i nt)y 的值是 A) 2.5000004. 以下表達(dá)式:為B)3.5000002+' a' +i*f,其中B) floatoC)八進(jìn)制中劃線字母 字母下劃線數(shù)字中劃線x=3.5,y=2.5;則表達(dá)式:D)二進(jìn)制OC)4.500000 D)5.000000i為整型變量,f為float型變量,則表達(dá)式的最終數(shù)據(jù)類型C) charA) int5. 有如下語句

14、:printf( “ s,%5i3s, “COMPUTER , “COMPUTER );執(zhí)行語句后的最終結(jié)果為A) COMPUTER ,CMP .C) COMPU, CMP.6. 以下if語句中語法錯(cuò)誤的是A) if (a>b)printf( “ %f” ,a);else printf(“ f” ,b);D)doubleB)COMPUTER, CMP.D)COMPU, CMP .B) if(a>b)printf( “ %f” ,a);C) if(a>b)printf(“ f”,a)D) if(a>b)printf( “ f ”,b);else printf(“ f” ,

15、b);else printf( “ f” ,a);7能表示整數(shù)x符合下面兩個(gè)條件的語句是。(1) “能被4整除,但不能被100整除” .(2)能被4整除,又能被400整除.A) (x%4=0&&x%100!=0)|x%400=0B) (x%4=0|x%100!=0)&&x%400=0C) (x%4=0&&x%400!=0)|x%100=0D) (x%100=0|x%4!=0)&&x%400=08. 循環(huán)語句中的for語句,其一般形式如下: for(表達(dá)式1;表達(dá)式2;表達(dá)式3)語句 其中表示循環(huán)條件的是。A) 表達(dá)式1B)表達(dá)式2

16、9. 以數(shù)組作為函數(shù)的參數(shù)時(shí)傳遞的數(shù)組的首地址方式為。A)地址傳遞C)雙向值傳遞10. 將字符串str2連接到字符串str1中應(yīng)使用C) 表達(dá)式3D)語句,那么實(shí)參數(shù)組與形參數(shù)組之間的數(shù)據(jù)傳遞A) strcpy(str1,str2)C) strcmp(str1,str2)11.若有以下定義:B) strcat(str1,str2)D) strcat(str2,str1)int a10,*p=a;則*(p+3)表示的是。A)元素a3的地址C)元素a4的地址B)元素a3的值D)元素a4的值B)單向值傳遞D) 隨機(jī)傳遞int所指的是。B) *p1和*p2的類型D) p1和p2所能指向變量的類型12.

17、 若有如下語句:int *p1,*p2;則其中A) p1的類型C) p2的類型13. 若有如下說明:int a10=1,2,3,4,5,6,7,8,9,10;char b=?a?,d,e;則數(shù)值為4的表達(dá)式是A) a4B) ad-b14. 有如下程序段,在 Turbo C環(huán)境下運(yùn)行的結(jié)果為 mai n()int i=2,p,k=1; p=f(i,+k);printf( “ l=%d,p=%d ” ,k,p);C) a 'd' -bD) ae-bA) 1,0B) 2,0int f(int a,i nt b) int c;if(a>b) c=1;else if (a=b) c

18、=0;else c=-1; return(c);C) 2,-1D) 1,11.在每個(gè)C語言的程序中都必須并且只能有一個(gè)main函數(shù)。()feof(fp)的返回值是D) NULL15.若fp是指向某文件的指針,且已讀到此文件末尾,則庫函數(shù)A) EOFB) 0C)非零值二、判斷題(本大題 10分,每小題1分)1.在每個(gè)C語言的程序中都必須并且只能有一個(gè)main函數(shù)。()2在C語言中,整型數(shù)據(jù)與字符型數(shù)據(jù)在任何情況下都可以通用。()3. 在C語言程序中,AHP和ahp分別代表兩個(gè)不同的標(biāo)識(shí)符。()4. 在if語句中,不可以沒有 else子句。()5. C語言規(guī)定,簡(jiǎn)單變量做實(shí)參時(shí),與其對(duì)應(yīng)的形參之間

19、是單向的值傳遞。()6. for語句作為循環(huán)控制語句時(shí),括號(hào)內(nèi)的分號(hào)是用來分開表達(dá)式的,因此要根據(jù)需要加分 號(hào)。()7. 數(shù)組名也可作為函數(shù)參數(shù)使用,此時(shí)是地址傳遞。()8. C程序有三種結(jié)構(gòu)化程序設(shè)計(jì)方法,分別嵌套結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。()9. 數(shù)組在定義時(shí)沒有必要指定數(shù)組的長(zhǎng)度,其長(zhǎng)度可以在程序中根據(jù)元素個(gè)數(shù)再?zèng)Q定。()10. 在定義指針型變量時(shí)指定的基類型為該指針變量所能指向的變量類型。()三、程序填空題(本大題12分,每小題2分)1. 輸入3個(gè)實(shí)數(shù)a, b, c要求按從大到小的順序輸出三數(shù).mai n() float a,b,c,t;scanf( “ f,%f,%f ”,&

20、a,&b,&c);if (a<b)t=a;( 1); b=t;if( 2)t=a; a=c; c=t;if(b<c)( 3)b=c; c=t;printf( “ %f,%f,%f ” ,a,b,c);2.打印以下楊輝三角形.(要求打印出10行)mai n() int a1010,i, j ;1for( i=0;i<10;i+)1 1( 4)(5)1 2 1for( i=2; i<10; i+)-13 31for(j=1; j<i ; j+ )14641aij =( 6);,for(i=0; i<10; i+) for( j=1; j<=

21、i; j+)printf( “ 5d' ,aij);printf(n “;四、寫出下面程序的執(zhí)行結(jié)果(本大題24分,每小題4分)1. mai n() int a34=1,2,3,4,5,6,7,8,9,10,11,12, b43;int i, j;for (i=0;i<3;i+ )for (j=0;j<4;j+ )bji=aij;for ( i=0;i<4;i+ ) for ( j=0;j<3;j+ )printf(“ 5d' ,bij);prin tf(n ” ); 2. mai n() int a21,i,j, n=0;for(i=2;i<20

22、;i+ )ai=i;for ( i=2;i<10;i+ )if (ai=0) continue;for (j=i+1;j<=20;j+)if (aj%ai=0) aj=0;for ( i=2;i<=20;i+ )if (ai!=0) printf(“ 4d' ,ai); n=n +1;if (n%4=0 ) printf( n” “;3. float fac(i nt n) float f ;if(n<0)printf(“ n<0,dataerror! ” );f=-1;else if (n=0| n=1) f=1;else f=fac( n-1)* n;

23、return(f);mai n()int n ;float y ;printf( “input a integer number:” );scanf(“ d',&n);y=fac( n);printf( “ d!=%5.0f ”,n,y);假如在運(yùn)行程序時(shí)輸入5,寫出程序的運(yùn)行情況及最終結(jié)果4. mai n()int i=10,j=0;doj=j+i;i-;while(i>2);prin tf("%dn",j);5. # in clude <stdio.h>mai n ()* p); int * p; p=&i;* p=2;p+;*

24、 p=5;printf(” d,"p ;prin tf( " %dn ", * p); 6. #i nclude <stdio.h>void f(int c) int a=0;static int b=0;a+;b+;prin tf("%d: a=%d, b=%dn", c, a, b);void mai n(void) int i;for (i=1; i<=3; i+) f( i );五、編程題(本大題 24分,第一題7分,第二題8分,第三題9分)1. 已知三角形的三邊長(zhǎng),試編程求三角形的面積.假設(shè)三要求:三邊長(zhǎng)從鍵盤輸入,

25、要考慮數(shù)據(jù)輸入是否正確,能否構(gòu)成三角形等情況邊分別為:a, b, c, s=1/2 (a+b+c), area= s(s-a)(s-b)(s-c)2. 有一分?jǐn)?shù)序列:2/1,3/2, 5/3, 8/5, 13/8, 21/13,試編程求數(shù)列前20項(xiàng)的和.3. 輸入10個(gè)學(xué)生的成績(jī),分別用函數(shù)實(shí)現(xiàn):(1) 求平均成績(jī);(2) 按分?jǐn)?shù)高低進(jìn)行排序并輸出。模擬試題三一、選擇題(本大題 30分,每小題2分)1. 下列有關(guān)C程序的說法中,正確的是:。A) 一個(gè)C程序中只能有一個(gè)主函數(shù)且位置任意;B) 一個(gè)C程序中可有多個(gè)主函數(shù)且位置任意;C) 一個(gè)C程序中只能有一個(gè)主函數(shù)且位置固定;D) 一個(gè)C程序中可

26、以沒有主函數(shù)。2. 以下敘述中不正確的是:。A )在C程序運(yùn)算符中,逗號(hào)運(yùn)算符優(yōu)先級(jí)最低;B) C程序中,AHP和ahp代表兩個(gè)不同的變量;C) C程序中,整數(shù)和實(shí)數(shù)在內(nèi)存中存放形式相同;D) 在C程序中,%是只能用于整數(shù)運(yùn)算的運(yùn)算符.3. 已知ch是字符型變量,下面不正確的賦值語句是:。A) ch= ' 0'B) ch= 'a+b'C) ch= '7' + '9'D) ch=7+94. 設(shè)有如下定義int x=10,y=5,z;則語句 printf("%dn",z=(x+=y,x/y);的輸出結(jié)果是。A)1B

27、)0C)4D)35.設(shè)有如下定義:char ch=' z',則執(zhí)行下面語句后變量ch是值為:ch=(,A?<=ch&&ch<=,Z?)?(ch+32):chA)AB)aC)6. 若x和y都為float型變量,且printf( “ f” ,(x,y);A)3.600000C)3.600000,5.800000ZD)zx=3.6, y=5.8執(zhí)行下列語句后輸出結(jié)果為:B)5.800000D)輸出符號(hào)不夠,輸出不正確值7. 設(shè)有兩字符串“ Beijing ”、“China”分別存放在字符數(shù)組str110,str210中,下面語句中能 把“ China”連接

28、到“ Beijing ”之后的為:strcpy(str1,str2);strcpy(str1,“China”);strcat(str1,“ China ” )strcat( “ Beijing ”,A)B)C)D)8. 以下對(duì)一維整型數(shù)組A)B)C)D)int a(10);int n=10,a n;intn; scanf( “d”#defi ne SIZE 10st;a的正確說明是,&n); int an; int aSIZE;9. 設(shè)有如下程序段,則其執(zhí)行結(jié)果為:static int a = 1,2,3,4 , *p ;p=a; (p+3) + =2; printf(A)0B)6下列

29、程序段的運(yùn)行結(jié)果為int i;“d' ,*(p+3);C)a3地址D)不正確的值10.若I為整型變量,則I=322; if(I%2=0) printf( else printf(A) #c) *“#”)”);# *B)D)有語法錯(cuò)誤,無法輸出結(jié)果11.已知int x=30,y=50,z=80;以下語句執(zhí)行后變量 if (x>y|x<z&& y>z) z=x; x=y; y=z;A)x=50, y=80, z=80C)x=30, y=50, z=80F面程序段的運(yùn)行結(jié)果:x=y=0;printf(20, 720, 8F面均代表同一變量地址的一組選項(xiàng)是:x

30、、y、z的值分別為:12.A)C)B)x=50,y=30, z=30 D)x=80, y=30, z=50B.疋.while(x<15)“ %d, %d ”B)D)8, 20 13.若有語句y+, x+=+y;,y, x);6, 12int *po int , a =45; point = &a;A) &apoint*&aB) &*a &a*pointC) point &point &aD) &a,&*poi ntpoi nt14.以下程序的運(yùn)行結(jié)果是:mai n() int a=2, i ;for(i=0;i<

31、;3;i+) printf(“ 4d' ,f(a);f( int a) intb=0;static int c=3b+;c+;return(a+b+c); A) 71013B) 777C) 7911D) 78915若有如下定義int a33=1,2,3,4,5,6,7,8,9 , i ;貝忡列語句的輸出結(jié)果是:。for (i=0;i<=2;i+)printf(“ d',翊2A) 357B)36 9C) 15 9D)14 7二、判斷題(本大題 10分,每小題1分)1. C語言本身沒有輸入輸出語句,輸入輸出操作都是通過調(diào)用庫函數(shù)來實(shí)現(xiàn)的。()2. 在C語言中,int、char

32、和short三種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù)都是由用戶自己定 義的。()3. 在C程序中一行內(nèi)可以寫幾個(gè)語句,一個(gè)語句可以分寫在多行上。因此,并不是每一條C語句都必須有一個(gè)分號(hào)的。()4. 在C語言的if語句中,用作條件判斷的表達(dá)式只能是關(guān)系和邏輯表達(dá)式。()5. 在C語言中break和continue都是循環(huán)中途退出語句,其中break語句用來跳出一層循環(huán) 結(jié)構(gòu);continue語句用來結(jié)束一次循環(huán)。()6. C語言中while和do-while循環(huán)的主要區(qū)別是 while語句的循環(huán)體至少會(huì)被執(zhí)行一次,而do-while語句的循環(huán)體則可能一次也不執(zhí)行。()7. 數(shù)組首地址不僅能通過數(shù)組中第

33、一個(gè)元素的地址表示,也可以通過數(shù)組名來表示。()8. 在C語言中,只有在兩個(gè)字符串所包含的字符個(gè)數(shù)相同時(shí),才能比較大小。如字符串“That” 與“ The”就不能進(jìn)行大小比較。()9. 函數(shù)的返回值類型是由函數(shù)的類型和return語句中表達(dá)式的類型共同決定的,當(dāng)這兩類型不一致時(shí)最終起決定作用的是return中表達(dá)式的類型。()10. 定義指針變量時(shí)指定的類型稱為基類型,基類型是指針變量所指向變量的類型,因此指針變量被定義之后都只能指向某一類型的變量。()三、程序填空題(本大題12分,每小題2分)1. 輸入一個(gè)字符,如果是大寫字母,則把其變成小寫字母;如果是小寫字母,則變成大寫字 母;其它字符不

34、變。請(qǐng)?zhí)羁眨簃ai n() char ch;scanf(“ c”,&ch);if ( 1)ch=ch+32;else if(ch> ' a' &&ch<'z' ) ( (2);printf (” %cn ” ,ch) ;2. 以下程序是求矩陣a , b的和,結(jié)果存入矩陣c中并按矩陣形式輸出。請(qǐng)?zhí)羁眨簃ai n() int a34 = 7, 5, -2, 3 , 1,0, -3, 4 , 6, 8, 0, 2 ;int b34 = 5, -1, 7, 6 , -2, 0, 1,4 , 2, 0, 8, 6 ; int i, j,

35、 c34;for ( i=0; i<3; i+ )for (j=0; j<4; j+ )cij = (3) ;for ( i=0; i<3; i+ ) for ( j=0; j<4; j+ )printf (“ 3d' , cij);(4) ;3以下程序使用遞歸法求n!,請(qǐng)?zhí)羁眨?float fac( int n) float f;if(*0) pri ntf(“n <0” data ej3r); f=elsef=(5)Jreturn( f );mai n() int n;float y;printf("inpat integernu mber

36、”sca nf( “%d',&n);y= (6)Jprintf(“=! %15.0f f,n, y );else if(n=0| n=1)f=1;);四、寫出下面程序的執(zhí)行結(jié)果(本大題24分,每小題4分)1. mai n() float a=3.14, b=3.14159; printf( “ %f, %5i3f ,a,b); 2. mai n() char a55,i,j;for(i=0;i<5;i+) for(j=0;j<5;j+) if(i=0 |i+j=4)aij='*'else aij=' 'for(i=0;i<5;i

37、+)for(j=0;j<5;j+)prin tf("%c",aij);prin tf("n");3. mai n() int x, i ;for( i=1,x=1;i<=50;i+ ) if(x>=10) break;if(x%2=1) x+=5;co ntinu e;x - = 3;printf( “ %oh” , i ); 4. func( int x,int y) int 乙z=a+b;return(z); mai n() int a=6, b=7, c=8, r;r=fu nc( ( a-, b+, a+b), c-)print

38、f( “ d' , r) ; 5. #i nclude <STDIO.H>void in creme nt(void);void mai n(void)in creme nt();in creme nt();void in creme nt(void)static int x = 8;x +;prin tf("x = %dn", x);6. #i nclude <stdio.h>void mai n(void) static char a="ABCDEFGH",b="abCDefGh"char *p1,

39、*p2;int k;p1=a; p2=b;for(k=0;k<=7;k+)if (*(p1+k)=*(p2+k) pri ntf("%c",*(p1+k);prin tf("n");五. 編程題(共30分)1. 有一函數(shù),其函數(shù)關(guān)系如下,試編程求對(duì)應(yīng)于每一自變量的函數(shù)值。x2(x<0)y =-0.5x+10(0 x<10)x-(x 10)2. 若有如下公式:+ ooooooo試根據(jù)上述公式編程計(jì)算 (精確到10-6) o的近似值3.編一程序,首先將一個(gè)包含10個(gè)數(shù)的數(shù)組按照升序排列,然后將從一指定位置m開始的n個(gè)數(shù)按照逆序重新排列,并將

40、新生成的相互組輸出。要求使用指針控制方法實(shí)現(xiàn)上述功能。模擬試題四 一、選擇題(本大題 30分,每小題2分)1. 在C語言中,反斜杠符是。A) nB)tC) vD) 2. 表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為。A) intB)float C)double D)不確定3. 設(shè)整型變量a值為9,則下列表達(dá)式中使b的值不為4的表達(dá)式A)b=a/2B) b=a%2C) b=8-(3,a-5)D) b=a>5?4:24.已知變量C1為字符型變量,下面不正確的賦值語句是:A)C1 =' abc'C)C1 ='7' +'9'5.以下程序的輸

41、出結(jié)果是:mai n() printf(n*s1=%8s* ” ,printf( n*s2=%- 5s* ” ,A) *s1=china . . . *B) 6='0'D) C1= 7 + 9。(注:-表示空格)china ” );chi ”);B) *s1=china . . .*s2=chi*s2=chi. .*C) *s1 =. . .china*s2= . .chi *s2=chi. . *6.設(shè)a、b和c是int型變量,且a=2,b=4,c=6,則下面表達(dá)式中值為0的是:B) a<=bA) ' a' +' b'C ) a|b+c&

42、amp;&b-cD) !( (a<b) &&!c | 1 )7. 已知int x=10,y=20,z=30;以下語句執(zhí)行后變量x、y、z的值分別為:if (x>y|x<z&&y>z) z=x; x=y; y=z;A) x=10, y=20, z=30B) x=20, y=30, z=30C ) x=20, y=30, z=10D) x=20, y=30, z=208. 下列字符串賦值語句中,不能正確把字符串C program賦給數(shù)組的語句是:A)chara1= ' C' ,' ' ,' p&

43、#39; ,' r','o','g','r','a','m' B)chara210; strcpy(a2, “C program ” );C )chara310; a3=“ C program ” ;D)chara410=“ C program ” 9. 用scanf函數(shù)輸入一個(gè)字符串到數(shù)組 str中,下面正確的語句是: A) scanf( “s” ,&str);B) scanf( “ c”,&str10);C ) scanf( “ s” , str) ;D) scanf( “ s”

44、 ,str10);10. C語言規(guī)定,C程序的各函數(shù)之間。A) 允許嵌套調(diào)用,但不允許嵌套定義;B) 不允許嵌套調(diào)用,但允許嵌套定義;C )不允許嵌套調(diào)用,也不允許嵌套定義;D)允許嵌套調(diào)用,也允許嵌套定義;。若有如下定義和語句:char s12=“ a_book! ”;printf( “ %d ,strlen(s);則輸出結(jié)果是:。A) 12B) 10C) 712. 下面程序的運(yùn)行結(jié)果是:。#i nclude <stdio.h>mai n() int y=10;do y-; while(-y);printf(“r%d ,-y);A) -1B) 1C) 813. 下面函數(shù)調(diào)用語句中

45、實(shí)參的個(gè)數(shù)為:fun c(exp1,exp2),(exp3,exp4,exp5)A) 1B) 2C) 4D) 514. 有如下語句 int a=10,b=20,*p1,*p2;存儲(chǔ)結(jié)構(gòu),可選用的賦值語句是:p1=&a;。p1p2p1aba10 201020圖1圖2D) 0。p2=&b;如圖1所示;若實(shí)現(xiàn)如圖 2所示的p2bA) *p1=*p2B) p仁p2C) p1=*p2D) *p仁p215.以下對(duì)結(jié)構(gòu)體類型變量的定義中不正確的是。B) #define STUDENTstruct stude ntB) struct stude ntSTUDENT int num; int n

46、um; float age;float age; std1;std1;C) structD) struct intnum; intnum;float age;float age; stude nt;std1;struct stude nt std1;二、判斷題(本大題 10 分,每小題1分)-1.在每個(gè)C文件中都必須并且只能有一個(gè)main函數(shù)。()2. 在C語言中,整型數(shù)據(jù)與實(shí)型數(shù)據(jù)在任何情況下都可以通用。()3. 在C語言程序中,happy是正確的標(biāo)識(shí)符。()4. 在if語句中,if子句與else子句都可以單獨(dú)使用,構(gòu)成了if語句的兩種缺省形式。()5. C語言規(guī)定,簡(jiǎn)單變量做實(shí)參時(shí),與其對(duì)

47、應(yīng)的形參之間是雙向的值傳遞。()6. 數(shù)組在定義時(shí)要求指定數(shù)組類型,數(shù)組名及數(shù)組長(zhǎng)度,其中表示數(shù)組長(zhǎng)度的表達(dá)式可以是 任意類型的常量表達(dá)式。()7. 在發(fā)生函數(shù)調(diào)用時(shí),主 被調(diào)函數(shù)中的參數(shù)可以是簡(jiǎn)單變量,也可以是數(shù)組名,當(dāng)采用數(shù)組名作為參數(shù)時(shí)其數(shù)據(jù)傳遞方式為單向值傳遞。()8. C語言的一個(gè)重要特點(diǎn)是能夠直接處理物理地址,其指針類型數(shù)據(jù)就是用來存放變量地址的。()9.字符串是C語言中一種基本數(shù)據(jù)類型,字符串總是以n'作為結(jié)束標(biāo)志。()10. C程序的三種結(jié)構(gòu)化程序設(shè)計(jì)方法分別順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),由這三種結(jié)構(gòu) 組成的程序可以解決任何復(fù)雜的問題。()三、 程序填空題(本大題12分

48、,每小題2分)1下面程序的功能是利用函數(shù)調(diào)用求兩整數(shù)的最大公約數(shù)和最小公倍數(shù),請(qǐng)?zhí)羁?。mai n() int a, b ,c,d;scanf( “ %d, %d ” , &a, &b );c = gon gyue( a, b );(1) ;printf(“ gongyue=%d,gongbei=%” , c,d ) ; gon gyue( int nu m1, int num2 ) int temp, x, y ;if (_( 2)_) temp=nu ml;nu m仁 num2 ;nu m2=temp ; x=num1 ; y=num2 ;while( 3) ) temp=x

49、%y ; x=y ; y = temp ; return (y) ;2下面程序中的數(shù)組a包括10個(gè)整數(shù)元素,從a中第二個(gè)元素起,分別將后項(xiàng)減前項(xiàng)之差存入數(shù)組b,并按每行3個(gè)元素輸出數(shù)組b。請(qǐng)?zhí)羁?。mai n() int a10,b10, I;for(l=0;l<10; I+)scanf(“ c” ,&al);for(l=1;( 4); I+)bl=( 5);for(l=1;l<10;l+) printf( “ 3d' ,bl);if ( 6)printf( n""); 四、 寫出下面程序的執(zhí)行結(jié)果(本大題24分,每小題4分)1. mai n()

50、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(“ &” ); 2. main() char a 55,i,j;for(i=0;i<5;i+) for(j=0;j<5;j+)if(i= =0|i= =j)aij='*'else aij=' 'for(i=0;i<5;i+)for(j=0;j<5;j+)prin

51、tf("%c",aij);prin tf("n");3. mai n() int i=5 ;printf("r%d, sub(i) ); sub( int n) int a;if(n=1)a=1;else a= n+sub( n-1);return(a); 4.i nt f(i nt x,i nt y) return (y-x)*x ) ; main () int a=3,b=4,c=5,d;d=f(f(3,4),f(3,5);prin tf("%dn",d);5. mai n() int a = 2, b = 3, c ;

52、c = a ;if ( a>b ) c = 1 ;else if ( a = b ) c = 0 ;else c = -1 ;printf (rf'%dc );6. # in clude <stdio.h>mai n () int a =1,2,3,4,5,6,* p; for (p=&a5;p>=a;p -)printf( " %d ” , * p); printf( " n" ); 五、編程題(共27分)1. 編一程序,對(duì)于給定的一個(gè)百分制成績(jī),輸出相應(yīng)的五分制成績(jī)。設(shè):90分以上為 A '8089 分為 B&#

53、39; 7079 分為C' 6069 分為D ' ;60 分以下為E '2. 有一個(gè)5*5二維數(shù)組,試編程求周邊元素及對(duì)角線元素之和,并輸出該數(shù)組中值最小的元 素。3. 編寫一個(gè)程序,用12個(gè)月份的英文名稱初始化一個(gè)字符指針數(shù)組,當(dāng)鍵盤輸入整數(shù)為1到12時(shí),顯示相應(yīng)的月份名,鍵入其它整數(shù)時(shí)顯示錯(cuò)誤信息。模擬試題五一、選擇題(本大題 30分,每小題2分)1. 下列說法正確的是。E) 在執(zhí)行C程序時(shí)不是從mian函數(shù)開始的F) C程序書寫格式嚴(yán)格限制,一行內(nèi)必須寫一個(gè)語句G) C程序書寫格式自由,一個(gè)語句可以分寫在多行上H) C程序書寫格式嚴(yán)格限制,一行內(nèi)必須寫一個(gè)語句,并要有行號(hào)2. 設(shè)有以下定義,則能使值為3的表達(dá)式是:。int k=7, x=12;A) x%=(k%=5)B)x%=(k-k%5)C)x%=kD)(x%=k)-(k%=5)3. 以下選項(xiàng)中是 C語言的數(shù)據(jù)類型的是:。A) 復(fù)數(shù)型B)邏輯型C)雙精度型D)集合型4. 下面能正確表示變量 a在區(qū)間0,5或(6,10)內(nèi)的表達(dá)式為:A) 0&l

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論