C語言全部考試系統題庫含答案_第1頁
C語言全部考試系統題庫含答案_第2頁
C語言全部考試系統題庫含答案_第3頁
C語言全部考試系統題庫含答案_第4頁
C語言全部考試系統題庫含答案_第5頁
已閱讀5頁,還剩78頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、目錄目錄1單元練習題一 C語言基礎知識3一、判斷題3二、單項選擇題4三、讀程序選擇題7四、程序填空題8五、編程題10單元練習題二 C語言程序結構10一、判斷題10二、單項選擇題11三、讀程序選擇題18四、程序填空題30五、編程題35單元練習題三 數組36一、判斷題36二、單項選擇題37三、讀程序選擇題39四、程序填空題43五、編程題49單元練習題四 函數49一、判斷題49二、單項選擇題50三、讀程序選擇題52四、程序填空題60五、編程題63單元練習題五 預處理63一、判斷題63二、單項選擇題64三、讀程序選擇題64四、程序填空題65五、編程題65單元練習題六 指針66一、判斷題66二、單項選擇

2、題66三、讀程序選擇題67四、程序填空題74五、編程題77單元練習題七 結構體與共用體78一、判斷題78二、單項選擇題78三、讀程序選擇題79四、程序填空題83五、編程題83單元練習題八 文件84一、判斷題84二、單項選擇題84三、讀程序選擇題84四、程序填空題85五、編程題87第一章 C語言基礎知識(C語言概述、算法、數據類型 運算符 表達式、位運算)一、 判斷題(正確的填A,錯誤的填B)R1在C語言中,逗號運算符的優先級最低。(A)2在語言可執行程序的開始執行點是程序中第一個函數。(B)3“5ch”是合法的變量名。(B)4C語言程序書寫格式自由,一行內可以寫幾個語句,一個語句可以分寫在多行

3、上。(A)5 當輸入數據時,必須指明變量的地址,如scanf("%f",&f) (A)N6表達式i+與+i在任何場合功能完全相同。(B) 7在賦值表達式中,賦值號左邊的變量和右邊的表達式之值的數據類型可以不相同。(A)R8.C語言程序中,語句以逗號結尾。( B )9.在 C 程序中,APH 和aph 代表不同的變量。( A )10. a-=7等價于a=a-7。( A )N11. printf函數中用到格式符%5s ,其中數字5表示輸出的字符串占用5列。如果字符串長度大于5,則輸出按原字符長從左向右全部輸出。(A )12.如果x>y為真或a<b為真,表達式

4、(x>y)&&(a<b)就為真。( B )13.C語言程序的變量必須先定義再使用。( A )14.若a和b是同類型變量,在執行了賦值語句a=b;后b中的值將放入a中,b中的值將丟失。( B )15.程序的執行總是從main函數開始,在程序的最后一個函數中結束。(B )16.變量的三個屬性是指變量的名字、變量的值和變量在內存中的地址。(A)17. 運算符優先順序:賦值運算符<邏輯運算符<關系運算符<算術運算符(B)18.對應float類型的變量,也可以用等號“=”進行數值的判斷。(B)19.表達式:1 && 3.14 和 1 &

5、; 3 的值一樣大。(B)20. 為了正確計算表達式既要考慮運算符的優先級,也要考慮其結合性。(A)21、任何C程序都是從main函數開始和結束;(A)22. 在C程序中,使用分號“;”表示語句的結束。(A )23. C程序中的必須要有至少一個main的函數,可以有多個。( B )24. 在C程序中,無論是整數還是實數,都能準確無誤的表示。( B )25. 在C程序中,賦值運算符的優先級最低。(B )26. 當輸入數值數據時,對于整型變量只能輸入整型值;對于實型變量只能輸入實型值。( B )27. 在C程序中,變量可以一邊定義一邊使用。( B )28. C程序中的注釋部分可有可無,可以省略。(

6、 A)29.字符型變量可以存放多個字符。( B )30.在對一個C程序進行編譯的過程中,可發現注釋中的拼寫錯誤。( B )5.在C程序中,無論是整數還是實數,都能被準確無誤地表示。(B )1.一個C程序的執行是從本程序的main函數開始,到main函數結束。(A)3.()4.運算符優先順序:賦值運算符<邏輯運算符<關系運算符<算術運算符(B)二、 單項選擇題R1、以下標識符中,不能作為合法的C用戶定義標識符的是:( )A .a3_b3 B.void C._123 D.abcR2、C語言規定:在一個源程序中,main函數的位置( )。A.必須在最后 B.必須在系統調用的庫函數的

