


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、二級 C 語言筆試 -27( 總分: 100.00 ,做題時間: 90 分鐘 )一、選擇題 (總題數: 40,分數: 70.00)1. 以下選項中合法的標識符是(分數: 2.00 )A. 1_1B. 1-1C. _11VD. 1_解析:解析C語言中的用戶標識符可以由字母、數字和下畫線組成,且第一個字符不能是數字。選項A、D第一個字母不符合語法要求,選項B中“-”是非法字符。2. 以下程序運行后的輸出結果是#include < stdio.h >main()int a=5, b=1, t;t=(a << 2)|b); printf("%d/n", t)
2、;(分數: 2.00 )A. 21 VB. 11C. 6D. 1解析: 解析 將 5變換為二進制數為 101,左移 2位后為 10100;將 1 轉換為二進制數為 00001;將 10100 與 00001 進行按位或運算后為 10101 ,再將其轉換為十進制數為 21 。3. 以下是 if 語句的基本形式:if( 表達式 ) 語句其中“表達式”(分數: 2.00 )A. 必須是邏輯表達式B. 必須是關系表達式C. 必須是邏輯表達式或關系表達式D. 可以是任意合法的表達式 V解析: 解析 C 語言中, if 語句中的控制表達式可以是任意合法的表達式。如果表達式的取值為0,則表示不滿足條件;如果
3、表達式的取值為非 0,則表示滿足條件。4. 以下程序運行后的輸出結果是#include < stdio.h >viod f(int *p, int *q);main()int m=1, n=2, *r=&m;f(r, &n); printf("%d, %d", m, n);void f(int *p, int *q) P=p+1; *q=*q+1;(分數: 2.00 )A. 1 , 3 VB. 2 , 3C. 1 , 4D. 1 , 2解析: 解析 在 f 函數中, p=p+1 ;的操作改變的是 p 的指向;而 *q=*q+1 ;的操作,將 q
4、所指向存儲單元 n中的值加1,即m的值不變,仍為1,而n的值變為3。5. 以下選項中,能用作數據常量的是(分數: 2.00 )A. o115B. 0118C.D. 115L V 解析:解析對于選項A, “0”不符合語法要求;對于選項B,以0開頭代表八進制整型常量,但其后面的數字中又出現了非八進制數字8,出錯;對于選項 C,用指數形式表示實型常量,e后面的指數部分必須為整型數,出錯;對于選項D,整數后面加字母L是長整型常量的表示形式。6. 設有定義: char s81; int i=10; ,以下不能將一行 (不超過 80個字符 )帶有空格的字符串正確讀入的 語句或語句組是(分數: 2.00 )
5、A. gets(s);B. while(si+=getchar()!='/n'); si='/0'C. scanf("%s", s);VD. d0 scanf("%C", &si); while(si+!='/n'); s='/0'解析:解析在scanf中,采用“ %s格式符將整個字符串一次輸入,直到遇到空格或制表符為止。對于 選項C,不能正確讀入帶有空格的字符串。7. 以下程序運行后的輸出結果是#include < stdio.h >main()int a=1, b=2
6、, C=3, d=0;if(a=1 && b+= =2) if(b!=2 | c-!=3) printf("%d, %d, %d/n", a, b, C);else printf('%d, %d, %d/n", a, b, C); else printf("%d, %d, %d/n", a, b, C);分數:2.00 )A.1 ,2,3B.1 ,3,2C.1 ,3,3 VD.3,2,1解析:解析第一條if語句的條件判斷成立,并且執行b+操作后,b的值為3;第二條if語句判斷,條件 b!=2 的值為真,不再進行 c-!=
7、3 的判斷,因此, c 未被改變,仍然為 3。8. 支持子程序調用的數據結構是(分數: 2.00 )A. 棧 VB. 樹C. 隊列D. 二叉樹解析: 解析 棧支持子程序調用。棧是一種只能在一端進行插入或刪除的線性表。在主程序調用子程序時 要首先保存主程序當前的狀態,然后轉去執行子程序,最終把子程序的執行結果返回到主程序中調用子程 序的位置,繼續向下執行,這種調用符合棧的特點。9. 程序段: int x=12; double y=3.141593; printf("%d%8.6f", x, y);的輸出結果是(分數: 2.00 )A. 123.141593VB. 12 3.1
8、41593C. 12,3.141593D. 123.141593解析:解析printf函數的兩個格式控制符之間沒有空格和逗號,故選項B、C不正確;輸出格式控制符m.nf表示指定輸出的實型數據的寬度為m(包含小數點)并保留n位小數。當輸出數據的小數位大于n時,最后一位按照四舍五入進行截取;若輸出數據的小數位小于n時,在小數的最右邊補0;若給出的總寬度 m小于n加上整數位數和小數點,則自動突破m的限制;反之,數字右對齊,左邊補空格。本題中3.141593數值長度為 8,小數位數為 6,因此左端沒有空格。10. 將 E-R 圖轉換為關系模式時,實體和聯系都可以表示為(分數: 2.00 )A. 屬性B
9、. 鍵C. 關系 VD. 域解析:解析數據庫邏輯設計的主要工作是將E-R圖轉換成指定RDBMSS的關系模式。從 E-R圖到關系模式的轉換是比較直接的,實體與聯系都可以表示成關系,E-R圖中的屬性也可以轉換成關系的屬性。實體集也可以轉換成關系。11. 若函數中有定義語句: int k; ,則(分數: 1.00 )A. 系統將自動給 k 賦初值 0B. 這時 k 中值無定義 VC. 系統將自動給 k 賦初值 -1D. 這時 k 中無任何值解析: 解析 函數中定義的變量,如果不專門聲明,屬于自動變量。自動變量不會自動賦初值,此時,變 量中無確定值,稱變量值“無意義”。12. 下列敘述中錯誤的是(分數
10、: 1.00 )A. 軟件測試的目的是發現錯誤并改正錯誤VB. 對被調試的程序進行“錯誤定位”是程序調試的必要步驟C. 程序調試通常也稱為 DebugD. 軟件測試應嚴格執行測試計劃,排除測試的隨意性解析: 解析 軟件測試的目的是暴露錯誤,評價程序的可靠性。軟件調試的目的是發現錯誤的位置,并改 正錯誤。軟件測試和調試不是同一個概念。13. 若有定義語句: double x,y, *px, *py; ,執行了 px=&x, py=&y; 之后,正確的輸入語句是 (分數: 1.00 )A. scanf("%f%f", x, y);B. scanf("%
11、f%f, &x, &y);C. scanf("%lf%le", px, py);VD. scanf("%lf%lf", x, y);解析: 解析 scanf 函數的格式為: scanf( 控制格式, 地址表列 ) 。其中,控制格式和地址表列之間用“ ,” 分開,地址表列應為變量的地址。在選項A、D中,地址表列表示錯誤;選項 B中控制格式與地址表列之間缺少逗號。14. 下列敘述中正確的是(分數: 1.00 )A. 棧是“先進先出”的線性表B. 隊列是“先進先出”的線性表C. 循環隊列是非線性結構D. 有序性表既可以采用順序存儲結構,也可以采
12、用鏈式存儲結構V解析: 解析 棧是“先進后出”的線性表;隊列是“先進先出”的線性表;循環隊列是隊列的一種順序存 儲結構,因此是線性結構;有序線性表既可以采用順序存儲結構,也可以采用鏈式存儲結構。15. 耦合性和內聚性是對模塊獨立性度量的兩個標準。下列敘述中正確的是(分數: 1.00 )A. 提高耦合性、降低內聚性有利于提高模塊的獨立性B. 降低耦合性、提高內聚性有利于提高模塊的獨立性VC. 耦合性是指一個模塊內部各個元素間彼此結合的緊密程度D. 內聚性是指模塊間互相連接的緊密程度解析:解析 耦合性是模塊間互相連接的緊密程度的度量,內聚性是一個模塊內部各個元素間彼此結合的 緊密程度的度量。較優秀
13、的軟件設計應盡量做到高內聚、低耦合,即減弱模塊之間的耦合性和提高模塊內 的內聚性,這樣有利于提高模塊的獨立性。16. 若文本文件 filea.txt 中原有內容為: hello ,則運行以下程序后,文件 filea.txt 中的內容為 #include < stdio.h >main()EILE *f;f=fopen("filea.txt", "w");fprintf(f, "abc");fclose(f);(分數:1.00)A. helloabcB. abcloC. abcVD. abchello解析:解析"w
14、"表示建立一個供寫入的文件。如果文件不存在,則系統將用在fopen調用中指定的文件名建立一個新文件;如果指定的文件已存在,則將從文件的起始位置開始寫入,文件中原有的內容將全部 消失。17. 以下程序運行后的輸岀結果是#include < stdio.h >void fun(int *a, int *b)int *c;c=a; a=b; b=c;main()int x=3, y-5, *p=&x, *q=&y;fun(p, q); printf("%d, %d,", *p, *q);fun(&x, &y); printf(
15、"%d, %d/n", *p, *q);(分數:1.00 )A. 3 , 5, 5, 3B. 3 , 5, 3, 5 VC. 5 , 3, 3, 5D. 5 , 3, 5, 3解析:解析fun函數功能是改變指針變量a和b的指向,并不能改變a和b所指向存儲空間的值。因此,第一個printf 語句的輸出結果為“ 3, 5”。第二個 printf語句的輸出結果仍為"3, 5”。18. 有兩個關系R、S如下:由關系R通過運算得到關系S,則所使用的運算為(分數:1.00 )A.B. VC.D.解析:解析專門的關系運算有3種:投影、選擇和連接。選擇運算是從關系中找岀滿足給定條
16、件的那些 元組,其中的條件是以邏輯表達式給岀的,值為真的元組將被選取,這種運算是從水平方向抽取元組的。投影運算是從關系模式中挑選若干屬性組成新的關系,這是從列的角度進行的運算,相當于對關系進行垂 直分解。連接運算是二目運算,需要兩個關系作為操作對象。19. 若有以下定義,則對 x數組元素的正確應用是int x10, *pt=x;(分數:1.00 )A. * &x10B. *(x+3)VC. *(pt+10)D. pt+3解析:解析選項A C的數組下標越界;選項D表示地址;選項 B是對數組元素x3的引用。20. 某二叉樹有 5 個度為 2 的結點,則該二叉樹中的葉子結點數是(分數: 1.
17、00 )A. 10B. 8C. 6 VD. 4解析:解析對于任何一棵二叉樹 T,如果其終端結點(葉子)數為m,度為2的結點數為則ni=m+1 所以該二叉樹的葉子結點數等于5+1=6。21. 以下程序運行后的輸出結果是#include < stdio.h >int fun(int x, int y)if(x=y) return(x);else return(x+y)/2);main()int a=4, b=5, c=6;printf("%d/n", fun(2*a, fun(b, c);(分數: 2.00 )A. 3B. 6 VC. 8D. 12解析: 解析 將
18、a、 b、 c 的值代入 fun(2*4, fun(f(5, 6) 中, f(5, 6)調用,返回值為 5; f(8,5)調用,返回值為 6。22. 設有定義: int x=2; ,以下表達式中,值不為 6的是(分數: 2.00 )A. x*=x+1B. x+, 2*xC. x*=(1+x)D. 2*x, x+=2V解析:解析選項A、C均為x=xX(x+1)=2 X3=6;對于選項B,先執行x+后, x的值為3,最后一個表達式2X3=6的值是整個表達式的值;對于選項D, 2Xx=2X2,表達式的值為4,但x的值仍為2,表達式x+=2應為x=2+2,值為4。23. 已知字母 a 的 ASCII
19、碼值為 97,則以下程序運行后的輸出結果是#include < stdio.h >void fun(char *s)while(*s)if(*s%2=0) printf("%C", $s);s+;main() char a="good"fun(分數: 2.00 )A. ; printf("/n")V解析:解析fun函數的功能是輸出字符串中ASCII碼為偶數的字符。g的ASCII碼為103, o的ASCII碼為111 , d的ASCII碼為100,輸出字符do24. 設有宏定義:#include lsDIV(k, n)(k%
20、n=1) ? 1:0)且變量m已正確定義并賦值,則宏調用:lsDIV(m,5) && IsDIV(m, 7) 為真時所要表達的是(分數: 2.00 )A. 判斷m是否能被5或者7整除B. 判斷m是否能被5和7整除C. 判斷m被5或者7整除是否余1D. 判斷m被5和7整除是否余1 V解析:解析IsDIV(m, 5) 宏展開(m%5=1) ? 1:0),其含義是m%5=1該表達式的值為1,否則該表達 式的值為0; IsDIV(m, 7)宏展開(m%7=1) ? 1:0),其含義是m%7=,1該表達式的值為1,否則該表達式 的值為0。IsDIV(m, 5) && Is
21、DIV(m, 7) 為真時,表示判斷 m被5和7整除是否都余1。25. 以下程序運行后的輸出結果是#include < stdio.h >int f(int x, int y)return(y-x)*x);main()int a=3, b=4, c=5, d;d=f(f(a, b), f(a, c);printf("%d/n", d);(分數: 2.00 )A. 10B. 9 VC. 8D. 7解析:解析d=f(f(a, b),f(a, c);中,將 a、b、c 的值分別代入 f(a, b)和 f(a, c),d=f(f(3,4),f(3, 5);。 f(3,
22、4) 調用,返回 3; f(3, 5) 調用,返回 6;再進行 f(3, 6) 調用,返回 9。26. 已知字母A的ASCII碼值為65。以下程序運行后的輸出結果是#include < stdio.h >main()char *s="ABC"do printf("%d", *s%10); s+;while(*s);(分數:2.00 )A. 5670B. 656667C. 567 VD. ABC解析:解析每進行一次循環,將輸出 s指向字母的ASCII碼值除以10的余數。字符A的ASCII碼值是 65,第一次輸出65%10的余數5,執行S+后,指
23、針指向字母B;第二次輸出66%10的余數6,執行S+ 后, 指針指向字母c;第三次輸出67%10的余數7,執行S+后,指針指向串結束標志“ /0”。此時,*s等于0, 退出循環。因此,輸出結果為 567。27. 設變量已正確定義,以下不能統計岀一行中輸入字符個數(不包含回車符)的程序段是(分數:2.00 )A. n=0; while( ch=getchar()!='/n') n+;B. n=0; while( getchar()! ='/n') n+;C. for( n=0; getehar()!='/n' n+);D. n=0; for( ch
24、=getchar(); ch!='/n' n+);V解析:解析選項D中ch=getchar()的操作,在for語句中所處的位置決定了此操作僅做一次,即只能 從鍵盤上接收一個字符。如果該字符是回車符,則只循環一次就退岀;如果輸入一個非回車字符,則程序 進入無限循環。28. 設函數中有整型變量 n,為保證其在未賦值的情況下初值為0,應選擇的存儲類別是(分數:2.00 )A. autoB. registerC. staticVD. auto 或 register解析:解析在C語言中,對于靜態局部變量static ,編譯時會自動給數值型變量賦初值0或者給字符變量賦初值“ /0 ”。29
25、. 以下選項中正確的語句組是(分數:2.00 )A. char s; s="BOOK!"B. char *s; s="BOOK!"C. char s10; s="BOOK!"D. char *s; s="BOOK!"V解析:解析數組名代表數組的首地址,是一個地址常量,不能對其賦值,所以選項A、C錯誤;只有在初始化時才可以用花括號,所以選項B錯誤使得 a1的值為12, a2的值為34, c1的值為字符a, c2的值為字符b。則正確的輸入格式是(選項中的代表空格,v。9代表回車)30. 有以下程序,若想通過鍵盤輸入,b
26、,程序輸出結果是:12, a, 34, #include v stdio.h >main()int a1, a2; char c1, c2;scanf("%d %c%d%c", &a1, &c1, &a2, &c2);printf("%d, %c, %d, %c', a1, c1, a2, c2);(分數:2.00 )A. VB.C.D.解析:解析對于格式控制“ d%c%d”c當輸入數值型數據時,數據之間用空格、回車或制表符隔開, 間隔符個數不限。當進行數值型和字符型混合數據輸入時,數據之間不能用空格隔開,因為空格會被
27、當作 一個字符讀入。31. 以下程序運行后的輸岀結果是#include < stdio.h >struct ordint x, y; dt2=1,2, 3, 4;main()struct ord *P=dt;printf("%d,", +p-> x); printf("%d/n", +p-> y);(分數:2.00 )A. 1 , 2B. 2 , 3 VC. 3 , 4D. 4 , 1解析:解析指針變量p指向dt0 , p- >x即為dt0.x,初值為1,因為“- >"的優先級大于“ +",所以先計
28、算p- >x的值加1等于2,并輸岀;再計算p- >y的值加1等于3,并輸岀。因此,輸岀結果為2, 3。32. 以下程序中的變量已正確定義,程序段的輸岀結果是for(i=0; i < 4; i+, i+)for(k=1; k < 3; k+); printf("*");(分數:2.00 )*B *C *D.* V解析:解析由于二重for循環的循環體是空語句,因此,printf函數不屬于循環體,printf("*") 語句只執行一次。33. 軟件按功能可以分為應用軟件、系統軟件和支撐軟件(或工具軟件)。下面屬于應用軟件的是(分數:2.
29、00 )A. 編譯軟件B. 操作系統C. 教務管理系統VD. 匯編程序解析: 解析 軟件按功能可以分為:應用軟件、系統軟件和支撐軟件 (或工具軟件 ) 。應用軟件是為實現某 一特定領域的應用而開發的軟件;系統軟件是計算機管理自身資源,提高計算機使用效率并為計算機用戶 提供各種服務的軟件;支撐軟件是介于系統軟件和應用軟件之間,協助用戶開發軟件的工具性軟件。編譯 程序、操作系統和匯編程序都屬于系統軟件;教務管理系統屬于應用軟件。34. 數據庫應用系統中的核心問題是(分數: 2.00 )A. 數據庫設計 VB. 數據庫系統設計C. 數據庫維護D. 數據庫管理員培訓解析: 解析 數據庫應用系統中的一個
30、核心問題就是設計一個能滿足用戶需求、性能良好的數據庫,這就 是數據庫設計。35. 以下程序運行后的輸出結果是#include < stdio.h >main()char *a="abcd", "ef", "gh", "ijk" int i;for(i=0; i < 4; i+) printf("%c", *ai);(分數: 2.00 )A. aegiVB. dfhkC. abcdD. abcdefghijk解析: 解析 a 是一個長度為 4 的指針數組,它的每一個元素分別指向一
31、個字符串。該程序的功能是分別 打印 4 個字符串的首字母。36. 以下程序運行時,輸入的值在哪個范圍才會有輸出結果 ?#include < stdio.h >main()int x;Scanf("%d", &x);if(x < =3); elseif(x!=10) printf("%d/n", x);(分數: 2.00 )A. 不等于 10 的整數B. 大于 3 且不等于 10 的整數 VC. 大于 3 或等于 10 的整數D. 小于 3 的整數解析: 解析 如果 x < =3,則執行空語句;否則,再判斷 x!=10 。因
32、此,只有當 x 大于 3 且不等于 10時, 才有輸出結果。37. 以下程序運行后的輸出結果是#include < stdio.h >#define PT 3.5;#define S(x) PT*x*x;main()int a=1, b=2; printf("%4.1f/n", S(a+b);(分數: 2.00 )A. 14.0B. 31.5C. 7.5D. 程序有錯,無輸出結果V解析: 解析 本題考查宏定義的用法,進行宏定義時語句不能用分號結束,否則會出現錯誤38. 以下程序運行后的輸出結果是#include < stdio.h >int b=2;
33、int fun(int *k)b=*k+b; return(b);main()int a10=1, 2, 3, 4, 5, 6, 7, 8, i;for(i=2; i <4; i+)b=fun(&ai)+b; printf("%d", b);printf("/n");分數: 2.00 )A.10 12B. 8 10C. 10 28 VD. 10 16解析:解析第一次for循環,循環參數i=2 , fun(&a2)調用,fun函數中b=3+2,即全局變量b被改 為5。返回main函數,b=5+5,全局變量b的值為10,并輸出;第二次f
34、or循環,循環參數i=3 , fun(&a3) 調用,fun函數中b=4+10,即全局變量b被改為14。返回main函數,b=14+14,全局變量b的值為28,并 輸出。39. 下列排序方法中,最壞情況下比較次數最少的是(分數: 2.00 )A. 冒泡排序B. 簡單選擇排序C. 直接插入排序D. 堆排序 V解析: 解析 冒泡排序、簡單選擇排序和直接插入排序在最壞情況下的比較次數都是n(n-1)/2 ;堆排序在最壞情況下比較次數最少,是nlog 2n。40. 以下函數按每行 8 個輸出數組中的數據,下畫線處應填入的語句是void fun(int *w, int n)int i; for(
35、i=0; i < n; i+)printf("%d", wi);printf("/n");(分數: 2.00 )A.if(i/8=0) print("/n");B. if(i/8=0) continue;C. if(i%8=0) print('7n");VD. if(i%8=0) continue;解析:解析在C語言中,continue用來結束本次循環,繼續下次循環,因此選項B、D不正確;在選項A中,條件判斷i/8=0是指當循環次數i的值小于8時,打印換行,即前 8個數,每輸出一個數換一行, 因此,選項A不正確
36、;在選項c中,條件判斷i%8=0是指當循環次數i除以8的余數等于0時打印換行, 即每輸出 8 個數打印換行。二、填空題 (總題數: 15,分數: 30.00)41. 假設一個長度為50的數組(數組元素的下標從0 49)作為棧的存儲空間,棧底指針 bottom指向棧底元 素,棧頂指針 top 指向棧頂元素,如果 bottom=49 , top=30( 數組下標 ) ,則棧中具有 1 個元素。(分數: 2.00 )填空項 1: (正確答案: 20)解析: 解析 一般地,棧底指針指向棧空間的棧中的元素個數等于“棧底指針 -棧頂指針+1”,即 49-30+1=20。42. 軟件測試可分為白盒測試和黑盒
37、測試。基本路徑測試屬于 1 測試。(分數: 2.00 )填空項 1: (正確答案:白盒)解析: 解析 黑箱測試是根據程序規格說明所規定的功能來設計測試用例,它不考慮程序的內部結構和處 理過程。常用的黑箱測試技術有等價類劃分、邊界分析、錯誤猜測及因果圖等。白盒測試的基本原則是: 保證所測模塊中每一獨立路徑至少執行一次;保證所測模塊所有判斷的每一分支至少執行一次;保證所測 模塊每一循環都在邊界條件和一般條件下至少各執行一次;驗證所有內部數據結構的有效性。白盒測試的 主要方法有邏輯覆蓋和基本路徑測試等。43. 符合結構化原則的 3 種基本控制結構是選擇結構、循環結構和 1 。(分數: 2.00 )填
38、空項 1: (正確答案:順序結構)解析: 解析 結構化程序設計的 3 種基本邏輯結構為順序結構、選擇結構和循環結構。順序結構是一種簡 單的程序設計結構,它是最基本、最常用的程序設計結構;選擇結構又稱為分支結構,包括簡單分支和多 分支選擇結構;循環結構也叫重復結構,它根據給定的條件,判斷是否需要重復執行某一相同的程序段。44. 數據庫系統的核心是 1 。(分數: 2.00 )填空項 1: (正確答案:數據庫管理系統)解析: 解析 數據庫管理系統可以對數據庫的建立、使用和維護進行管理,是數據庫系統的核心45. 在 E-R 圖中,圖形包括矩形框、菱形框、橢圓框。其中表示實體聯系的是1 框。(分數:
39、2.00 )填空項 1: (正確答案:菱形)解析:解析在E-R圖中,用矩形表示實體,框內標明實體名;用橢圓框表示實體的屬性,框內標明屬性 名;用菱形框表示實體間的聯系,框內表明聯系名。46. 表達式(int)(double)(5/2)+2.5)的值是 1。(分數: 2.00 )填空項 1: (正確答案:4)解析: 解析 計算 5/2=2,其結果先轉換為 double 類型,即 2.000000 ,然后加上 2.5 為 4.5000000,再 轉換為 int 型,所以結果為 4。47. 若變量x、y已定義為int類型且x的值為99, y的值為9,請將輸出語句printf( 1, x/y);補充完
40、整, 使其輸出的計算結果形式為: x/y=11 。(分數: 2.00 )填空項 1: (正確答案: "x/y=%d/ )解析: 解析 printf 語句中,除了格式轉換說明外,字符串中的其他字符 (包括空格 )將按原樣輸出48. 以下程序運行輸入65V回車后,能否輸出結果、結束運行(請回答能或不能)。#include < stdio.h >main()char c1, c2;scanf("%c", &c1);while(c1 <65 | c1 >90) scanf("%c", &c1);c2=c1+32;
41、printf("&c, &c/n", c1, c2);(分數: 2.00 )填空項 1: (正確答案:不能)解析: 解析 c1 和 c2 被定義為字符類型,當輸入 65 時是以字符形式讀入,只能讀到字符 6, 6 的 ASCII碼值是 54,滿足 while(c1 <65 | c2 >90),所以執行 scanf("%c", &c1) ,即不能輸出結果。49. 以下程序運行后的輸出結果是 。#include < stdio.h >main()int k=1, s=0;doif(k%2)!=0) contin
42、ue;s+=k; k+;while(k > 10);printf("s=%d/n", s);(分數: 2.00 )填空項 1:正確答案: s=0 )解析:解析進行if判斷時,k的值為1不能夠被2整除,執行continue退出本次循環,不對 s進行任 何操作,直接進行循環條件判斷,此時k的值為1,不滿足循環條件,退出 while循環,輸出s的值為0。50. 下列程序運行時,若輸入 1abcedf2df v回車,則輸出結果為 。#include v stdio.h >main()char a=0, ch;while(ch=getchar()!='/n'
43、;)if(a%2!=0 && (ch> ='a' && chv ='z') ch=ch-'a'+'A'a+; putchar(ch);printf("/n");(分數: 2.00 )填空項 1: (正確答案:1AbCeDf2dF)解析: 解析 while 循環的功能是對輸入的第偶數個且為小寫字母的字符進行處理,將小寫字母轉化為大 寫,因此答案為 1AbCeDf2dF。51. 以下程序運行后的輸出結果是 #include v stdio.h >void fun(int
44、*a)a0=a1;main()int a10=10, 9, 8, 7, 6, 5, 4, 3, 2, 1, i;for(i=2; i > =0; i-) fun(&ai);for(i=0; i v10; i+) printf("%d", ai);printf("/n");分數: 2.00 )解析: 解析 函數的功能是將輸入的指針所指向的后一個變量賦給指針指向的變量。第一個for 循環, i為2滿足條件,將 a3 賦值給 a2 ,數組變為 10, 9, 7, 7, 6, 5, 4, 3, 2, 1,同理第二次循環數組變為10, 7, 7, 7, 6, 5, 4, 3, 2, 1,第三次為 7, 7, 7, 7, 6, 5, 4, 3, 2,152. 請將以下程序中的函數聲明語句補充完整。#include v
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國有企業財務內控管理的數字化轉型路徑
- 激勵機制在家庭醫生簽約服務中的優化策略
- 人才培養質量面臨的挑戰與現狀分析
- 環保公司工作管理制度
- 環保隱患排查管理制度
- 環衛保潔現場管理制度
- 現金收銀制度管理制度
- 玻璃企業用煤管理制度
- 珠寶品牌加盟管理制度
- 班級危機公關管理制度
- 2024風電場工程項目建設工期定額
- 廣西版三年級美術下冊全冊教案
- 浙江省杭州市上城區2023-2024學年八年級下學期期末考試英語試題+
- 《生物安全培訓》課件-2024鮮版
- 山東省臨沂市郯城縣2023-2024學年七年級下學期期末歷史試題
- 2024年石家莊房展會城發投集團招聘筆試沖刺題(帶答案解析)
- 2024年安徽省初中學業水平考試地理試卷(定心卷二)
- 生命哲學:愛、美與死亡智慧樹知到期末考試答案章節答案2024年四川大學
- 供應鏈管理(山東聯盟)-知到答案、智慧樹答案
- 2023版毛概課后答案
- 碳13(C13)市場規模分析
評論
0/150
提交評論