C語言理論試題庫_第1頁
C語言理論試題庫_第2頁
C語言理論試題庫_第3頁
C語言理論試題庫_第4頁
C語言理論試題庫_第5頁
已閱讀5頁,還剩80頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!1C語言程序設(shè)計理論試題庫選擇100選擇題1. 以下選項中屬于 C語言的數(shù)據(jù)類型是()A、復(fù)數(shù)型2. 在 C 語言中,不正確的A、 32768B、 intB、3. 設(shè)有說明語句: char a= 72A、包含1個字符B、邏輯型 類型的常數(shù)是 0 ;則變量 a (包含 2 個字符C雙精度型)D集合型037)包含 3 個字符D、0 xAF說明不合法4. 以下所列的C語言常量中,錯誤的是(A、 0 xFFB 、 1.2e0.55. 以下選項中合法的字符常量是 (A、BB、 0106. 在C語言中,合法的長整型常數(shù)是(A、 0LB

2、、 49627107. 下列標識符中,合法的標識符是 ( )、2L、 72C、-268324562&、DD、216DA、 -abc18.C 語言程序的基本單位是A、語句B9. 以下敘述正確的是( )A、可以把define和ifB、 1abc ( ) 程序行abc1D、 forC、函數(shù)D、字符定義為用戶標識符B、可以把define定義為用戶標識符,但不能把 ifC、 可以把if定義為用戶標識符,但不能把define 都不能定義為用戶標識符)和 if 定義為用戶標識符 定義為用戶標識符,但不能把 ifdefineD、 define 和 if10以下敘述正確的是definedefineA、B、C、D

3、、可以把 可以把 可以把 defineif 定義為用戶標識符,但不能把 和 if 都不能定義為用戶標識符定義為用戶標識符 定義不用戶標識符定義為用戶標識符 定義為用戶標識符本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!2本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!3的文本文件進行讀、寫操作,下面符合16若要打開 A 盤上的 user 子目錄下名為 abc.txt此要求的函數(shù)調(diào)用是()A、 fopen(A : userabc.txt , r) C、 fopen(A : userabc.txt , rb) 17以下程序的輸出結(jié)果是()A、 0B

4、、 29B、fopen(A : userabc.txt, r+)D、fopen(A : userabc.txt, w) if(n2) return(fib(n-1)+fib(n-2) else return(2) ;main( )printf(%dn , fib(3) ; 該程序的輸出結(jié)果是();A、 2B、 4C、 6D、 812 在C語言中,函數(shù)的隱含存儲類別是()A、 autoB、staticC、 externD、 無存儲類別13以下所列的各函數(shù)首部中,正確的是()11有如下程序long fib(int n)A、B、C、D、 14在A、 15若A、: Integer , var b :

5、Integer) ,b), int b)void play(var void play(int a void play(int aSub play(a as integer, b as integer)C程序中,可把整型數(shù)以二進制形式存放到文件中的函數(shù)是(fprintf 函數(shù)B、 fread 函數(shù) C、 fwrite 函數(shù)fp 是指向某文件的指針,且已讀到此文件末尾,則庫函數(shù) EOFB、 0C、 非零值)D、 fputc 函數(shù) feof(fp) 的返回值是( )D、 NULL本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!4s=2;C、 31D、 無定值fun(int

6、x , int y , int z) z=x*x+y*y ; main( ) int a=31 ;fun(5 , 2, a) ; printf(%d , a) ; 18當調(diào)用函數(shù)時,實參是一個數(shù)組名,則向函數(shù)傳送的是()A、數(shù)組的長度B、數(shù)組的首地址C數(shù)組每一個元素的地址D數(shù)組每個元素中的值19以下只有在使用時才為該類型變量分配內(nèi)存的存儲類說明是()A、 auto 和 staticC、 register 和 staticB、 auto 和 registerD、 extern 和 register20以下程序的輸出結(jié)果是()A、 1B、 2C、 3D、 4long fun( int n) lon

7、g s ;if(n= =1 | n= =2)本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!5, num);B、123else s=n-fun(n-1) return s ; main( ) printf(%ldn, fun(3) ; 21以下程序的輸出結(jié)果是()main( ) int num= 0 ; while(num=2) num+ ; printf(%dnA、 123422以下程序的輸出結(jié)果是()int f( )static int i=0 ;int s=1 ; s+=i ; i+ ; return s ;23以下程序的輸出結(jié)果是()f(int b , int

8、m , int n)int i,s=0 ;for(i=m ; in ; i=i+2) s=s+bi return s ;main( )int x ,a =1 , 2,3, 4,5, 6,x=f(a ,3,7) ;printf(%dn, x) ;A、10B、1824下列程序執(zhí)行后的輸出結(jié)果是(A、 GB、 Hmain( )7, 8, 9 ;C、8D、15)C、ID、JC、1D、2main( )int i , a=0; for(i=0 ; i5;i+)a+=f() ;printf(%dnA、20,a);B、24C、 25D、 15本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支

9、持!6252627282930313233int x=f;printf(%c n, A+(x-a+1)列程序執(zhí)行后的輸出結(jié)果是(A、 -32767 main( )int x=0 xFFFFprintf(%d nB、FFFE, x-) ;語句 printf(abrehiyboun) A、 abrehiybou C、 rehiyou 有如下程序 main( ) int y=3 , x=3, z=1 ; printf(%d %dn, (+x, 運行該程序的輸出結(jié)果是( A、 3 4y+) ,B、)C 、 -1的輸出結(jié)果是( abrehiybou、 abrehiybouz+2);C、 4 3 若變量已

10、正確說明為 float 類型,要通過語句 scanf(%f 賦于 10.0 , b 賦予 22.0 , c 賦予 33.0 ,不正確的輸入形式是: 1022 33 10.022.0 y 、 z 被定義為 int INPUT x 、 y、 z;scanf(%d%d%d ,B、4 2D、-32768( 說明 :b 是退格符A、C、x、A、33.0 型變量,若從鍵盤給C、 以下程序段的輸出結(jié)果是( int a=1234 ; printf(%2dn , a) ;A、 12x,y, z) ;)B、34設(shè) int b=2 ;表達式 (b2)/(b1)A、 0 有如下定義( )struct personch

11、ar name9struct person class10= 根據(jù)上述定義,能輸出字母 prinft(%cn pfintf(%cn prinft(%cn printf(%cnB、 2A、B、C、D、設(shè)有以下說明語句struct exD、 3 3%f%f , &a, &b, &c);給)B、 10.0 , 22.0 , 33.0D、 10 22 33 x、 y 、 z 輸入數(shù)據(jù),正確的輸入語句是(B、 scanf(%d%d%d , &x, &y, &z);D、 read(%d%d%d, &x, &y, &z) ;C、 1234 的值是( )C、 4D提示出錯、無結(jié)果D、 8Johu ,M的語句是

12、, class3.mane), 1), 1), 0)int age ; ; 17, )Paul ,19, Mary ,18,Adam,16 ;本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!7本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!834 int x ; float y ; char z ; example ; 則下面的敘述中不正確的是( ) A、 struct 是結(jié)構(gòu)體類型的關(guān)鍵字 C、 x,y, z 都是結(jié)構(gòu)體成員名 以下程序的輸出是A、10)B、11B、D、C、353

13、6struct st int x ; int *y int dt4= 10 struct st aa4= 50 main( ) p=aa ; printf(%dn , +(p-x) ; 以下程序的輸出結(jié)果是( main( ) char x=040 ; printf(%onA、100 若有說明語句: b、 c 的語句是(; *p ;,20,30,40 ; ,&dt0 , 60, xb?(ac?a : c) : (b)A、5B、4C、38. 設(shè) x ,y ,z 和 k 都是 int 型變量,則執(zhí)行表達式:6D不確定x=(y=4 ,z=16,k=32) 后, x 的值( )int a=5, b=4,

14、c=6,printf(%dn A、 4B、 16C、 32D、 5239當 c 的值不為 0 時,在下列選項中能正確將 c 的值賦給變量 a、b 的是()A、 c=b=a;B、 (a=c)|(b=c);C、 (a=c)&(b=c) ;D、 a=c=b;40能正確表示 a 和 b 同時為正或同時為負的邏輯表達式是 ()A、(a=0|b=0)&(a0|b=0&b=0)&(a0&b0)&(a+b041語句: printf(%d, (a=2)&(b=-2);的輸出結(jié)果是 ()A、無輸出B、結(jié)果不確定C、 -1D、 142設(shè)有 int x=11; 則表達式 (x+ * 1/3)的值是 ( )A、 3B、

15、 4C、 11D、 12本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!-11043設(shè) int x=1 , y=1 ; 表達式 (!x|y-)的值是(A、 0B、 1C、44.C語言中運算對象必須是整型的運算符是()A、 %=B、 /C、45. 若已定義 x 和 y 為 double 類型,則表達式 x=1 ,C、B、/D、A、 146若有以下程序段 int c1=1 ,c2=2, c3; c3=1.0/c2*c1 ; 則執(zhí)行后, c3 中的值是A、 047能正確表示邏輯關(guān)系:A、 a=10 or a=0|a=10)0 1B、B、main( ) int a= -1, b

16、=1,if(+a0)& ! (b- =10 &a=10ll a=0D、)C、1 0,a,b);D、則合法的Bswitch 語句是、 switch(a) case 1case 2switch(a+b) case 1: printf(*n)case 2 : printf(*n) default :printf(n)D、printf(*n) printf(*n)switch(x) case 0 :b+;case 1 :a+;case 2 :a+;b+; printf(a=%d , b=%dn ,a, 該程序的輸出結(jié)果是(A、a=2,b=151. 有如下程序b);)B、 a=1, b=1C、 a=1,

17、 b=0D、a=2, b=2本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!-111本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!121.00000010,10 9,1main( ) float x=2.0 , y ; if(x0.0) y=0.0 ; else if(x10.0)y=1.0/x ;else y=1.0 ; printf(%fn , y) ; 該程序的輸出結(jié)果是( )A、 0.000000B、 0.250000C、 0.500000D、52. 有如下程序main( ) int a=2 , b=-1 , c=2 ; if(ab)

18、if(b0)c=0;else c+ ; printf(%dn , c) ; 該程序的輸出結(jié)果是 ( )53. 若執(zhí)行以下程序時從鍵盤上輸入 9,則輸出結(jié)果是()A、 11B、 10C、 9D、main ( ) int n ; scanf(%d , &n); if(n+10) printf(%dn ,n) ; else printf(%dn, n-) ;54. 閱讀以下程序:main( ) int x ; scanf(%d , &x) ; if(x-8; y=+i)printf( %d,%d, x- ,y) ;本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!13for(i

19、=A ; iI ;i+ , i+) printf(%c , i+32) ; printf( 57以下程序的輸出結(jié)果是A、2 0main( ) int n=4 ;while(n-) printf(%d 58以下程序的輸出結(jié)果是 A、#*#*# main( ) int i ;for(i=1 ;i6 ;i+) if(i%2) printf(#) printf(*) ;printf(n) ;59以下程序的輸出結(jié)果是A、編譯不通過,無輸出C、 acegimain( ) int i ;( )B、 3 1C、 3 2 1, -n) ;( )B、 #C、 *; continue ; ( )B、 acegD、

20、abcdefghiD、 2 1 0D、 *#*#*本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!14n) ;60以下循環(huán)體的執(zhí)行次數(shù)是()A、 3D、 0main( ) int i , j ;for(i=0 , j=1 ; i20) break ; while(a=14) ;B、 a=12 y=12 a=16 y=28 a=18 y=24D、 a=12 y=12a=14 y=44, a , y) ;本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!1562有如下程序main( ) int i, sum;for(i=1 ; i6) n-x-) ;

21、while(!x)B、 23;c、不輸出任何內(nèi)容D、陷入死循環(huán)printf(%d ,n) ;該程序段的輸出結(jié)果是(A、 98765有以下程序段int k=0 ;while(k=1)k+;while 循環(huán)執(zhí)行的次數(shù)是(A、無限次66以下程序執(zhí)行后A、 15min( ) int i, sum;for(i=1 ; i6 ; printf(%dn67有以下程序段int x=3 ; do printf(%d 其輸出結(jié)果是(A、 1)B、 876C、8765D、9876)B有語法錯,不能執(zhí)行sum 的值是( )B、 14i+) sum+=i ; , sum) ;,x-=2) ; while (!(-x)B

22、、 3 068 t 為 int 類型,進人下面的循環(huán)之前,C、C、C、一次也不執(zhí)行不確定1 的值為 0( )D、死循環(huán)D、D、執(zhí)行 1 次while( t=l )則以下敘述中正確的是本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!16本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!17A、循環(huán)控制表達式的值為0C循環(huán)控制表達式不合69以下循環(huán)中,main( )int i=0 ;while(i10)if (i1) continueB循環(huán)控制表達式的值為D以上說法都不對while 循環(huán)的次數(shù)是(if(i=5) break ; i+;A、 1B、 10

23、70以下程序的輸出結(jié)果是main( )int a=0 ,j;for(j=0 ;j4 ;j+) switch( j ) case 0case 3: a+=2;case 1case 2: a+=3;default: a+=5;D、死循環(huán),不能確定次數(shù)printf(%dnA、36,a);B、13C、10D、71下列程序的輸出結(jié)果是A、非法main( ) char a10=9 printf(%d 72有如下程序段 int a=14 , b=15, char c=A;x=(a&b)&(cB) 執(zhí)行該程序段后, A、 ture,8, ,*-p)x;B、a4)的地址C、5D、2037,6,5,;x 的值為(

24、B、 false4,3, 2,1,0 ,*p=a+5 ;C、0D、 173. 下列描述中不正確的是 ( 字符型數(shù)組中可以存放字符串 可以對字符型數(shù)組進行整體輸入、 可以對整型數(shù)組進行整體輸入、輸出A、B、C、D、輸出不能在賦值語句中通過賦值運算符=對字符型數(shù)組進行整體賦值本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!18本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!1974. 執(zhí)行下面的程序段后,變量A、不定值int k=3 , s2 ; s0=k ;k=s1*10 ;75. 設(shè)有數(shù)組定義:A、 4 個字節(jié)76. 有如下程序main( ) i

25、nt n5=0,0,0 ,for(i=0 ; ik ;i+) printf(%dn , 該程序的輸出結(jié)果是A、不確定的值77. 若有以下的定義:A、 &t3278. 有如下程序 main( ) int a33=1for(i=1 ; i3 ; for(j=0 ; j=i printf(%dn , k 中的值為(B、33)C、 30char array =ChinaB、 5 個字節(jié)i , k=2 ; ni=ni+1 ;則數(shù)組 array 所占的空間為C、6 個字節(jié)D、 10)D、 7 個字節(jié)nk)B、2int t32,2, i+);j+)s) ;能正確表示B、 t33,4 ,5,s+=aij該程序

26、的輸出結(jié)果是 ()A、 18B、1979. 以下程序的輸出結(jié)果是()A、 20B、 21main( ) int i ,k, a10 , p3;k=5;for (i=0; i10 ;i+)ai =i;for (i=0;i3 ;i+)pi =ai *(i+1)for (i=0;i3 ;i+)k+=pi *2 ;k);printf(%dn80以下程序的輸出結(jié)果是A、 1,main( ) intifor(i=05,9,B、1,)4,7,6 ,x33=1; i3 ;i+)2, printf(%d3, 4,5, 6,II81以下程序的輸出結(jié)果是A、 ABCDB、ABCDFGHEFGC、C、 1t 數(shù)組元素

27、地址的表達式是(C、 t12D、 0)D、 t2C、C、C、7,xi2-i),s=0;20D、22D、21233,5,8,9;EFGJK7,D、D、EFGHIJKL3,6,9,本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!20本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!21KLIJmain( ) char w 10= ABCD,EFGH,IJKL , MNOP, k;for(k=1 ; k3;k+) printf(%sn, wk) ;82.當執(zhí)行下面的程序時,如果輸入ABC則輸出結(jié)果是(C、A、ABC6789#include stdio.h

28、#include string.h main( ) char ss10=1, 2 ,gets(ss) ; strcat(ssB、ABC673,4,5;,6789) ; printf(%sn83. 以下程序段的輸出結(jié)果是(char s = 141141abct printf(%dn,strlen(s)A、984. 若有定義: int aa8A、 &aa0+185.以下程序的輸出結(jié)果是 main( )char cf35= AAAA printf(%sn 86)12345ABC6D、ABC456789,ss) ;12C、;。則以下表達式中不能代表數(shù)組元素 B、&aa1)B、C、13aa1&aa0+,

29、 BBB, CC ; , ch1) ;A、AAAA 以下不能正確進行字符串賦初值的語句是 A、 char str5= good! C、 char *str=good! 以下程序的輸出結(jié)果是B、BBBC、BBBCCB、D、) char str = good! char str5= gD、14的地址的是( )D、 aa+1D、CC;o , o , d ;87 main( ) int b33=0 for(i=0 ; i3 ; for(j=i ; j=i t=t+bibjj printf(%dn A、3,1,2,0, i+) ;j+),t) ;88以下程序的輸出結(jié)果是A、52Main( )int I,

30、 x33=9 ,for(I=0 ; I4 ;I+=2) B、(B、1, 2,0, 1,2,i, j , t=1 ;518,7,6,printf(5,4,%d3,2, pI)C、C、53D、9D、971 ,*p=&x11本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!22本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!2389以下程序的輸出結(jié)果是(A、6main( ) char a10=1int i ;i=8 ; p=a+i ;printf(%snB、)6789C、6D、789, 2 , p-3) ;90以下程序的運行結(jié)果是 (A、運行后報錯#in

31、clude stdio.h main( ) int a =1 int *p=a+5 * q=*(p+5)B、3 , 4 , 2, 3 , 4 , 5, 6 , 7 , 8, , *q=NULL ;printf(%d %d n 91 若已定義: 表達式是 (A、 p+1 92若有說明:, *p , *q) ;59,A、B、C、D、, 6 , 7 , 8 , 9 , 0, *p;C、6 1210, 11,12, ;D、5 5int)a9 , *p=a;并在以后的語句中未改變p的值,不能表示 a1B、 a+1C、 a+D、 +plong *p ,a;則不能通過scanf語句正確給輸入項讀入數(shù)據(jù)的程序

32、段是 , p) ; scanf(%ld , p) ;, p=&a) ;*p=&a; scanf(%ld p=(long *)malloc(8) scanf(%ld scanf(%ld, &a) ;93若有以下的說明和語句,則在執(zhí)行A、 t20B 、 t22int t33, *pt(3, k ;for (k=0; kaB、 *pa0main( ) int a10=6, 7, 2,for(i=0 ; i10 ; i+ ,if(_) *a=*pprintf(%d, *a) ;95以下程序的輸出結(jié)果是for 語句后, *(*(pt+l)+2)C、tl2表示的數(shù)組元素是D、t2l地址的A、09, 1,

33、10,p+)5,B 、 123 456 780main( ) char ch34=123 for(i=0 ; i3 ;i+) for(i=0 ; i*a0D、*p0 *a08,4,C、D、3, *p=a ,i ;D、 14778 , *p3; int i ;, pi) ;本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!24本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!2596有以下函數(shù)char fun(char *p) returnp ; 該函數(shù)的返回值是(A、無確切的值C一個臨時存儲單元的地址97以下程序的輸出結(jié)果是(B形參p中存放的地址值D

34、形參p自身的地址值A(chǔ)、4 2 1 1B、C、4 6 7 8D、8 8 8 8main( ) char *s= ;int v4=0,0,0, 0, k, i ;for(k=0 ; sk;k+) switch(sk) case 1: i=0 ;case 2:i=1;case 3:i=2 ;case 4:i=3; vi+ ; for(k=0 ; k4;k+) printf(%d vk) ;98以下程序的輸出結(jié)果是A、 AfghdEFG #includestring.h main( ) char *p1(B、 AbfhdC、 AfghdD、 Afgdp1=abcd ; strcpy(str+1 pri

35、ntf(%s 99若已定義: 其中 0i2);本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!29printf(%dn,j);45. 設(shè)有以下程序 :main() int n1,n2;scanf(%d,&n2);while(n2!=0) n1=n2%10;n2=n2/10;printf(%d,n1); 程序運行后,如果從鍵盤上輸入 1298;則輸出結(jié)果為 _ 。46. 以下程序輸出的最后一個值是 _ 。int ff(int n) static int f=l;f=f*n;return f;main() int i;for(I=1;I=5;I+ printf(%dn,ff

36、(i);47. 設(shè)有以下程序:main() int a, b, k=4, m=6, *p1=&k, *p2=&m;a=pl=&m;b=(*p1) (*p2)+7;printf(a=%dn,a);printf(b=%dn,b); 執(zhí)行該程序后, a 的值為 _ , b 的值為 _。48. 若已定義: int a10, i;,以下 fun 函數(shù)的功能是:在第一個循環(huán)中給前 10 個數(shù)組元素依次賦 1、2、 3、 4、5、6、7、 8、 9、10;在第二個循環(huán)中使 a 數(shù)組前 10 個元素中的 值對稱折疊,變成 1、2、3、 4、5、5、4、3、2、1。請?zhí)羁铡un( int a ) int i;

37、for(i=1; i=10; i+)_=i;for(i=0; i0 ? p/10 : p%3);51. 以下程序運行后的輸出結(jié)果是 _ 。main() char m;m=B+32; printf(%cn,m);52. 以下程序運行后的輸出結(jié)果是 _ 。main() int a=1,b=3,c=5;if (c=a+b) printf(yesn);else printf(non);53. 以下程序運行后的輸出結(jié)果是 _ 。main() int i,m=0,n=0,k=0;for(i=9; i=11;i+)switch(i/10) case 0: m+;n+;break;case 10: n+; b

38、reak; default: k+;n+;printf(%d %d %dn,m,n,k);54. 執(zhí)行以下程序后,輸出 # 號的個數(shù)是 _ 。#include main() int i,j;for(i=1; i5; i+)for(j=2; j=i; j+) putchar(#);55.以下程序的功能是調(diào)用函數(shù)fun計算:m=1-2+3-4+9-10,并輸出結(jié)果。請?zhí)羁铡nt fun( int n) intm=0,f=1,i;for(i=1; i=n;i+)m+=i*f;f= _ ; return m;mai n()prin tf(m=%dn,_ );56. 以下程序運行后的輸出結(jié)果是 _.m

39、ain () inti,n =0,0,0,0,0;for(i=1;i=4;i+)本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!31ni=ni-1*2+1;prin tf(%d,n i);57. 已知字符A的ACSII碼值為65,以下語句的輸出結(jié)果是 _char ch=!B:pintf(“ %c %d”,ch,ch);58. 有以下語句段intn 1=1 0JI2=20:pi訕_”,n1.n2);要求按以下格式輸出n1和n2的值,每個輸出行從第一列開始,請?zhí)羁铡?11 二 10n2=2(j59. 有以下程序TTlclill()ini I-1 J5;-)t*=i;卩in1

40、ln” ,t);執(zhí)行后輸出結(jié)果是_ 。60. 有以下程序in()int n=0,ni=l tx=2;-=1;_=2;-=3; n ” ,x);執(zhí)行后輸出結(jié)果是 _。61. #includechar chlxh2; ini dil=getchar(): ch2=getchar();-O ; n2=n1*10+(ch2 0);pnntf( “ %d” ,n2);程序運行時輸入:12回車,執(zhí)行后輸出結(jié)果是 _ 。62. 有以下程序void X iiil yil x)冷;*x=*X-y;int x=2,v=4;北燼);本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!32n”,x

41、,y);Ii執(zhí)行后輸出的結(jié)果是_ 。63. 函數(shù)fun的功能是計算 xndouble fun(doLible xjni nl;double y=1;i=1; i 50)printf(%d,a);if(a40)printf(%d,a);if(a30)printf(%d,a);66. 以下程序的輸出結(jié)果是 _mai n()char s = abcdef;s3= 0;printf(%sn , s);67. 下列程序段的輸出結(jié)果是 _。mai n() char b=Hello,yo u;b5=0 ;printf(%s n, b );68以下程序的輸出結(jié)果是 _mai n()char *p= abcde

42、fgh, *r ;long *q ;q=(long*)p ;q+ ;本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!33r=(char*)q ;printf(%sn,r);69 以下程序運行后的輸出結(jié)果是 _mai n() char s =9876 , *p ;for ( p=s ;ps+2 ;p+) printf(%sn , p);70 .mystrlen函數(shù)的功能是計算 str所指字符串的長度,并作為函數(shù)值返回。請?zhí)羁眨篿nt mystrle n( char *str)int i;for(i=0 ;(1)!= 0; i+);return (2);71. 以下程序用來

43、統(tǒng)計文件中字符個數(shù)。請?zhí)羁眨?in cludestdio.hmai n()FILE *fp ; long num=0L ;if(fp=fopen(fname.dat , r)=NULL)printf(Open errorn) ; exit(0) ; while( _)fgetc(fp) ;num+ ; printf(num=%ldn , num-1);fclose(fp);72. 下面程序把從終端讀入的文本(用作為文本結(jié)束標志)輸出到一個名為bi.dat的新文件中。請?zhí)羁铡?include stdio.hFILE *fp ; char ch ;if( (fp=fope n (_) )= = N

44、ULL)exit(O) ;while( (ch=getchar( ) !=) fputc (ch , fp);fclose(fp);73 .用以下語句調(diào)用庫函數(shù)malloc,使字符指針st指向具有11個字節(jié)的動態(tài)存儲空間,請?zhí)羁?。st=(char*) _ ;74. 若要使指針p指向一個double類型的動態(tài)存儲單元,請?zhí)羁?。p= _malloc(sizeof(double);75. 以下程序通過函數(shù)指針p調(diào)用函數(shù)fun,請在填空欄內(nèi),寫出定義變量p的語句。void fun(int *x , int *y) . 本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!34main

45、( ) int a=10 ,b=20 ;_; /定義變量 p */p=fun ; p(&a , &b) ; 76以下程序的輸出結(jié)果是 _ 。main( ) int arr =30 , 25, 20, 15, 10, 5 , *p=arr ; p+;printf(%dn , *(p+3) ;77.若有以下定義,則不移動指針 p,且通過指針 p引用值為98的數(shù)組元素的表達式是int w10=23 , 54, 10, 33, 47, 98, 72, 80, 61, *p=w ;78. 以下定義的結(jié)構(gòu)體類型擬包含兩個成員,其中成員變量info 用來存入整型數(shù)據(jù);成員 變量 link 是指向自身結(jié)構(gòu)體的

46、指針,請將定義補充完整。Struct nodeint info ; _ link ;79. 設(shè)有如下宏定義#define MYSWAP(z , x, y) z=x ;x=y ;y=z 以下程序段通過宏調(diào)用實現(xiàn)變量 a、b 內(nèi)容交換,請?zhí)羁眨篺loat a=5, b=16 , c;MYSW AP(_ , a, b);80. 以下程序段用于構(gòu)成一個簡單的單向鏈表,請?zhí)羁?。struct STRU int x , y ;float rate ;_p; a , b;a. x=0; a.y=0 ; a.rate=0; a.p=&b ;b. x=0; b.y=0 ; b.rate=0; b.p=NULL ;

47、81 設(shè)有以下結(jié)構(gòu)類型說明和變量定義,則變量a在內(nèi)存所占字節(jié)數(shù)是 _ 。Struct stud char num6 ;int s4 ;double ave; a , *p ;82 下列程序段的輸出結(jié)果是 _。int n=c ;switch(n+) default: printf(error) ; break;case a: case A: case b: case B: printf(good) ; break; case c: case C: printf(pass) ; case d: case D: printf(warn) ;本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通

48、,謝謝支持!35 83以下程序的輸出結(jié)果是 _main( )int s ,i ;for(s=0 , i=1 ; i3 ;i+ ,s+=i) ; printf(%dn , s); 84設(shè)有以下程序:main( ) int n1 , n2; scanf(%d , &n2) ; while(n2!=0) n1=n2%10 ; n2=n2/10 ; printf(%d , n1); 程序運行后,如果從鍵盤上輸入1298;則輸出結(jié)果為 _85要使以下程序段輸出 10 個整數(shù),請?zhí)钊胍粋€整數(shù)。for(i=0 ; i= _ ; printf(%dn , i+=2) ;86. _ 若輸入字符串:abcde,則

49、以下while循環(huán)體將執(zhí)行 _ 次。While(ch=getchar( )= e) printf(*) ;87.以下程序的輸出結(jié)果是 _main( )int a=177 ; printf(%on , a);88.以下程序的輸出結(jié)果是 _main( )int a=0 ; a+=(a=8); printf(%dn , a);89.以下程序的輸出結(jié)果是 _main( )int a=5 , b=4, c=3, d;d=(abc);printf(%dn , d);90.以下程序的輸出結(jié)果是 _mai n()int x=0;sub(&x ,8, 1);printf(%dn,x);sub(int *a ,

50、int n , int k)if(k=n) sub(a , n/2,2*k);*a+=k ;91 以下程序輸出的最后一個值是 _int ff(int n) static int f=l;f=f*n ;本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!36return f ;mai n() inti ;for(i=1 ; i=5 ; i+ ) printf(%dn, ff(i) ;92 .以下函數(shù)的功能是:求x的y次方,請?zhí)羁铡ouble fun( double x , int y) inti ;double z ;for(i=1 , z=x ; iy ; i+) z=z

51、*_;return z ;93 .若已定義:int a10, i ;,以下fun函數(shù)的功能是:在第一個循環(huán)中給前 10個數(shù)組元素依次賦1、2、3、4、5、6、7、8、9、10 ;在第二個循環(huán)中使 a數(shù)組前10個元素中 的值對稱折疊,變成1、2、3、4、5、5、4、3、2、1。請?zhí)羁?。fun( int a) int i ;for(i=0 ; i10 ; i+)(1)= _ ;for(i=0 ; i5 ; i+)(2)=ai;94.若變量n中的值為24,則prnt函數(shù)共輸出(1) _行,最后一行有(2) _個數(shù)。void prn t(i nt n , int aa) inti ;for(i=1 ;

52、 i(y)?(x) :(y)main() int a=5 ,b=2 , c=3, d=3, t; t=MAX(a+b , c+d)*10 ; printf(%dn , t);100. 下列程序段的輸出結(jié)果是 _int n=c;switch(n+) default: printf(error);break;case a:case A:case b:case B:printf(good);break;case c:case C:printf(pass);case d:case D:printf(warn);C語言程序設(shè)計理論試題庫程序題100例【程序 1】題目:有 1 、2 、3、4 個數(shù)字,能組

53、成多少個互不相同且無重復(fù)數(shù)字的三位數(shù)?都是多少?1.程序分析:可填在百位、十位、個位的數(shù)字都是1、 2、3、4。組成所有的排列后再去掉不滿足條件的排列。2.程序源代碼:main()int i,j,k;printf(n);for(i=1;i5;i+) *以下為三重循環(huán) */for(j=1;j5;j+)for (k=1;k5;k+)本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!38if (i!=k&i!=j& _)/*確保 i、 j、k 三位互不相同 */printf(%d,%d,%dn,i,j,k);【程序 2】題目:企業(yè)發(fā)放的獎金根據(jù)利潤提成。利潤(I)低于或等于10

54、萬元時,獎金可提10%;利潤高于 10 萬元,低于 20 萬元時,低于 10 萬元的部分按 10%提成,高于 10 萬元的部分,可 可提成 7.5% ; 20 萬到 40 萬之間時,高于 20 萬元的部分,可提成 5%; 40 萬到 60 萬之間 時高于 40 萬元的部分,可提成 3%; 60 萬到 100 萬之間時,高于 60 萬元的部分,可提成 1.5%,高于100萬元時,超過100萬元的部分按1%提成,從鍵盤輸入當月利潤I,求應(yīng)發(fā)放獎金總數(shù)?1. 程序分析:請利用數(shù)軸來分界,定位。注意定義時需把獎金定義成長整型。2 .程序源代碼:main()long int i;int bonus1,b

55、onus2,bonus4,bonus6,bonus10,bonus;scanf(%ld,&i);bonus1=100000*0.1;bonus2=bonus1+100000*0.75;本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!39bonus4=bonus2+200000*0.5;bonus6=bonus4+200000*0.3; bonus10=bonus6+400000*0.15;if(i=100000)bonus=i*0.1;else if( _)bonus=bonus1+_ ;else if(i=400000)bonus=( _)else if(i=6000

56、00)bonus=bonus4+(i-400000)*0.03;else if(i=1000000)bonus=bonus6+(i-600000)*0.015;elsebonus=bonus10+(i-1000000)*0.01; printf(bonus=%d,bonus);【程序 3】 題目:一個整數(shù),它加上 100 后是一個完全平方數(shù),再加上 168 又是一個完全平方數(shù),請 問該數(shù)是多少?1. 程序分析: 在 10 萬以內(nèi)判斷, 先將該數(shù)加上 100 后再開方, 再將該數(shù)加上 268 后再開方, 如果開方后的結(jié)果滿足如下條件,即是結(jié)果。請看具體分析:2.程序源代碼:#include ma

57、th.hmain()long int i,x,y,z;for (i=1;iy 則將 x 與 y的值進行交換,然后再用 x 與 z 進行比較,如果 xz 則將 x 與 z 的值進行交換,這樣能使 x 最小。2.程序源代碼:main()int x,y,z,t;scanf(%d%d%d,&x,&y,&z);if (xy) _ /* 交換 x,y 的值 */if(xz)t=z;z=x;x=t;/* 交換 x,z 的值 */if(yz)t=y;y=z;z=t;/* 交換 z,y 的值 */printf(small to big: %d %d %dn,x,y,z); 【程序 6】 題目:用 *號輸出字母

58、C 的圖案。1. 程序分析:可先用*號在紙上寫出字母 C,再分行輸出。2. 程序源代碼:#include stdio.hmain()printf(Hello C-world!n);printf( _);printf( *n);printf( * n);printf( *n);【程序 7】本文檔為精品文檔,如對你有幫助請下載支持,如有問題請及時溝通,謝謝支持!41題目:輸出特殊圖案,請在 c 環(huán)境中運行,看一看, Very Beautiful!1. 程序分析:字符共有 256 個。不同字符,圖形不一樣。2. 程序源代碼:#include stdio.hmain()char a= _,b= _;p

59、rintf(%c%c%c%c%cn,b,a,a,a,b); printf(%c%c%c%c%cn,a,b,a,b,a); printf(%c%c%c%c%cn,a,a,b,a,a);printf(%c%c%c%c%cn,a,b,a,b,a); printf(%c%c%c%c%cn,b,a,a,a,b);【程序 8】 題目:輸出 9*9 口訣。1. 程序分析:分行與列考慮,共 9 行 9 列, i 控制行, j 控制列。2. 程序源代碼:#include stdio.hmain()int i,j,result;printf(n);for (i=1;i10;i+) for(j=1;j10;j+)r

60、esult= _;printf(%d*%d= _,i,j,result);/*-3d 表示左對齊,占 3 位 */ printf(n);/* 每一行后換行 */【程序 9】 題目:要求輸出國際象棋棋盤。1. 程序分析: 用 i 控制行, j 來控制列,根據(jù) i+j 的和的變化來控制輸出黑方格,還是白方格。2.程序源代碼:#include stdio.hmain()int i,j; for(i=0;i8;i+) for(j=0;j8;j+) if( %2=0)printf(%c%c,219,219);elseprintf( );printf(n);【程序 10】 題目:打印樓梯,同時在樓梯上方打

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論