7、后面。C.必須在最開始。D.可以任意R3、下列說法中正確的是( )。A. C程序書寫時,不區分大小寫字母B. C程序書寫時,一行只能寫一個語句C. C程序書寫時,一個語句可分成幾行書寫D. C程序書寫時每行必須有行號4、 已知ch是字符型變量,下面不正確的賦值語句是 ( )。A.ch = 5 + 9; B.ch= ' a + b ' C. ch = ' 0 'D. ch= '7' + '6'5、 若有定義:int a = 7; float x = 2.5 , y = 4.7 ; 則表達式 x + a % 3 *

8、 (int) (x + y) % 2/4 的值是( )。A.2.750000B. 0.00000 C. 3.500000D. 2.500000 6已知ch是字符型變量,下面正確的賦值語句是( )。A.ch = '123' B.ch=' 08 ' C. ch =' xff ' D.ch =" " 1. 以下標識符中,不能作為合法的C用戶定義標識符的是:_。A)a3_b3 B)void C)_123 D)abc 2C語言中,運算對象必須是整型的運算符是_。A) % B) / C) %和/ D) * 7. 在 C 程序中,用_表示邏

9、輯值“真”。A)1 B)非 0 的數 C)非 1 的數 D) 大于 0 的數N8.設int c=5和int a; a=2+(c+=c,c+8,+c), 則a=_ A) 15 B) 14 C) 13 D) 169.C語言中的標識符只能由字母、數字和下劃線三種字符組成,且第一個字符_。A)必須為字母或下劃線。 B)必須為下劃線。 C)必須為字母 D)可以是字母、數字和下劃線中的任一種字符。10. 若變量已正確定義并賦值,表達式_不符合C語言語法。A)a*b/c; B)3.14%2 C)2, b D)a/b/c 11. 下列說法中正確的是_。A) C程序書寫時,不區分大表達式小寫字母B) C程序書寫

10、時,一行只能寫一個語句C) C程序書寫時,一個語句可分成幾行書寫D) C程序書寫時每行必須有行號12.為表示數學關系xyz,正確的C語言表達式是_。 A) (x>=y)&&(y>=z) B) (x>=y)AND(y>=z) C) (x>=y>=z) D) (x>=y)&(y>=z)13.不合法的八進制數是_ A) 0 B) 028 C) 077 D)0114、以下不能定義為用戶標識符是 A Main B _0 C _int D sizeof15.若x=5,y=4 則y*=x+5; y的值為( )。A. 40 B. 20 C

11、 B. 15 D. 3016、組成C語言程序的基本單位是()。A) 過程     B) 子程序C) 函數  D) 主程序和子程序17下列哪個標識符是C語言合法的標識符()。A) a*bB) -xyzC) ba2D) 5iN18若有定義:inta=7; floatx=2.5, y=4.7; 則表達式x+a%3*(int)(x+y)/4的值是()。A) 2.75  B) 3.5 C) 2.5   D) 019.設int m=1,n=2;則+m= =n的結果是( )A、0 B、1 C、2 D、3 N20. 若變量已定義并賦值,下列

