C語言程序設(shè)計(jì)復(fù)習(xí)資料_第1頁
C語言程序設(shè)計(jì)復(fù)習(xí)資料_第2頁
C語言程序設(shè)計(jì)復(fù)習(xí)資料_第3頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、C 語言程序設(shè)計(jì)復(fù)習(xí)資料填空題1、在 C 語言中, 字符類型的數(shù)據(jù)在內(nèi)存中以相應(yīng)的ASCII 碼 存放,所以字符也可以用整數(shù)形式輸出。2、在 C 語言中,符號(hào)常量是在一個(gè)程序中指定的用名字代表的常量,定義符號(hào)常量 一般用 define 命令, 定義一個(gè)符號(hào)常量 PI ,其值為 3.14159 ,格式是 define PI 3.14159265 。3、用 條 件 運(yùn) 算 符 寫 出 求 兩 個(gè) 數(shù) a , b 大 者 的 表 達(dá) 式 max (ab)?a:b;。4、在一個(gè)函數(shù)中有定義 int (*p)10 ,則 p 為 。5、 C 語言函數(shù)參數(shù)傳遞的兩種方式是 和;6、在 C 語言中,一般在程序

2、中用 來定義構(gòu)造類型7、C 語言程序是函數(shù)構(gòu)成的, 其中有且只有個(gè)主函數(shù), 可以有個(gè)其它函數(shù)。8、設(shè)整型變量 X,Y ,Z 的值均為 15,執(zhí)行 X%=Y+Z 后, X= ,繼續(xù)執(zhí)行 X=YZ?X+2 :X2 后, X=。9、執(zhí)行語句“ for(j=1;j=5;j+ ) ;”后,變量 j 的值為 。10、函數(shù)形式參數(shù)的作用域是。11、若有以下定義: char a; int b; float c; double d; 則表達(dá)式 a*b+d c 的值的類 型是 。12、在一個(gè)函數(shù)中有定義 int a=5 , *p=&a ;執(zhí)行 *p=a+15 ;后, a 的值為。13、在一個(gè)函數(shù)中有定義 floa

3、t a=70 ,*p=&a ;執(zhí)行 *p=*p +20 ;后, a 的值為。14、定義一個(gè)長(zhǎng)度為 20 的整形一維靜態(tài)數(shù)組 a ,且前 4 個(gè)元素的初值為 6,12,18, 24,定義的格式為:。15、結(jié)構(gòu)化程序設(shè)計(jì)的三種基本結(jié)構(gòu)是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和。16、表達(dá)式 (int)(20+2 .5*3+6+5 .8) 的值是 。17、寫出表達(dá)式 11 14&17 25 的值。18、在 C 語言中,字符串是用雙引號(hào)引起來的一串字符。 在機(jī)器中, 字符串 ABcdEFgn 需占用 字節(jié)的內(nèi)存空間。19、int j,k,i=15 ; j=i+ ; K=i+j ; 則 K 的值是 :。20、.結(jié)構(gòu)化 程序

4、 設(shè)計(jì) 的三種 基 本結(jié)構(gòu) 是:選擇結(jié) 構(gòu)、循 環(huán)結(jié)構(gòu)和。21、在 C 語言中,一個(gè)二維數(shù)組可以看成若干個(gè) 數(shù)組。22、文件操作步驟通常是:打開、操作和 。23、一個(gè) C語言程序總是從開始執(zhí)行24、設(shè) 宏 定 義 #define D (x) x/x, 則 引 用 D(2+3) 后 的 值 是25、以下十個(gè)運(yùn)算符 + ! c)?(b+1):(c+2),3 后 a 的 值是 。28、語句 int (*p)() 的含義是.29、全局變量放在內(nèi)存的區(qū)30 在 C 語言中,單目運(yùn)算符的結(jié)合方向(運(yùn)算方向)是 ;唯一的一個(gè)三目運(yùn)算符是 。31 能正確表示“當(dāng) ch 為小寫字母為真,否則為假”的表達(dá)式是 。

