二級C語言模擬654_第1頁
二級C語言模擬654_第2頁
二級C語言模擬654_第3頁
二級C語言模擬654_第4頁
二級C語言模擬654_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、二級C語言模擬 654一、選擇題1 、以下選項(xiàng)中,與 k=n+ 完全等價(jià)的表達(dá)式是 。A k=n, n=n+1 B n=n+1, k=n C k=+n D k+=n+1 2、關(guān)于Do 循環(huán)體 while( 條件表達(dá)式 ); 以下敘述中正確的是 。A 條件表達(dá)式的執(zhí)行次數(shù)總是比循環(huán)體的執(zhí)行次數(shù)多一次B 循環(huán)體的執(zhí)行次數(shù)總是比條件表達(dá)式的執(zhí)行次數(shù)多一次C 條件表達(dá)式的執(zhí)行次數(shù)與循環(huán)體的執(zhí)行次數(shù)一樣D 條件表達(dá)式的執(zhí)行次數(shù)與循環(huán)體的執(zhí)行次數(shù)無關(guān)3、VC 6.0 中int 類型變量所占字節(jié)數(shù)是 A 1 B 2C 3 D 4z); ,4、現(xiàn)有格式化輸入語句, scanf(x=%d ,sumy=%d, l

2、inez=%dL,x, y,已知在輸入數(shù)據(jù)后, x,y,z的值分別是 23 , 56 ,78 ,則下列選項(xiàng)中正確地輸入格式的是 注 表示空格,表示回車A. 23, 56, 78 B. x=23, y=56, z=78 EnterC. x=23C, sumy=56, z=78 D. x=23, sumy=56, linez=78 5、有以下程序:#includemain()char ch=uvwxyz,*pc;pc=ch;printf(%cn,*(pc+5); 程序運(yùn)行后的輸出結(jié)果是 。A z B 0 C 元素 ch5 的地址 D 字符 y 的地址6、有以下程序:#includemain() c

3、har a 44=;int i,j;for(i=0;i 4; i+) ai0=ai3=#;for(j=1; j 3; j+) a0j=a 3j=#; if(i!=0)&(i! =3) aij=o;for(i=1;i 3;i+) for(j=0; j 4;j+)printf(%2c ,aij); printf(n); 程序的運(yùn)行結(jié)果是 。A #o o#o o#B # # # # o o #C # o o # # # #D # # # # # # #7、有以下程序段#includeint j; float y; char name50;scanf(%2d%f%s,&j,&y,name); 當(dāng)執(zhí)行上

4、述程序段,從鍵盤上輸入 55566 7777123 后, y的值為 。A 566.0 B 55566.0 C 7777.0 D 566777.08 、下列選項(xiàng)中不是 C語句的是 。A int i; i+; printf(%dn, i); B ;C a=5 , c=10D ;9、構(gòu)成計(jì)算機(jī)軟件的是 。A 源代碼 B 程序和數(shù)據(jù)C 程序和文檔 D 程序、數(shù)據(jù)及相關(guān)文檔10 、以下敘述中正確的是 。A 在 scanf 函數(shù)中的格式控制字符串是為了輸入數(shù)據(jù)用的,不會輸出到屏幕上B 在使用 scanf 函數(shù)輸入整數(shù)或?qū)崝?shù)時(shí),輸入數(shù)據(jù)之間只能用空格來分隔C 在 printf 函數(shù)中,各個(gè)輸出項(xiàng)只能是變量D