12、符合C語法的表達式是:()A、a:=b+1B、a=b=c+2C、int 18.5%3D、a=a+7=c+bR(3)在C程序中,設一表達式中包含有int,long, unsigned和char類型的變量和數據,則表達式最后的運算結果類型是( )A.int B.char C.unsigned D.longR21C語言中基本的數據類型包括_。 A) 整型、實型、邏輯型 B) 整型、實型、字符型 C) 整型、字符型、邏輯型 D) 整型、實型、邏輯型、字符型 N22. 若定義x和y為double類型,則表達式:x=2,y=x+5/2的值是_ A) 4 B) 4.5 C) 4.0 D) 3.023. 在以

13、下運算符中,優先級最高的運算符是_ A) ? : B) + C) && D) +=24.C語言中基本的數據類型不包括_。 A) 整型 B)字符串型 C)字符型 D)實型25. 若定義int x=7,y=5,z;則表達式:z=x+5/2*y的值是_ A) 7 B) 7.5 C) 17 D) 19.56.以下說法中正確的是( )A、C語言程序總是從第一個定義的函數開始執行 B、在C語言程序中,要調用的函數必須在main()函數中定義 C、C語言程序總是從main()函數開始執行D、C語言程序中的main()函數必須放在程序的開始部分(1)設int a=2,b;則執行b=a&

14、&1;語句后,b的結果是( )A.0 B.1 C.2 D.3N(2)逗號表達式(a=3*5,a*4),a+15的值是( )A.15 B.60 C.30 D.757. 若已經定義了一個字符型變量為a,下面哪個表達式的含義跟其余表達式不同: A) a!=0 B) a!=0 C) a D) !a8. 在以下運算符中,優先級最高的運算符是_ A) , B) C) && D) +=9. 在C語言中,邏輯值“真”用_表示。A) true B) 大于0的數C) 非0的整數D) 非0的數10. 表達式_是滿足:當c的值為1、3、5三個數中任意一個時值為“真”,否則值為“假”的表達式A)

15、 (c=1)|(c=3)|(c=5) B) (c!=1)&&(c!=3)&&(c!=5)C) (c=1)&&(c=3)&&(c=5) D) (c=1)|(c=3)|(c=5) 1.C語言中,int類型數據占2個字節,則long類型數據占( )A、1個字節 B、2 個字節 C、3個字節 D、4個字節1.下列字符串是合法的標識符的是( )。A、_HJB、9_studentC、 longD、LINE 12.下列說法中正確的是( )。A、 C程序書寫時,不區分大小寫字母B、 C程序書寫時,一行只能寫一個語句C、 C 程序書寫時,一個語句可

16、分成幾行書寫D、 C程序書寫時每行必須有行號3.在C語言中,要求參加運算的數必須是整數的運算符是( )。A、/ B、! C、% D、= =4.C語言中,邏輯“真“等價于( )。A、大于零的數 B、大于零的整數C、非零的數 D、非零的整數6.假設在程序中a,b,c均被定義為整型,并且已賦大于1的值,則下列能正確表示代數式1/abc的表達式是( )。A、1/a*b*c B、1/(a*b*c)C、1/a/b/(float) c D、1.0/a/b/c1.下列合法的字符常量是( )。A、'084' B、'x43' C、'ab' D、"0&quo

17、t; 2.在C語言提供的合法的關鍵字是()A、switch B、cher C、Case D、sturct 3.若已定義x和y為double類型,則表達式:x=1,y=x+3/2的值是 A、 2B、 1 C、 2.0 D、2.5三、 程序填空題 1以下程序不用第三個變量實現兩個數對調的操作。 #includ “stdio.h” main() int a,b; scanf("%d,%d",&a,&b); a=<a+b>(三個字符) b=<a-b>(三個字符) a= a-b; printf("%d,%d",a,b);2、

18、選擇程序的運行結果 。 main ( ) int x=1, y=2, z, a, b, c, d; z = +x|+y; printf("x=%dn", x); printf("y=%dn", y); /*輸出結果<y=2>(三個字符) */ a=-1; b=-2; c=+a&&b+; printf("b=%dn", b); /*輸出結果<b=-2> (三個字符)*/ 3以下程序的結果為_main() unsigned int a=3, b=10; printf("%dn",

19、a<<2|b>>1); /*輸出結果<14> */ printf("%dn",a<<2&b>>1); /*輸出結果<0> */4 若x=3,y=z=4,則下列表達式的值是。(1)       (z>=y>=x)? 1:0 /*值為<0> */(2)       z>=y&&y>=x /*值為<1> */5已知flo