5、32 循環(huán)語句 for(;) printf(OK n); 和 do printf(OKn);while(0);執(zhí)行完畢循環(huán),循環(huán)次數(shù)分別是 和 。33明 int i,j,k;則表達(dá)式 i=10,j=20,k=30,k*=i+j 的值為選擇題1、在 C 語言中字符型( char)數(shù)據(jù)在內(nèi)存中是以()形式存儲(chǔ)的A 原碼 B 補(bǔ)碼 C 反碼 D ASCII 碼2、在 C 程序中可以作為變量名的合法標(biāo)識(shí)符是()A static B 23-b C #stu D If3、若有以下定義和語句: int a, b, c; scanf(“ a=%d , b=%d , c=%d ”, &a ,&b ,&c );為

6、 了使 1,3,2 分別賦給 a,b,c,從鍵盤上輸入數(shù)據(jù)的正確形式是()A 1 3 2 B 1,3,2 C a=1b=3 c=2D a=1,b=3,c=24、若要求在 if 后一對(duì)圓括號(hào)中表示 a 不等于 0 的關(guān)系,能正確表示這一關(guān)系的表達(dá)式是 ()A a! = 0B a=0 C a=0 D a05、以下說法不正確的是()A for , while , do-while 循環(huán)體中的語句均可由空語句構(gòu)成;B 使用 while 和 do-while 循環(huán)時(shí),循環(huán)變量初始化的操作應(yīng)在循環(huán)語句之前完成;C do-while 和 for 循環(huán)均是先執(zhí)行循環(huán)體語句,后判斷表達(dá)式;D while 循環(huán)是

7、先判斷表達(dá)式,后執(zhí)行循環(huán)體語句。6、循環(huán)語句 for (a=0,b=0;ano C p-no D *p . no11、有一個(gè)二維數(shù)組 s33 , 其第 2行第 3 列元素的正確表示是:A * (S+3) +3 B s23 C s2 ,3 D s2312、C 語言規(guī)定數(shù)組名做實(shí)參時(shí),它和對(duì)應(yīng)形參之間的數(shù)據(jù)傳遞方式是:A 單向值傳遞 B 無傳遞 C 地址傳遞 D 用戶指定傳遞方式13、若變量 a 是 int 類型,并執(zhí)行了語句: a= A +2 ;則正確的敘述是:A a的值是字符 2 B a 的值是 67 C 不能用字符和數(shù)字相加 D a 的值是 A14、以下程序的輸出結(jié)果是:main() int

8、 a=5 , b=4, c=6, d ;Printf ( “ %dn” , d= ab?(ac?a:c):b) ;A 5 B 4 C 6 D 不確定15、在說明語句中有: float (*fp)( );則 fp 代表的是:A 一個(gè)用于指向一維數(shù)組的行指針; B 一個(gè)返回值為實(shí)型的函數(shù)名;C 一個(gè)用于指向函數(shù)的指針變量; D 一個(gè)指向?qū)嵭蛿?shù)據(jù)的指針;16、有 int *P ;剛下面語句正確的是:A p=( int * ) malloc ( sizeof( int ); B p=malloc (int );C p=int *malloc ( sizeof (int ); D p= malloc (

9、 sizeof ( int );17、設(shè)有宏定義 #dedine pi 3.14 和 #dedine S(r) pi*r*r若在函數(shù)中有語句 float b=3.6 , area ; area=S(b) ;則 area 的值是A 3.6 B 3.14 C 11.304 D 40.694418、若給出以下定義: char m10 , *p=m ;則以下表達(dá)式不正確的是( )A p = m+5 ; B m=m+p ; C m3= a; D p=p+1 ;19、若變量 a 是 int 類型,并執(zhí)行了語句: a= A +2 ;則正確的敘述是:A a的值是字符 2 B a 的值是 67 C 不能用字符和

10、數(shù)字相加 D a 的值是 A 20 設(shè)有如下定義:int (*ptr)*() ; 則以下敘述中正確的是A ptr 是指向一維組數(shù)的指針變量B ptr 是指向 int 型數(shù)據(jù)的指針變量C ptr 是指向函數(shù)的指針,該函數(shù)返回一個(gè) int 型數(shù)據(jù)D ptr 是一個(gè)函數(shù)名,該函數(shù)的返回值是指向 int 型數(shù)據(jù)的指針21 下列不正確的轉(zhuǎn)義字符是A) 、 B) 、“ C)074 D)、 022 若有以下定義:char a;int b;float c;double d;則表達(dá)式 a*bd-c 值的類型為A)float B)int C)char D)double23 表示關(guān)系 x =y =z 的 c 語言表