5、 使用 printf 函數(shù)無法輸出百分號 %11 、有以下程序:#includemain( )int a=3;a+=a-=a*a; printf(%dn,a); 程序的輸出結(jié)果是 。A 0 B 9 C 3 D -1212 、以下關(guān)于字符串處理的敘述正確的是 。A 進(jìn)行字符串復(fù)制時(shí),目的串的存儲空間必須足夠大B 兩個(gè)字符串進(jìn)行比較時(shí),短的一個(gè)必定比長的一個(gè)小C 計(jì)算一個(gè)字符串的長度時(shí),應(yīng)包含串尾的結(jié)束標(biāo)志D 兩個(gè)字符串連接時(shí),對存儲空間的大小沒有要求13 、以下說法正確的是 。A C程序是從第一個(gè)定義的函數(shù)開始執(zhí)行的B 在 C程序中,要調(diào)用的函數(shù)必須在 main() 函數(shù)中定義 C C程序是從

6、main() 函數(shù)開始執(zhí)行D C程序中的 main() 函數(shù)必須放在程序的開始部分14 、已知大寫字母 A的ASCII 碼是 65 ,小寫字母 a的ASCII 碼是 97 。以下不能將變量 c中的大寫字母 轉(zhuǎn)換為對應(yīng)小寫字母的語句是 。A c=(A+c)%26-a Bc=c+32 C c=c-A+a Dc=(c-A)%26+a15 、有以下程序#includemain() int i,s=0,t=1,2,3,4,5,6,7,8,9; for(i=0;i 9;i+=2) s+=*(t+i);printf(%dn,s); 程序執(zhí)行后的輸出結(jié)果是 。A 25 B 20 C 45 D 3616 、以下

7、選項(xiàng)中關(guān)于程序模塊化的敘述錯(cuò)誤的是 。A 把程序分成若干相對獨(dú)立的模塊,可便于編碼和調(diào)試B 把程序分成若干相對獨(dú)立、功能單一的模塊,可便于重復(fù)使用這些模塊C 可采用自低向上、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序D 可采用自頂向下、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序17 、有以下程序: #includemain()unsigned char a=2, b=4, c=5, d; d=a | b;d&=c; printf(%dn,d); 程序運(yùn)行后的輸出結(jié)果是 。A 3 B 4 C 5 D 618 、某二叉樹共有 12個(gè)節(jié)點(diǎn),其中葉子節(jié)點(diǎn)只有 1個(gè),則該二叉樹的深度為

8、(根節(jié)點(diǎn)在第l 層)A 3 B 6 C 8 D 1219 、關(guān)系數(shù)據(jù)庫規(guī)范化主要為克服數(shù)據(jù)庫邏輯結(jié)構(gòu)中的插入異常、刪除異常以及 A 數(shù)據(jù)丟失的問題 B 結(jié)構(gòu)不合理的問題 C 數(shù)據(jù)不一致的問題 D 冗余度大的問題20 、有以下程序:#include#includeint fun(int n)int *p;p=(int *)malloc(sizeof(int);*p=n; return *p;main()int a;a=fun(10); printf(%dn, a+fun(10);程序的運(yùn)行結(jié)果是 。A10 B20 C 0 D出錯(cuò)21 、以下敘述中錯(cuò)誤的是 。Agets 函數(shù)用于從終端讀入字符串B

9、getchar 函數(shù)用于從磁盤文件讀入字符Cfputs 函數(shù)用于把字符串輸出到文件Dfwrite 函數(shù)用于以二進(jìn)制形式輸出數(shù)據(jù)到文件22 、已知函數(shù)的調(diào)用形式: fread(buffer,size,count,fp);,其中 buffer 代表的是 A一個(gè)整型變量,代表要讀入的數(shù)據(jù)項(xiàng)總數(shù) B一個(gè)文件指針,指向要讀的文件 C一個(gè)指針,是指向的輸入數(shù)據(jù)放在內(nèi)存中的起始位置 D一個(gè)存儲區(qū),存放要讀的數(shù)據(jù)項(xiàng)23 、有兩個(gè)關(guān)系 R和T如下:RABCa12b4423d32TACa2b43d2則由關(guān)系R得到關(guān)系T的操作是 。A選擇 B交 C投影 D并24 、若有以下程序段, w和k 都是整型變量: w=k;