20、at x=4.3,int y;執行語句y=(int)x后,x為<int>型(填寫小寫英文字母),且y=<4>(填寫阿拉伯數字);6表達式c&&d的值為<1>(填寫阿拉伯數字),c&&d|!(3+4)的值為<1>(填寫阿拉伯數字)。7若x為int類型,則與邏輯表達式“x”等價的表達式是<x!=0>, 與邏輯表達式“!x”等價的表達式是<x=0>。8 表示“整數x的值大于5”時邏輯值為“真”的表達式是<x>5>,邏輯值為“假”的表達式是<x<=5>9已知字母A

21、的ASCII碼為十進制數65,且設ch為字符型變量,則表達式ch=A-4+9的值為<F>(一個字符常量);若定義:char c=72;則變量c中包含的字符個數為<1>(數字)。10、C語言所提供的基本數據類型的整型類型包括:<短整型>、整型、<長整型>。(按每種類型所占字節數,從小到大排列)第二章 C語言程序結構(順序程序設計、選擇結構程序設計、循環控制)一、 判斷題(正確的填A,錯誤的填B)1 do-while語句中的條件為非0時,就結束該循環。(B)2.在switch-case語句中,不是每個case后都要使用break語句。( A )3.B

22、reak語句只能用于循環結構中。(B  )48. 未給變量賦初值,只是運行結果不正確,不會有其他不良影響。(B)5、switch語句中,可以不使用break語句;(A)6、for語句中,三個表達式都可以省略;(A)7(7)在for循環中使用break語句的目的是使流程跳出循環體,終止當前循環(A)8. continue語句只能用于循環語句中。( A )9 while語句中的條件為0時,就結束該循環。(A)10.在循環體內使用break語句或continue語句的作用相同。(B)在C語言中,邏輯值“真”用 表示。11) 1 12) 大于0的數13) 非0的整數14) 非0的數在循環語句

23、的循環體中,continue語句的作用是()。15) 立即終止整個循環 16) 繼續執行continue語句之后的循環體17) 結束本次循環 18) 結束本次循環并跳出循環語句while(!e);中,條件!e等價于( )19.e=0 20 .e!=0 21.e!=1 22.e=1設int c=5和int a; a=2+(c+=c+,c+8,+c), 則a=_23) 15 24) 14 25) 13 26) 16若要表示if( a不等于0 )這一關系式,則能正確表示這一關系的表達式為if ( ) 27) a<>0 28) !a 29) a=0 30) a二、 單項選擇題N1、以下不是

24、死循環的語句是_。for( ; ; x+i );while (1) x+;for( i=10; ; i- -) sum+= i ;for( ; (c=getchar() != n ; ) printf(“%c” , c) ;2設有程序段int k = 10 ; while ( k = 0 ) k = k - 1 ; 以下描述正確的是 ( )。A. 循環體語句一次也不執行。B. 循環是無限循環。C. while 循環語句執行十次。D. 循環體語句執行一次。3對下述程序,正確的判斷是( )。main( ) int a,b;scanf ("%d,%d",&a,&b

25、);if(a>b)a=b; b=a;else a+; b+;printf("%d,%d",a,b); A. 有語法錯誤不能通過編譯 B. 若輸入4,5則輸出5,6C. 若輸入5,4則輸出4,5 D. 若輸入5,4則輸出5,5R4 以下程序main() int i=010,j=10,k=0x10; printf("%d,%d,%dn",i,j,k);有語法錯誤不能通過編譯輸出結果是( )A.8,10,16 B.8,10,10 C.10,10,10 D.10,10,16R5. 若變量已正確說明為int類型,要給a,b,c輸入數據,以下語句正確的是_A)