11、達(dá)式為A)(X =Y)&(Y=Z) B)(X =Y)AND(Y=Z)C)(X =Y=Z)D)(X =Y)&(Y =Z)24 設(shè) a=1,b=2,c=3,d=4, 則表達(dá)式: a b?a:c d?a:d 的結(jié)果為A)4 B)3 C)2 D)125 設(shè) x 為 int 型變量,則執(zhí)行以下語句后, x 的值為x=10;x=x-=x-x;A)10 B)20 C)40 D)3026 下列可作為 C 語言賦值語句的是A)x=3,y=5 B)a=b=6C)i-; D)y=int(x) ;27 設(shè) x,y,z,t 均為 int 型變量,則執(zhí)行以下語句后, t 的值為x=y=z=1;t=x|y&z;A)不定值B

12、)2 C)1 D)028 設(shè) i 是 int 型變量, f 是 float 型變量,用下面的語句給這兩個(gè)變量輸入值: scanf(i=%d,f=%f , &i,&f) ;為了把 100和765.12 分別賦給 i 和f, 則正確的輸入為A)100765.12 B)i=100,f=765.12C)100765.12 D)x=100y=765.1229 設(shè) x 和 y 均為 int 型變量,則執(zhí)行下的循環(huán)后, y 值為for(y=1,x=1;y =50;y)if(x=10)break;if (x%2=1)x=5;continue;x-=3;A)2 B)4 C)6 D)830 給出以下定義:char

13、 x=abcdefg ;char y=a,b ,c ,d ,e ,f ,g ;則正確的敘述為A)數(shù)組 X和數(shù)組 Y等價(jià) B) 數(shù)組 x 和數(shù)組 Y的長(zhǎng)度相同C)數(shù)組 X的長(zhǎng)度大于數(shù)組 Y 的長(zhǎng)度 D) 數(shù)組 X 的長(zhǎng)度小于數(shù)組 Y的長(zhǎng)度 31 以下敘述中不正確的是A)在不同的函數(shù)中可以使用相同名字的變量B) 函數(shù)中的形式參數(shù)是局部變量C) 在一個(gè)函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效D) 在一個(gè)函數(shù)內(nèi)的復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效32 假定 a 和 b 為 int 型變量,則執(zhí)行以下語句后 b 的值為 a=1;b=10;dob-=a;a ;while (b- 0) ;A)9 B)-2C

14、)-1 D)833 設(shè) j 為 int 型變量,則下面 for 循環(huán)語句的執(zhí)行結(jié)果是 for(j=10;j3;j-)if(j%3)j-;-j;-j;printf(%d , j) ;A)6 3 B)7 4 C)6 2 D)7 334 設(shè)有以下宏定義:#define N 3#define Y(n)(N1)*n) 則執(zhí)行語句: z=2 *(NY(51) ;后, z 的值為A)出錯(cuò) B)42 C)48 D)5435 設(shè) P1和 P2是指向同一個(gè) int 型一維數(shù)組的指針變量, k 為 int 型變量, 則不能正確執(zhí)行 的語句是A)k=*P1*P2;B)p2=k;C)P1=P2;D)K=*P1 *(*P

15、2) ;36 設(shè)有如下定義:int arr=6,7,8,9,10 ;int *ptr; 則下列程序段的輸出結(jié)果為 ptr=arr;*(ptr2)=2;printf (%d,%d 、 n , *ptr,*(ptr2);A)8,10 B)6,8 C)7,9 D)6,1037 以下程序的輸出結(jié)果是main()int i,k,a10, p3 :K=5;for (i=0;i 10;i)ai=i;for (i=0;i 3;i)pi=ai*(i1);for (i=0;i 3;i)k=pi*2; printf(%d 、n ,k) ; A)20 B)21 C)22 D)2338 執(zhí)行以下程序段后, m的值為in