10、LB:if(w=0)go to LE;w-; printf(*) goto LB; LE; 則不能與上面程序段等價(jià)的循環(huán)語句是 。Afor(w=k; w!=0; w-)printf(*);Bfor(w=k; w; -w)printf(*);Cw=k;while(w-!=0)printf(*);Dw=k;w+; dow-; printf(*); while(w!=0);25 、以下定義數(shù)組的語句中錯(cuò)誤的是 。Aint num=1, 2, 3, 4, 5, 6;Bint num3=1, 2, 3, 4, 5, 6;Cint num24=1, 2, 3, 4, 5, 6;Dint num4=1, 2

11、, 3, 4,5, 6;26 、有以下程序#include int fun(int x, int y)if(x!=y)return(x+y)/2);else return(x);main() int a=4, b=5, c=6;printf(%dn, fun(2*a, fun(b, c);程序運(yùn)行后的輸出結(jié)果是 。A6 B3 C8 D 1227 、下列語句組中,正確的是 。Achar*s;s=Olympic; Bchar s7;s=Olympic;Cchar*s;s=Olympic;Dchar s7;s=Olympic;28 、以下所列對結(jié)構(gòu)類型變量 tdl 的聲明中錯(cuò)誤的是 。Atypede

12、f struct aaint n;float m;AA;B#define AA struct aaAAint n;float m;)tdl;AAtdl;Cstructint n; float m;)aa;Dstructint n;float m;tdl;struct aa tdl;29 、以下程序運(yùn)行后的輸出結(jié)果是 。#include void reverse(int a,int n)int i,t;for(i=0;i n/2;i+)t=ai;ai=an-1-i;an-1-i=t;mam()int b10=10,9,8,7,6,5,4,3,2,1);int i,s=0;reverse(b,10