26、 read(a,b,c); B) scanf(“%d%d%d”,a,b,c);C) scanf(“%D%D%D”,&a,%b,%c); D) scanf(“%d%d%d”,&a,&b,&c); R6.已知在ASCII字符集中,數字0的序號為48,下面程序的輸出結果為_。 main() char x,y; x=0;y=9; pirntf(“%d,%dn”,x,y); A)因輸出格式不合法,輸出錯誤信息 B)48,57 C)0,9 D)48,587. 語句 for(k=0;k<5;+k) if(k= = 3) continue; printf(“%d”,k);

27、 的輸出結果為_。A)012 B) 0124 C) 01234 D) 沒有輸出結果8.為表示關系x>=y>=z,應使用C語言表達式_。A)(y<=x)&&(y>=z) B)(x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)&(y>=z)6. 若變量已正確定義,語句“if(a>b) k=0; else k=1;”和_等價。A、k=(a>b)?1:0; B、k=a>b;C、k=a<=b; D、a<=b ? 0 : 1;9.以下程序的輸出結果是_void main()

28、 int a = 2,b = 5; printf(“a=%d,b=%d”,a,b); A) a=%2,b=%5 B) a=2,b=5C) a=%d,b=%d D) a=%d,b=%dN10.以下程序的輸出結果是_ void main() int x=10,y=10; printf(“%d %dn”,x-,-y); A) 10 10 B) 9 9 C) 9 10 D) 10 911.若要表示if( a不等于0 )這一關系式,則能正確表示這一關系的表達式為 if (_) A) a<>0 B) !a C) a=0 D) aR12對于循環語句while(1);下面( )是正確的 A、死循環

29、 B、循環一次 C、不進入循環體 D、編譯有錯13.下面程序的輸出是(假設 int 數據是 2 個字節) void main() int a = 32768; printf(“a=%dn”,a); A) a=32768 B) a=32767 C) a=-32768 D) a=-114.表達式_是滿足:當c的值為1、3、5三個數中任意一個時值為“真”,否則值為“假”的表達式A) (c=1)|(c=3)|(c=5) B) (c!=1)&&(c!=3)&&(c!=5) C) (c=1)&&(c=3)&&(c=5) D) (c=1)|(c

30、=3)|(c=5) N15. 以下程序段的輸出結果是_ int x=3; do printf("%3d",x-=2; while (!(-x);A) 1 B) 3 0C) 1 -2 D) 死循環16、數字字符0的ASCII值為48,若有以下程序 main() char a='1',b='2' printf("%c,",b+); printf("%dn",b-a); 程序運行后的輸出結果是 A 3,2 B 50,2 C 2,2 D 2,5017、有以下程序 main() int a,b,d=25; a =

31、 d/10 & (-1); b = a && (-1); printf("%d,%dn",a,b); 程序運行后的輸出結果是 A 6,1 B 2,1 C 6,0 D 2,018若定義floata;現要從鍵盤輸入a的數據,其整數位為3位,小數位為2位,則選用()。A)scanf("%f",&a);  B) scanf("%5.2f",a);C) scanf("%6.2f",&a);  D) scanf("%f",a);19若定義inti;

32、 則以下循環語句的循環執行次數是()。for(i=2; i=0;)printf("%d", i-);A) 無限次 B) 0次C) 1次 D) 2次20下面程序段_x=3;do y=x-; if(!y)printf("x");continue; printf("#");while(1<=x<=2);A) 將輸出# B) 將輸出#*C) 是死循環 D) 含有不合法的控制表達式21.以下程序中,while循環的循環次數是( )。#include “stdio.h”main( )int i=0;while(i<10)if(i

33、<1)continue;if(i= =5)break;i+;A、1 B、10 C、6 D、死循環,不能確定次數N 22.有以下程序:#include “stdio.h”int a=3;main( )int s=0; int a=5; s+=a+; s+=a+;printf("%dn",s);程序運行后的輸出結果是( )。A、8 B、10 C、7 D、1123(4)下面程序段的運行結果是( ) main ( ) int a=11,b=10,c=0; a/=b+(b&&c); printf(%dna);A.0 B.1 C.1.1 D.1124(5)兩次運行