16、t a23=1,2,3,4,5,6 ;int m,*p;p=&a00 ;m=(*p)*(*(p2)*(*(p4) ;A)15 B)14 C)13 D)12(39) 有以下程序段char arr=ABCDE ;char *ptr;for(ptr=arr;ptr arr5;ptr)printf(%s、n ,ptr) ;輸出結(jié)果是A)ABCD B)A C)E D)ABCDE(40) 有以下程序 main()int x,i;or(i=1;i =50;i)x=i;if(x%2=0)if(x%3=0)if(x%7=0) printf(%d,i) ;”輸出結(jié)果是A)28 B)27 C)42 D)41(41)

17、 有下列程序 #include stdio.h main() union int k;char i2 ;*s,a;s=&a;s-i0=0x39;s-i1=0x38; printf(%x 、n , s-k) ;輸出結(jié)果是A)3839 B)3938 C)380039 D)390038(42) 有以下程序#include stdio.hmain()int a,b,c=246;a=c/100%9;b=(-1)&(-1) ;printf(%d,%d 、n ,a,b) ;輸出結(jié)果是A)2,1 B)3,2 C)4,3D)2,-1(43) 有以下程序#include stdio.h struct stuint

18、 num;char name10 ;int age;;void fun(struct stu *p)printf(%s 、n ,(*p) 。 name); main()struct stu students3=9801,Zhang,20 ,9802,Wang ,19 ,9803,Zhao , 18 ; fun(students2) ;輸出結(jié)果是A)Zhang B)Zhao C)Wang D)18(44) 設(shè)有以下說明和定義: typedef unionlong i;int k5; char c;DATE;struct date int cat;DATE cow;double dog;too;D

19、ATE max; 則下列語句的執(zhí)行結(jié)果是 printf (%d , sizeof (struct date )sizeof(max) A)26 B)30 C)18 D)8(45) 有以下程序main()char a=programming char *p1,*p2;int i;p1=a;p2=b; for(i=0;i 7;i) if(*(p1i)=*(p2i)printf( 輸出結(jié)果是A)gm B)rg C)or (46) 有以下程序 viod fun (int a,int b,int c) a=456;b=567;c=678; main() int x=10,y=20,z=30; fun (

20、x,y,z) ;,b=language c , *(p1i)D)gaprintf(%d,/%d輸出結(jié)果是n ,c,d) ;A)30,20,10 B)10,20,30 C)456,567,678(47) 有以下程序int fun(int x,int y,int *cp,int *dp)D)678,567,456*cp=xy;*dp=x-y; main() int a,b,c,d; a=30;b=50;fun(a,b,&c,&d) ; printf(%d,%d 、n , 輸出結(jié)果是 A)50,30 B)30,J50 (48) 有以下程序 main()int i,j; for(j=10;j 11;j

21、) for(i=9;i j;i) if ( ! (j%i)break; if(i=j-1)printf(%d 輸出結(jié)果是 A)11 B)10 C)9 (50) 有以下程序 include atdio.h int abc(int u,intv) main ()int a=24,b=16,c; c=abc(a,b) ; printf(%d 、n ,c) int abc(int u,int v) int w; while(v) w=u%v;u=v;v=w return u; 輸出結(jié)果是 A)6 B)7 C)8c,d) ;C)80,-20D)80,20, j) ;D)10 11D)9三、閱讀程序?qū)懗鲞\(yùn)