13、);for(i=0;i 3;i+)s+=bi;printf(%dn,s);A27 B6 C25D 30Case30 、下列選項(xiàng)中,由 C語言提供的合法關(guān)鍵字的是AswicthBcherCdefaultD31 、有以下程序段:int x;for(x=3; x 6; x+)printf(x%2)?(*%d): (#%dn), x); 程序段的輸出結(jié)果是A*3#4*5B#3*4#5C#3*4#5D*3#4*532、以下 fun 函數(shù)返回?cái)?shù)組中最大值的下標(biāo):#include int fun(int*s,int n)int i,k;for(i=0,k=i;isk);return(k);在橫線處應(yīng)填入的內(nèi)

14、容是 。A+kB i=kCk+ Dk=i33 、有以下程序:#include struct tt int x;struct tt *y; s3=1,0,2,0,3,0;main() struct tt *p=s+1;p- y=s;printf(%d,p- x);p=p- y;printf(%dn,p-x);程序運(yùn)行后的輸出結(jié)果是 。A2,3B 2,1C1,2D3,134 、若有定義語句:int b=2;則表達(dá)式 (b 2)/(3 | b)的值是 。A0 B2 C4 D 835 、有以下程序:#include main()int i=3, j=5, *p=&i, *q=&j, *r;r=&q;p

15、rintf(%d, %d, %d, %d, %dn, i, j, *p, *q, *r); 執(zhí)行后的輸出結(jié)果是 。A3,5, 3,5,5 B 5,3,5,3,5 C3,5,3,5,3 D3,5,3 ,3 ,536 、數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的 。A存儲問題 B共享問題C安全問題 D保護(hù)問題37 、有以下程序:matin() char * s=one, two, three, *p;p=s1;printf(% c, % sn, *(p+1),so); 執(zhí)行后的輸出結(jié)果是 。A. n, twoB. t, oneC. w, one D. o, two38 、下列關(guān)于 C語言數(shù)據(jù)文件的敘述中正

16、確的是 。A文件由 ASCII 碼字符序列組成, C語言只能讀寫文本文件 B文件由二進(jìn)制數(shù)據(jù)序列組成, C語言只能讀寫二進(jìn)制文件 C文件由記錄序列組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件 D文件由數(shù)據(jù)流形式組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件39 、已知某程序中有聲明 “int a4,j;”及語句“for(j=0;j4;j+)pj=a+j;” ,則標(biāo)識符P正確的聲明形式應(yīng)為 。Aint p4;Bint*p4;C int*p4;Dint(*p)4;40 、有以下程序:#include main()int a=1,b=2,c=3;char flag;flag=b =2 & c

17、=3;switch(a)case 1:switch(flag)case 0: printf(*);break;case 1: printf(%);break; case 0: switch(c)case 1: printf($);break;case 2: printf(&);break; default: printf(#); printf(n); 程序運(yùn)行后的輸出結(jié)果是 。A*$B%# C%& D*#二、程序填空題41 、給定程序中,函數(shù) fun() 的功能是:把形參 s 所指字符串中下標(biāo)為奇數(shù)的字符右移到下一個(gè)奇數(shù) 位置,最右邊被移出字符串的字符繞回放到第一個(gè)奇數(shù)位置,下標(biāo)為偶數(shù)的字符不

18、動 ( 注:字符串的 長度大于等于 2) 。例如,形參 s 所指的字符串為: abcdefgh ,執(zhí)行結(jié)果為: ahcbedgf 。 注意:部分源程序給出如下。請勿改動 main() 函數(shù)和其他函數(shù)中的任何內(nèi)容, 僅在fun() 函數(shù)的橫線上填入所編寫的若干表達(dá) 式或語句。試題程序:#include void fun(char*s)int i,n,k;char c;n=0;for(i=0;si!=0;i+)n+;if(n%2=0)k=n-;elsek=n-;c=sk;for(i=k-2;i =1;i=i-2)si+2=si;s1=;void main()char s80=abcdefgh;pr

19、intf(nThe original string is:%sn,s);fun (s);printf(nThe result is:%sn,s);三、程序修改題42 、下列給定程序中函數(shù) fun 的功能是:將 m(1m10) 個(gè)字符串連接起來,組成一個(gè)新串,放入 pt 所指存儲區(qū)中。例如:把三個(gè)串 “abe”、“CD”、“EF”連接起來,結(jié)果是 “abcCDEF”。請改正程序 中的錯(cuò)誤,使它能得出正確的結(jié)果。不要改動 main 函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu) 試題源程序 #include #include void fun(char str10,int m,char*pt)foun

20、dInt k,q,i; for(k=0;k m;k+)q=strlen(strk); for(i=0;i q;i+)foundpti=strk,i;pt+=q; pt0=0;main()int m,h;char s1010,p120; printf(Please enter m:); scanf(%d,&m);gets(s0); printf(Please enter%d string:,m); for(h=0;h m;h+)gets(sh); fun(s,m,p);printf(The result is:%s,p);四、程序設(shè)計(jì)題43 、假定輸入的字符串中只包含字母和 * 號。請編寫函數(shù)

21、fun ,它的功能是:除了字符串前導(dǎo)的 *號 之外,將串中其它 * 號全部刪除。在編寫函數(shù)時(shí),不得使用 C語言提供的字符串函數(shù)。函數(shù) fun 中給出 的語句僅供參考。例如,字符串中的內(nèi)容為: *A*BC*DEF*G* ,刪除后字符串中的內(nèi)容應(yīng)當(dāng)是: *ABCDEFG 。注意:部分源程序在文件 PROG1. C 文件中。請勿改動主函數(shù) main 和其它函數(shù)中的任何內(nèi)容,僅在函數(shù) fun 的花括號中填入你編寫的若干語句。 #includevoid fun(char *a)/* 以下代碼僅供參考 */int i=0, k;while(ai=*) i+;k=i;while(ai!=0)/* 以下程序段

22、實(shí)現(xiàn)非 * 字符前移 */ ak=0;main( )char s81; void NONO( );printf(*Enter a string: n); gets(s);fun(s); printf(The string after deleted: n); puts(s);NONO( );void NONO( )./* 本函數(shù)用于打開文件,輸入數(shù)據(jù),調(diào)用函數(shù),輸出數(shù)據(jù),關(guān)閉文件。 */ FILE *in, *out;int i;char s81; in=fopen(C: WEXAM24990001in. dat, r);out=fopen (C:WEXAM24990001out. dat,

23、w);for(i=0; i y指向s2 ,但現(xiàn)在 p- y=s ,因此s2=s0,此時(shí)s=1.0 ,2.0 ,1.0 ,而p在s1 位置,因此 p- x為2,p=p- y,p指向s2 ,因此p- x=1 ,故打印結(jié)果為 2,1。答案為 B選項(xiàng)。34、D 解析 本題考查位運(yùn)算、 / ,以及邏輯運(yùn)算符 | 。b =2&c =3為真, flag 值為1;由a=1以及 外層switch 語句的case 標(biāo)號沒有 break 語句,可知外層 switch 語句執(zhí)行case 1 、case 0 ;對于 外層case 1,嵌套的switch 語句根據(jù)flag=1 執(zhí)行case 1 ,執(zhí)行printf(%),

24、輸出結(jié)果是 “%”,接著執(zhí)行 break 語句;對于外層 case 0 ,嵌套的 switch 語句根據(jù) c=3 執(zhí)行 default 語句,執(zhí)行 printf(#),輸出 “#”。故本題答案為 B選項(xiàng)。二、程序填空題41 、1 sk 或*(s+k) c解析 本程序的作用是將字符串 (即字符數(shù)組 )中奇數(shù)位置(下標(biāo))的字符循環(huán)后移,即最后一個(gè)奇數(shù) 位置的字符移到第一個(gè)奇數(shù)位置,其他奇數(shù)位置字符后移一個(gè)位置。第一個(gè) for 循環(huán)的作用是求出字 符串s的長度 n 。如果n是偶數(shù),字符串下標(biāo)為奇數(shù)的最后一個(gè)字符就是前一個(gè)字符,k=n-1 ;如果n是奇數(shù),k=n-2 。將字符sk 保存到c中,通過循環(huán)

25、實(shí)現(xiàn)減遍歷, 將下標(biāo)為奇數(shù)的字符都后移 2位( 因 為包含偶數(shù),所以后移 2位,就是后移到下一個(gè)奇數(shù)位 ) 。最后將最右邊被移出字符串的字符放到第 一個(gè)奇數(shù)位置。三、程序修改題42 、(1) 錯(cuò)誤: Int k,q,i;正確: int k,q,i;(2) 錯(cuò)誤: pti=strk,i;正確: pti=strki; 解析 錯(cuò)誤(1) :關(guān)鍵字書寫錯(cuò)誤,定義整型變量的關(guān)鍵字應(yīng)使用 int ,而非 Int 。錯(cuò)誤 (2) :表示二維數(shù)組元素, 應(yīng)使用方括號將行坐標(biāo)和列坐標(biāo)分別括起來, 即strk,i 應(yīng)改為: strki 。四、程序設(shè)計(jì)題43 、#incllidevoid fun(char *a)

26、int i=0, k; while(ai=*) i+; k=i; while(ai!=0) if(ai !=*) ak+=ai; i+; ak=0;1main( )char s81; printf(Enter a string:n); gets(s); fun(8);printf(the string after deleted:n); puts(s);NONO( );NONO( )FILE *in, *out;int i; char s81;in=fopen(C:WEXAM24990001in. dat,r),out=fopen(C:WEXAM24990001out. dat,w);fox(i=0; i 10; i+) fscanf(in, %s, s);fun(s);fprin

溫馨提示

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

最新文檔

評論

0/150

提交評論