34、下面程序,如果從鍵盤上分別輸入6和4,則程序的輸出結果是( ) main ( ) int x; scanf(%d,&x); if(x+>5) printf(%d,x); else printf(%dn,x-1);A.7和5 B.6和3 C.7和4 D.6和4(6)語句while(!e);中,條件!e等價于( )A.e=0 B.e!=0 C.e!=1 D.e=0R25下面程序的輸出是_ main() int k=11; printf("k=%d,k=%o,k=%xn",k,k,k); A) k=11,k=12,k=13 B) k=11,k=13,k=13C) k

35、=11,k=013,k=oXb D) k=11,k=13,k=b26(7)下面程序的運行結果是( ) main( ) int i=1,sum=0; lop:sum=sum+i ; i=i+2; if(i<6)goto lop; printf (sum=%dn,sum);A.sum=4 B.sum=9 C.sum=16 D.sum=2527. 以下程序的輸出結果是_void main() int a = 2,b = 5; printf(“a=%d,b=%d”,a,b);A) a=%2,b=%5 B) a=2,b=5C) a=%d,b=%d D) a=%d,b=%d 28執行下面的程序后,a

36、的值為_ main() int a,b; for (a=1,b=1;a<100;a+) if (b>=20) break; if (b%3=1) b+=3; continue; b-=5; A) 7 B) 8C) 9 D) 10 29 30.下面的程序會( ) main() int x=3,y=0,z=0; if(x=y+z) printf(“*”); else printf(“#”); A、有語法錯誤不能通過編譯 B、輸出C、可以通過編譯,但不能通過連接,因而不能運行 D、輸出 4.以下程序的輸出結果是( ) main() int x=10,y=10,i; for(i=0;x&g

37、t;8;y=+i) printf(“%d %d”,x-,y); A、10 1 9 2 B、9 8 7 6 C、10 9 9 0 D、10 10 9 11.下面程序的輸出是_ main() int k=11; printf("k=%d,k=%o,k=%xn",k,k,k); A) k=11,k=12,k=13 B) k=11,k=13,k=13C) k=11,k=013,k=oXb D) k=11,k=13,k=b2.兩次運行下面的程序,如果從鍵盤上分別輸入6和4,則輸出結果是_ main() int x; scanf("%d",&x")

38、; if (x+>5) printf("%d",x) else printf("%dn",x-); A) 7和5 B) 6和3C) 7和4 D) 6和43.讀程序#include”stdio.h” main() int a; float b,c; scanf("%2d%3f%4f",&a,&b,&c); printf("na=%d,b=%f,c=%fn",a,b,c); 若運行時從鍵盤上輸入9876543210<CR>(<CR>表示回車),則上面程序的輸出結果是

39、_A) a=98,b=765,c=4321B) a=1,b=432,c=8765C) a=98,b=765.000000,c=4321.000000D) a=98,b=765.0,c=4321.05.下面程序的輸出是_ main() int x=3,y=6,a=0; while (x+!=(y-=1) a+=1; if (y<x) break; printf("x=%d,y=%d,a=%dn",x,y,a); A) x=4,y=4,a=1 B) x=5,y=5,a=1C) x=5,y=4,a=3 D) x=5,y=4,a=16. 7.8. 8. 三、 程序填空題F1.

40、 以下程序可判斷輸入的一個整數是否能被3或7整除,若能整除,輸出“yes”,否則輸出“no”。請填空。 #include “stdio.h” void main() int k; printf(“Enter a int number:”); scanf(“%d”,<&k>); if(<k%3=0|k%7=0>) printf(“yesn”); else printf(“non”); N2.下面程序的功能是計算1-3+5-7+  -99+101的值。main() int i,t=1,s=0; for(i=1;i<=10