22、行結(jié)果1、main() int x , y=10 ;x = 3 + 5 * 5 6 ;printf ( x = %d y=%d n , x , y) ; x = 10 + 2 * 3 7 ;printf ( x = %d n , x ) ;x = ( 7 + 6 ) % 5 + 2 ;y = x + y ;printf ( x = %d y=%dn , x , y) ; 輸出結(jié)果: x = 16 y=10x = 9x = 5 y=152、 include “ stdio.h ”main( )int sum=0 , k=1 ;dosum = sum + k ; k = k+2 ; while (

23、 k=10 ) ;printf (“su%md ” , sum)輸出結(jié)果: sum 3、 include “ stdio.hmain ( )int i;int count (int i ); for ( i = 1 ; i=3 ; i+) count( i ) ;int count ( int n) static int x = 1 ;printf ( “%d : x=%d , “ , n , x ) ;x = x+2 ;printf ( “x+2 = %d n, 輸出結(jié)果:4、 swap ( int *p1 , int *p2 ) int temp ;temp = *p1 ;*p1=*p2

24、;*p2 = temp ;main ( ) int a, b ;int *pt1 , *pt2 ;scanf ( %d %d , &a , &b ) ; pt1=&a ;pt2= &b ;if ( ab) swap (pt1, pt2 ) ; printf ( %d %d ,*pt1 ,*pt2 ) ;輸入 55 66輸出結(jié)果:5、# include main ( ) int a, b , c , d , x ;a = c = 0 ; b = 21 ; d = 60 ;if ( a ) d = d 30 ;else if (!b )else if (!c ) x = 55; else x =

25、65 ;printf (“d=%d , xn=”%d , d , x ) ;輸出結(jié)果:6、# include main ( ) int a , b ;for ( a=1 ; a= 6 ; a+) for ( b=1 ; b= 14-2*a ; b+)printf ( “ “/*輸 ) 出; 一個(gè)空格 */ for ( b=1 ; b= a ; b+)printf ( 4“d %“ , a ) ;printf ( n“ ) ;輸出結(jié)果:7、# include # define sub ( x ) (x) (x)main ( ) int a =2 4 , b = 46 , c = 78 , m ;

26、m = sub(a+b)*c ;printf (“ m = %d ” , m ) ;輸出結(jié)果:8、# include main ( ) int a33= 21 , 22, 23, 24, 25, 26, 27, 28, 29 , j ;Long m = 1 ;for ( j=0 ; j3 ; j+) m=m*a j j ;printf (“ m= %d “ , m ) ;輸出結(jié)果:9、# include main ( ) int a33 = 7,8,9 , *p , k ; p=&a00 ; for ( k=0 ; k2 ; k+ ) if ( k=0 ) akk+1 = *p+1 ; els

27、e +p ;printf (“ %d ” , *p ) ;輸出結(jié)果:10 include “ stdio.h ”main ( )int x , y , z ;x = ( z=10 , z+15 ) ;y= ( x=3 , x+z) ;printf (“ %d , %d ,n %”d , x , y , z ) ;輸出結(jié)果:11、 include “ stdio.h ” main ( )char str10 , temp10int k ;gets ( temp ) ;for ( k=0 ; k 0 ) strcpy(temp , str ) ;printf( “ %s “ , temp ) ;輸

28、入: usa , canada , china , japan , korea 輸出結(jié)果為:12、 include “ stdio.h ”main( )int s1, s2, s3 ,c , I ;int x ;s1= s2= s3 = 0 ;for ( I= 0 ; I =60&x y ) if ( z x )m = ;else if ( y x )m = y ; return ( ) ; main ( ) float a , b , c , ma ;scanf ( “ %f f %f “ , &a , , &c ); ma = max ( a , b , c) ;printf ( “ th

29、e max is “ , ma ) ; 2、已知計(jì)算 的公式為 =4*(1-1/3+1/5-1/7+ ), 下面的程序是要根據(jù)此公式來求 的值 ,精度要求為 0.00001, 請(qǐng)?zhí)顚懣杖辈糠?include #include main() int sign = 1;float pi=0 , item=1 ,n=1 ;while ( ) pi=pi+item;sign = -sign;item = ;n = ;pi = ;printf( “pi=%f ”, pi);3、有一封信共有 3 行,每行 20 個(gè)字符。統(tǒng)計(jì)其中有多少英文大寫字母,多少英文小寫字 母,多少數(shù)字字符。#define N 3#define M #include stdio.hvoid str_count ( char

溫馨提示

  • 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)論