




已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
C語言程序設計綜合練習題一、單項選擇題1 下列( D)是字符串比較函數(shù)。 A. puts() B. gets() C. strcpy ()拷貝字符串 D. strcmp()比較字符串2構成一個完整的C源程序必須有且只有一個( C )。A. 函數(shù) B. 過程 C. 主函數(shù) int main D. 程序3. 設有int i,j,k;則表達式i=1,j=2,k=3,i&j&k的值為( A )。A. 1 B. 2 C. 63 D. 04在C語言中,不同類型數(shù)據(jù)混合運算時,要先轉化成同一類型后進行運算。設一表達式中包含有int、long、unsigned、char類型的變量和數(shù)據(jù),則表達式最后的運算結果是( D )類型數(shù)據(jù)。 Aint Bchar Cunsigned Dlong5下列( D )不是構成標識符的字符。 A.字母 B.數(shù)字 C.下劃線 D.標點符號6表達式:35&-1|63-!-1的值是( A )。A. 0 B.1 C. 表達是不合法 D. 均不對7. 以下標識符中能做為合法的C用戶標識符的是( D )。 A. A3+B3 B. float C. 3dx D. x3d8. 以下數(shù)據(jù)中不正確的數(shù)值或字符常量是( B )。 A. 0.0 B. 3E2.7 C. 9861 D. 0xabcd9. fp=fopen(test.txt,r); 語句中,r對文件處理方式是( A )。 A. 只讀打開文件 B. 只寫打開文件 C. 追加打開文件 D. 讀寫打開文件10表示關系x=y=z的C語言表達式為( A ) A. (x=y)&(y=z) B. (x=y)and(y=z) C. (x=y)&(y=z) scanf后才加& D. (x=y1/2)a=1;else a=0; 運行后,a的值是( A )。A. 1 B. 0 C. 與機器有關 D. 語法有錯15下列( C )是合法自定義標識符。A. 3ma B. float C. m3a D. ab16設a,b和c都是int型變量,且a=3,b=4,c=5,則下列表達式中,值為0的表達式是( D ) A. a & b B. a=b|b+c&b-c D. a=a+b17判斷整型變量i,j可同時被2整除的表達式(i,j同時被2整除返回1,否則返回0)是( B )。A. !(i%2)|!(j%2) B. !(i%2)&!(j%2) C. (i%2)&!(j%2) D. (i%2)|(j%2)18 若x,y均為double型變量,正確的輸入函數(shù)調(diào)用是( C )。 A. scanf(%f%f,&x,&y); B. scanf(%d%d,&x,&y); C. scanf(%lf%lf,&x,&y); D. scanf(%lf%lf,x,y);19. 設變量均為整型,表達式(a=2,b=5,ab?a+:b+,a+b)的值是( B )。(如果是真的就執(zhí)行問好后面的,是假的就執(zhí)行冒號后面的) A. 7 B. 8 C. 9 D. 220當執(zhí)行以下程序段時( D )。 x= -1; Do x=x*x;while(!x); A. 循環(huán)體將執(zhí)行一次 B. 循環(huán)體將執(zhí)行兩次 C. 循環(huán)體將執(zhí)行無限次 D. 系統(tǒng)將提示有語法錯誤21執(zhí)行下列程序段后,a值為( B )。a=1;b=0;if(a+b)?a+;b-) a+=b;(+a本身不變) A. 2 B. 3 C. 4 D. 522若x為char型變量,y為int型變量,x,y均有值,正確的輸出函數(shù)調(diào)用是( A )。 A. printf(%c%c,x,y); B. printf(%c%s,x,y); C. printf(%f%c,x,y); D. printf(%f%d,x,y);23假定a和b為int型變量,則執(zhí)行以下語句后b的值為(D )。 a=1;b=10 do b-=a;a+;while (b-=y & chb & !y)的值是( C )。 A. 0 B. 語法錯 C. 1 D. 假25假定a和b為int型變量,則執(zhí)行以下語句后b的值為( D )。 a=1;b=10; do b-=a;a+; while (b-0); A. 9 B. -2 C. -1 D. 826下列不正確的轉義字符是( C )。 A. B. C. 074 D. 0 27已知字符b的ASCII碼為98,語句printf(%d,%c,b,b+1);的輸出為( D )。A. 98,b B. 語句不合法 C. 98,99 D. 98,c28下列( B )說法,是對“int *p;”正確解釋。 A. 定義p是整型變量 B. 定義p為指向整型變量的指針變量C. 定義p為數(shù)組名 D. 定義p的內(nèi)容為整形地址 29以下各組運算符中,優(yōu)先級最高的運算符是( B )。 A. = B. / C. ! = D. & &30表示關系x=y=z的C語言表達式為( A )。 A. (x=y)&(y=z) B. (x=y)and(y=z) C. (x=y=z) D. (x=y)&(y=z)31下列程序段執(zhí)行后s值為( C )。int i=1,s=0;doif(!(i%2)continue;s+=iwhile(+i10);A. 1 B. 45 C. 25 D. 以上均不是32若x,y均為int型變量且有值,要輸出x,y的值,正確的輸出函數(shù)調(diào)用是( D )。 A. printf(%d%d,&x,&y); B. printf(%f%f,x,y); C. printf(%f%d,x,y); D. printf(%d%d,x,y);33字符串“c program”存放在內(nèi)存中占用字節(jié)數(shù)為( A )。 A. 10 B. 9 C. 11 D. 834下列程序段運行后x的值是( )。 A. 14 B. 4 C. 15 D. 3int al=1,a2=2,a3=3,x=15;if (!al) x-;else if (a3) x=3;else x=4; 35對于int a,則表達式1=a=5值是( D )。A. 0 B. 1 C. 不定 D. 表達式語法有錯36變量的存儲類型有四種。下列( )的存取速度最快。 A. 自動變量 B. 靜態(tài)變量 C. 外部變量 D. 寄存器變量37假定a和b為int型變量,則執(zhí)行以下語句后b的值為( )。a=1;b=10;do b-=a;a+; while(b-0);A. 9 B. -2 C. -1 D. 838設有以下程序段:int x=0,s=0;while(!x!=0) s+=+x;printf(%d ,s);則( )。A 運行程序段后輸出0B 運行程序段后輸出1C 程序段中的控制表達式是非法的D 程序段執(zhí)行無限次 39設x和y均為int型變量,則執(zhí)行以下語句后的輸出為( )。x=15;y=5;printf(%dn,x%=(y%=2); A. 0 B. 1 C. 6 D. 12 40已知字母a的碼值為十進制97,數(shù)字0的碼值為十進制48,下面程序的輸出是( )。 A. 輸出無定值 B. e,4 C. 101,52 D. e,52#include int main() char c1,c2; c1=a+6-2; c2=b-a+3; printf(%c,%dn,c1,c2); return 0; 41若x和y都是int型變量,x=100,y=200,則下列程序段:printf(%d,(x,y);的輸出結果是( )。 A200 B100 C100 200 D輸出格式符不夠,輸出不確定的值42假設定義數(shù)組:float score10; 并且其地址為2000,則元素score5的地址為( )。A. 2005 B. 2010 C. 2015 D. 2020 43假定p所指對象的值為25,P+1所指對象的值為46,則*(+p)的值為( )。 A. 26 B. 25 C. 46 D. 4744若i為整型變量,則以下循環(huán)執(zhí)行的次數(shù)是( )。 For(i=2;i=0;)printf(%d,i-) A無限次 B0次 C1次 D2次45設C語言中,一個int型數(shù)據(jù)在內(nèi)存中占2個字符,則unsigned int型數(shù)據(jù)的取值范圍為( )。A. 0255 B. 032767 C. 065535 D. 0214748364746已有如下定義和輸入語句,若要求a1,a2,c1,c2的值分別為10,20,A和B,當從第一列開始輸入數(shù)時,正確的數(shù)據(jù)輸入方式是( )。int a1,a2;char c1,c2;scanf(%d%c%d%c,&a1,&c1,&a2,&c2);A. 10A 20B B. 10 A 20 B C. 10A20B D. 10A20 B47閱讀以下程序,當輸入數(shù)據(jù)的形式為25,13,10正確的輸出結果為( )。#includeint main() int x,y,z; scanf(%d%d%d,&x,&y,&z); printf(x+y+z=%dn, x+y+z); return 0;A. x+y+z= 48 B. x+y+z= 35 C. x+z=35 D.不確定值48表示圖中坐標軸上陰影部分的正確表達式是( )。(其中abc)Xabc A. (x=b)&(x=c) B. (x=a)|(b=x=c)C. (x=b)&(x=c) D. (x=a)&(b=x=c)49設有以下程序段:int x=0,s=0;while(!x!=0) s+=+x;printf(%d ,s);則( )。A運行程序段后輸出0B運行程序段后輸出1C程序段中的控制表達式是非法的D程序段執(zhí)行無限次 二、判斷題1打開文件的函數(shù)是fclose。( )。2局部靜態(tài)變量是在編譯時賦初值的,即只賦初值一次。( )3C語言中允許使用字符串變量。( )4外部變量必須定義在文件的開頭部分。( )5語句while(!E);中的表達式!E等價于E= =0。( )6實型分類:單精度、雙精度和整型。( )7邏輯運算優(yōu)先級別都低于算術運算。( ) 8函數(shù)的形參在退出該函數(shù)后是不可見的。( )9如果在定義函數(shù)時省略extern,則隱含為外部函數(shù)。( )10定義二維數(shù)組時,第一維長度可以省略。( )11字符0是字符串的結束標記,其ASCII代碼為0。( ) 12若有int i=10,j=0; 則執(zhí)行完語句if(j=0)i+;else i-; i的值為11。( )13continue語句的作用是提前結束整個循環(huán)的執(zhí)行。( )14Break語句的作用是提前結束整個循環(huán)的執(zhí)行。( )15在定義函數(shù)時的參數(shù)是“形式參數(shù)”,在調(diào)用函數(shù)時的參數(shù)是“實際參數(shù)”。( )16在函數(shù)調(diào)用時,實參和形參的變量個數(shù)可以不一樣多。( )17在函數(shù)調(diào)用時,實參和形參的變量個數(shù)一定要一樣多。 ( )18若有說明:int a4=0,0則二維數(shù)組a的第一維大小為0。( )19字符串china在內(nèi)存中占據(jù)的存儲空間是5個字節(jié)。( )20打開文件的函數(shù)是fclose。( )21打開文件的函數(shù)是fopen( )。22若有說明:sratic int a34;則數(shù)組a中各元素可在程序的編譯階段得到初值0。( )23假設定義數(shù)組:float score10;并且其地址為2000,則元素score5的地址為2005。( )。24C語言的基本單位是函數(shù)。( )25已知字符b的ASCII碼為98,語句printf(%d,%c,b,b+1);的輸出為: 98,99。( )26從變量的作用域來分,變量可以分為靜態(tài)變量和動態(tài)變量。( )27若用數(shù)組名作為函數(shù)調(diào)用時的實參,則實際上傳遞給行參的是數(shù)組的第一個元素值。( )28結構體和數(shù)組一樣,它們的成員都是相同類型數(shù)的集合。( )29調(diào)用strlen(abc0ef0g)的返回值為8。( )三、填空題1如果希望函數(shù)中的局部變量的值在函數(shù)調(diào)用結束后不消失而繼續(xù)保留原值,就應該指定它為 靜態(tài)局部變量 ,用 static 進行聲明。2 結構化程序設計方法中,程序有三種基本結構,即: 順序結構 , 選擇結構 和 循環(huán)結構 。3若int i=8,j=9;float x=123.456;printf(x=%8.3f,j=%-4dn,x,j);結果為: 。4設C環(huán)境下一個int型數(shù)據(jù)占用2個字節(jié),設int a4=1,2,3,4,*p=a;其中a=2000;則*p= ,p+1= ,*(p+2)= 。5在C語言中,表示邏輯“假”值用 。6設C環(huán)境下一個int型數(shù)據(jù)占用2個字節(jié),設int a5=5,4,3,2,1,*p=a;其中a=2000;則 *p= ,p+3= ,*(p+2)= 。7用戶定義函數(shù)體部分一般分為 和 兩部分。8用下列for循環(huán)將大寫字母逆序輸出(即從Z到A),其語句為:for(i=0;ie (3) (b=10)&(a=10) (4) (a+5=b)|(c=b+a)(d=c+b) 23表達式410?(53?(4,2):3):(6,7)的值為 。24在C語言中,邏輯“真”值用 表示。25strcat(ch1,ch2)的功能是: 。26strlen(Guangzhou tvu)的值為 27若有定義:double x35; 則數(shù)組中行下標的下限為 ,列下標的上限為 28寫出i小于0或大于10時為真的表達式: 。29一個函數(shù)由兩部分組成,即: 和 。30數(shù)組元素的相關性表現(xiàn)在它們具有相同的 和 。31以下程序實現(xiàn)輸出x,y,z三個數(shù)中的最大者,請在【】內(nèi)填入正確內(nèi)容。#includestdio.hmain() int x=4,y=6,z=7; int【】; if (【】) u=x; else u=y; if (【】) v=u; else v=z; printf (v=%d,v);32在C語言中用 代表“假”,用 代表“真”。但只要 則都認為是“真”。33用來引用特定數(shù)組元素的數(shù)字稱為 。34一個C程序總是從 開始執(zhí)行的。35下面程序的功能是用公式+求的近似值,直到最后一項的值小于10為止。請?zhí)羁铡?include #include int main() long i=1;【】pi=0;while (i*i=a;i-,a+)printf(%3d,i);37用下列for循環(huán)將大寫字母逆序輸出(即從Z到A),其語句為:for(i=0;i26;i+) ;38一個源文件可以包含一個或者若干個函數(shù)。在函數(shù)內(nèi)定義的變量是 ,而在函數(shù)之外定義的變量稱為 。 變量是全局變量。39C語言中根據(jù)數(shù)據(jù)的組織形式,可以將文件分為 和 。40要把一個外部變量只限制于被本文件使用,而不被其他文件引用,必須在定義這個外部變量時加一個 。41寫出下列程序段的運行結果: 。s=7;while(-s)s-=2;printf(s=%dn,s);42C語言規(guī)定:在每一個字符串的結尾加上一個 ,以便系統(tǒng)據(jù)此判斷字符是否結束。43break語句只能用在 語句或 語句中。44Continue語句只能用在_ _語句中。45結構化程序設計方法中,程序有三種基本結構,即: , 和 。46設有int a,b;當執(zhí)行輸入函數(shù)scanf(“%d:%d”,&a,&b);時正確的輸入是 。(給a輸入5,給b輸入8)。四、問答題1請閱讀下面的程序:#includeint main() int cal(int a,int b,char op); int x,y,z,result; char op1,op2; scanf(%d%c%d%c%d,&x,&op1,&y,&op2,&z); if(op1=+&op2=*) result=cal(x,cal(y,z,op2),op1); else result=cal(cal(x, y, op1),z, op2); printf(%dn,result); return 0; int cal(int a,int b,char op) if(op=*) return(a*b); else return(a+b); 問題1:當輸入2+3*5時,上述程序將輸出 。問題2:把op1= =+ & op2= =* 中的 op1,op2對調(diào)后,當輸入為2+3*5時,上述程序將輸出 。2試闡述x和x的區(qū)別。3寫出以下程序的運行結果。#include stdio.hint main() struct stu_list int num; char *name; sl=34, sun; printf (Number=%dtName=%sn, sl.num,); return 0; 該程序的運行結果為: 4假設有以下程序段:int a10;a10=3;試分析兩個a10的區(qū)別。五、閱讀程序題1. 以下程序的執(zhí)行結果是 。#include int main() int func(int a,int b); int k=4,m=1,p; p=func(k,m); printf(%d,p); p=func(k,m); printf(%dn,p); return 0;func(int a,int b) static int m=0,i=2; i+=m+1; m=i+a+b; return(m);2. 該程序運行結果為: #include stdio.hint main() int a5=1,2,3,4,5,*p,i; p=a; printf(%dt%dt%dn,a3,*p,*(p+2); p+; printf(%dt %dn,*p,a3); return 0;3以下該程序運行結果為: #include stdio.hint main () int a5=5,4,3,2,1,*p,i; p=a; printf (%dt%dt%dn,a3,*p,*(p+2); p+; printf (%dt%dn,*p,a3); return 0;4. 閱讀以下程序#include stdio.hmain() char c; c=getchar(); switch(c) case a: case A:printf(BASICn);break; case b: case B:printf(FORTRANn);break; case c: case C:printf(PASCALn);break; default:printf(?n); return 0;請回答:輸入d,回車,運行結果為: 輸入a,回車,運行結果為: 5. 以下程序的運行結果是: #include stdio.hint main() int x,sum=3; int a=70,80,90,65,75,95,60,80; for (x=1;x7;x*=2) sum=sum+ax; printf(sum=%dn,sum); return 0; 6以下程序的運行結果是運行結果: #include stdio.hint main() void pr(int *p); int a=10,32,13,24,45,96,17,81,9,-999; int i,*pa; pa=a; for(i=0;ai!=-999;i+) printf(%d,ai); printf(n); pr(pa); return 0; void pr(int *p) while(*p!=-999) if(*p%2=0)printf(%d,*p); p+; printf(%n); 7. 閱讀以下程序#include stdio.hint main() char c; c=getchar(); switch(c) case b: case B: printf(BASICn);break; case f: case F: printf(FORTRANn); break; case p: case P: printf(PASCALn); break; default: printf(?n); return 0;請回答:輸入p,回車,運行結果為: 輸入a,回車,運行結果為: 8. 以下程序的執(zhí)行結果是 。#include int main() int func(int x); printf(%dn,func(9); return 0 func(int x) int p; if(x=0|x=1) return(3); p=x-func(x-2); return p; 9. 以下程序的運行結果是: #include stdio.hint main() void f(int n); int m=4; f(-m); f(+m); return 0; void f(int n) int x=5,y=10; if (n0) printf(%dt %dt n,+x,+y); 10. 以下程序的運行結果是: #include stdio.hint main() int m=10; printf(%dt%dt,+m,m-); printf(%dt%d,-m,m+); printf(n); return 0;11. 以下程序的該程序運行結果為: #include stdio.hint main() void f(int n); int m=1; f(-m); f(+m); return 0;void f(int n) int x=5,y=10; if (n0) printf(%dt %dtn,+x,+y);12. 以下程序的執(zhí)行結果是 。#include int main() int funcl(int a,int b); int func2(int a,int b); int x=7,y=17; printf(%dn,funcl(x,y); return 0 int funcl(int a,int b) int c; a+=a; b+=b; c=func2(a,b); return(c*c); int func2(int a,int b) int c; c=a*b%3; return(c); 13. 以下程序的執(zhí)行結果是 。#include int x=-8,y=100;int main() int func(int a); int m=2; y=func(m); printf(x=%d,y=%d,m=%dn,x,y,m); return 0 int func(int a) int y; y=x+a; x+; a+; return(x+y+a);14. 以下程序的程序運行結果為: #include stdio.hint main() int n=7; while (n=15) n+; if(n%2!=0) continue; printf(%dt,n); printf(n);return 0;15. 以下程序的運行結果為: #include stdio.hint main() struct stu_list int num; char *name; sl=34, sun; printf (Number=%dtName=%sn, sl.num,); return 0; 16. 以下程序的運行結果為: #include stdio.hint main() int x,sum=3; int a =70,80,90,65,75,95,60,80; for (x=1;x7;x*=2) sum=sum+ax; printf(sum=%dn,sum); return 0;17. 以下程序的功能是: #include stdio.hint main() int a5=31,6,31,65,41,i,j,m,k; for (i=0;i4;i+) k=i; for (j=i+1;jaj) k=j; if (k!=j) m=ak;ak=ai;ai=m; for (i=0;i5;i+) printf(%dt,ai); return 0;18. 以下程序的執(zhí)行結果是 。#include int main() int m=10; printf(%dt%dt,+m,m-); printf(%dt%d,-m,m+); printf(n); return 0; 六、程序完整填空1. 連續(xù)向數(shù)組輸入成績,當輸入負數(shù)時停止接收數(shù)據(jù),顯示數(shù)組元素的值。#include stdio.hint main() int n=0; int c100; do printf(enter num:n); 1 ; n+; while( 2 ); for(n=0;cn=0;n+) printf(%d,cn); printf(n); return;2下面程序段是從鍵盤輸入的字符中統(tǒng)計數(shù)字字符的個數(shù),用換行符結束循環(huán)。請?zhí)羁铡?#include stdio.hint main() int n=0,c; c=getchar(); while( 1 ) if( 2 ) n+; c=getchar(); printf(the number of digits is:%d,n); printf(n); return 0; 3 統(tǒng)計出讀入的10個數(shù)據(jù)中,求出大于0的整數(shù)個數(shù)和小于0的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 齒輪技術員崗位面試問題及答案
- 智能教學設備運維師崗位面試問題及答案
- 知識圖譜工程師崗位面試問題及答案
- 湖南省邵東三中2025屆高一下化學期末監(jiān)測試題含解析
- 2025屆新疆昌吉市第九中學高一化學第二學期期末學業(yè)水平測試試題含解析
- 第六單元名著導讀《水滸傳》基本知識點梳理+2025-2026學年統(tǒng)編版語文九年級上冊
- 中子星吸積現(xiàn)象-洞察及研究
- 桐廬退役警犬管理辦法
- 北京社區(qū)規(guī)約管理辦法
- 材料安裝合同管理辦法
- 2025全員安全生產(chǎn)責任制范本
- 林業(yè)行政執(zhí)法培訓
- 電大考試試題及答案商法
- 廣西壯族自治區(qū)柳州市上進聯(lián)考2024-2025學年高一下學期6月期末聯(lián)合考試數(shù)學試題(含答案)
- 高中英語必背3500單詞表完整版
- 大連農(nóng)商銀行2024年招聘172人管理單位遴選500模擬題附帶答案詳解
- 安徽省工傷職工停工留薪期分類目錄
- 2019-2020學年湖南長沙長郡中學高一入學分班考試數(shù)學卷(常用)
- 職業(yè)安全衛(wèi)生知識競賽題
- SLAP損傷的治療課件
- 廣東省外語藝術職業(yè)學院后勤服務項目檢查評分標準
評論
0/150
提交評論