41、1;i+=2)   t=<t*i>s=s+t;t=<-t> printf("%dn",s);F3.下面程序的功能是從鍵盤上輸入若干學生的學習成績,統計并輸出最高成績和最低成績,當輸入為負數時結束輸入。main()  float x,amax,amin;scanf("%f",&x);amax=x;amin=x;while(<x>=0>) if(x>amax) amax=x; if(<x<amin>) am

42、in=x;scanf("%f",&x);printf("namax=%fnamin=%fn",amax,amin);F4.下面程序的功能是計算100至1000之間有多少個數其各位數字之和是5。#include “stdio.h”void main() int i,s,k,count=0; for(i=100;i<=1000;i+) s=0; k=i; while(k) s=s+k%10; k=<k/10> if(<s=5>)count+; printf(“%d”,count);F5下列程序功能是求數組中主對角線元素之

43、和,請補充完成main() int a33,i,j,s=0; for( i=0;i<3;i+ ) for( j=0;j<3;j+) scanf("%d",<&aij>); for(i=0;i<3;i+) for( j=0;j<3;j+) if(<i=j>) s+=aij; printf("s=%dn",s);R6. 下面程序的功能是:輸入一個字符,如果它是一個大寫字母,則把它變成小寫字母,如果它是一個小寫字母,則把它變成大寫字母,其它字符不變,請將程序補充完整:main()char ch;scanf

44、(“%c”,&ch);if (ch>=A && ch <=Z) ch=ch+32;else if (<ch>=a && ch <=z>) < ch=ch-32>printf(“%c”,ch);R7. 請將用戶輸入的x,y,z三個整數按照從小到大的順序排列main()int x,y,z,t; scanf("%d,%d,%d",&x,&y,&z);if(x>y) t=y;y=x;x=t;if(<x>z>)t=z;z=x;x=t;if(<y

45、>z>)t=y;y=z;z=t;printf("small to big: %d,%d,%dn",x,y,z); F8. 以下程序從讀入的整數數據中,統計大于零的整數個數和小于零的整數個數。用輸入零來結束輸入,程序中用i統計大于零的個數,用變量j統計小于零的整數。請填空。 void main() int n,i,j; i=0;j=0; printf(“Enter INT numbers,with 0 to endn”);scanf(“%d”,&n); while(<n!=0>) if (n>0) i=i+; if (n<0) j=

46、j+; <scanf(“%d”,&n)> printf(“i=%4d j=%4dn”,i,j); F9. 以下程序用“輾轉相除法”來求出兩個正整數的最大公約數。請填空。若兩個數分別放在m和n中,求最大公約數的算法如下: (1) 將兩數中最大的那個放在m中,小的放在n中。 (2) 求出m被n除后的余數r。 (3) 若余數為0則執行步驟(7);否則執行步驟(4)。 (4) 把除數作為新的被除數;把余數作為新的除數。 (5) 求出新的余數r。 (6) 重復步驟(3)到(5)。 (7) 輸出n,n即為最大公約數。 void main() int r,m,n; printf(“Ent

47、er m,n:”); scanf(“%d%d”,<&m,&n>); printf(“m=%d n=%dn”,m,n); if (m<n) r=m;m=n;n=r; r=<m/n> while(r!=0) m=n,n=r,r=m; printf(“H.C.F=%dn,n); R10. 以下程序可判斷輸入的一個字符是否為小寫字母,如果是,則轉換為對應的大寫字母并輸出;否則,就原樣輸出。請填空。 #include “stdio.h” void main() char k; printf(“Enter a character here:”); scanf(“%c”,<&k>); if(<k>=a && k <=z>) printf(“%cn”,k-32); else printf(“%cn”,k); 1.程序打印如下形式的圖形* * * * * * *main() for(int i=1;i<=4;i+) for(int j=1; j<=i ;j+) printf( ”*” );printf( “n” );2.充下列程序,找出100200之間的全部素數# include “math.h”main() int m,k,i,n=0; for (m=101;

溫馨提示

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

評論

0/150

提交評論