大學(xué)C語言期末考試題及答案_第1頁
大學(xué)C語言期末考試題及答案_第2頁
大學(xué)C語言期末考試題及答案_第3頁
大學(xué)C語言期末考試題及答案_第4頁
大學(xué)C語言期末考試題及答案_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、東北大學(xué)C語言期末考試題及答案(1)1、構(gòu)成 C 語言的基本單位是 _B。過程 函數(shù) 語句命令2、設(shè)x為整型變量,不能正確表達數(shù)學(xué)關(guān)系:5vxv10的c語言表達式是_B.5x>5&&x<10x=6|x=7|x=8|x=9!(x<=5)&&(x<10)3、在C語言中,邏輯運算符的優(yōu)先級從高到低的排列順序為_D.&&、 | 、 !| 、 &&、 !&&、 ! 、 |! 、 &&、 |4、下面語句中,正確的是 _D_。printf"%cn" , "st

2、udent" );printf ( "%cn" , "c" );printf ( "%sn" , &a); printf ( "%sn" , "hello" );5、對于 for (表達式 1;表達式 3)可以理解為 _Bfor (表達式 1; 0;表達式 3)for (表達式 1; 1;表達式 3)for (表達式 1;表達式 1;表達式 3)for (表達式 1;表達式 3;表達式 3) 6、執(zhí)行下面程序段的結(jié)果是 _B_。 main() int x=1,a=0,b=0;

3、switch(x) case 0:b+; case 1:a+; case 2:a+;b+; printf("a=%d,b=%d",a,b); a=1,b=1 a=2,b=1 a=1,b=0 a=2,b=27、執(zhí)行下面程序段的結(jié)果是 _D_。 int x=0 ; do printf(“ %2d”,x- ); while ( x); 打印出 321 打印出 23 不打印任何結(jié)果 陷入死循環(huán)8、設(shè)x=10, y=5; z=15,執(zhí)行下面一段程序后z的結(jié)果是_C 。 If (x>y) if ( y>z) x=y; else z=y ;7654 9、如果一個函數(shù)被說明為

4、static ,那么 _B_。 該函數(shù)只能被 main 函數(shù)調(diào)用 該函數(shù)能被當前文件的函數(shù)調(diào)用,但不能被其他文件的函數(shù)調(diào)用 該函數(shù)不能被當前文件的函數(shù)調(diào)用,可以被其他文件的函數(shù)調(diào)用 任何文件的函數(shù)都可以調(diào)用該函數(shù)10、下面關(guān)于局部變量的描述中,錯誤的是 _D 函數(shù)的局部變量的有效范圍只能在本函數(shù) 函數(shù)的形式參數(shù)也是局部變量 局部變量的名稱不能和函數(shù)同名稱 不同的函數(shù)中不能定義相同名稱的局部變量11、下列初始化字符數(shù)組的語句中,錯誤的是_Achar str5="hello"char str='h','e','l','l&

5、#39;,'o','0'char str5="hi"char str100=""12、引用數(shù)組元素時,數(shù)組下標可以是 _D整型常量整型變量整型表達式以上均可面的語句中正確的是 _B13、已知: char str10,*p=str; str="ABC"p="ABC"*str="ABC"*p="ABC"14、下面語句中,錯誤的是 _D int i;int *p;p=&i;int i,*p;p=&a;int i,*p=&a;i

6、nt i,*p;*p=i;15、下面對于結(jié)構(gòu)體類型的描述正確的是 _A_。 結(jié)構(gòu)體類型的大小為各成員變量所占內(nèi)存的總和 結(jié)構(gòu)體類型變量與簡單數(shù)據(jù)類型變量的引用規(guī)則一致。 結(jié)構(gòu)體類型的大小為其成員中所占內(nèi)存空間最大的變量的大小 結(jié)構(gòu)體類型的大小為其最后一個成員中所占內(nèi)存空間的大小16、C語言規(guī)定:在一個源程序中,main函數(shù)的位置C必須在最開始 必須在系統(tǒng)調(diào)用的庫函數(shù)的后面 可以任意 必須在最后17、表達式 18/4*sqrt(4.0)/8 值的數(shù)據(jù)類型是 _C intfloat double 不確定18、在 c 語言中, char 型數(shù)據(jù)在內(nèi)存中的存儲形式是 _D 補碼反碼原碼ASCII 碼1

7、9、閱讀以下程序,當輸入的數(shù)據(jù)形式為:25, 13, 10<CR時,正確的輸出結(jié)果 為 _D_。 main() int x,y,z; scanf("%d%d%d",&x,&y,&z);printf("x+y+z=%dn",x+y+z); x+y+z=48x+y+z=35x+z=35不能確定20、有如下程序 void main() float x=2.0,yif(x<10.0) y=1.0/x; else y=1.0 ; printf(; if(x<0.0) y=0.0; else%f n”,y) ; 該程序的輸出

8、結(jié)果是( C )0.000000 0.2500000.5000001.00000021、判斷 char 型變量 s 是否為小寫字母的正確表達式是 _C。'a'<=s<='z'(s>='a')&(s<='z')(s>='a')&&(s<='z')('a'<=s)and('z'>=s)22、執(zhí)行以下語句后, y 的值為 _A_。 int x,y,z; x=y=z=0; +x | +y &&am

9、p; +z;012不確定值23、有如下程序段: int number=0; while(number+<=3)printf( “%dn”,number+); 則正確的執(zhí)行結(jié)果是 _C_。2 3 40 1 21 32 424、有如下程序 void main() int n=9 ; while(n>6) n-;printf( “%d”,n) ; 該程序段的輸出結(jié)果是 _B_。9878768765987625、要使以下程序段輸出 10 個整數(shù),請在空格中填入一個整數(shù)。for(i=0;i<=_B_;printf("%dn",i+=2);1518201026、設(shè)函數(shù)

10、 fun 的定義形式為: fun(char ch,f loat x), 則以下對函數(shù) fun 的調(diào)用語句中正確的是 _B_。fun( “ abc”, 3)t=fun( D',5)fun( ab',3)fun( 78',1)27、函數(shù)求sum(int n)的功能是計算自然數(shù)1到n的和,即1+2+,+n。Main() printf("The sum=%dn",sum (10); int sum(int n) int s=0,i;for(i=0;i<=n;i+) B 請從備選答案中選擇一答案,補全程序。s=s+n;return s;s=s+i;ret

11、urn s; return s; return s+=I;28、設(shè)函數(shù) fun 的定義形式為 int fun(int a,int n) int s=0,i=0; for(i=0;i<n;i+)s+=ai; return s; main() int a10=1,2,3,4,5; printf("sum=%d", fun(&a2,2); 則程序的運行結(jié)果為 _C3579 29、若有說明: int a10; 則對數(shù)組元素的正確引用是 _D a10 a3,5a(5)a10-10 30、以下不正確的定義語句是 _B double x5=2.0,4,0,6,0,8,0,1

12、0.0;int y5=0,1,3,5,7,9;char c1='1','2','3','4','5'char c2='x10','xa','x8'31、下面程序的運行結(jié)果是 _B。 #include "stdio.h" main() charstr="SWLIA",c; int k; for(k=0;(c=strk)!='0'k+) switch(c) case 'I':+k;break; cSW

13、ASW*SW*ASW32、以下能正確進行字符串賦值操作的是 _D_。char s5="12345"char s5='1','2','3','4','5',6'char *s;*s="12345"char *s="12345"33、以下程序段的運行結(jié)果是 _C_。 Char a ="program", *p; p=a; while (*p!='g') printf("%c", *p-32); p

14、+; PROgramPROGRAMPROproGRAM34、若有說明: char *pc ="aaa", "bbb", "ccc", "ddd" ,則以下敘述正 確的是 _C。*pc0 代表的是字符串 "aaa" 的首地址*pc0 代表的是字符 'a' 的首地址 pc0 代表的是字符串 "aaa" 的首地址 pc0 代表的是字符 'a' 的首地址35、 下列程序的運行結(jié)果是 B。#include <stdio.h> #include

15、 <string.h>void f (char *s, int n) char a,*q1,*q2; q1=s;q2=s+n-1; while(q1<q2) a=*q1+; *q1=*q2-; *q2=a; main() char b="ABCDEFG" f(b, s GAGGAGAAGAAGAG GFEDCBAAGADAGA36、 定義如下的結(jié)構(gòu)體描述同學(xué)信息 struct Student unsigned long id; char name30; char class30; s; 假設(shè)此同學(xué)的序號為 1002,姓名為黎明,班 級為冶金3班,則描述正確

16、的為C_id=1002; name=黎明;class= 冶金 3 班; id=1002; name= ”黎明” ; class= ”冶金3班”; s.id=1002; = ”黎明” ; s.class= ”冶金3班”; s.id=1002; = 黎明; s.class= 冶金3班;37、用來描述C程序中注釋的是_C_。/38、下列變量中合法的定義是 _Ashort _a=2-1 long if=0xabcL double 1_d=1.5e2 float a=1.5e2.7 39、當c的值不為0時,能夠?qū)的值賦給變量a和b的是_C,c=b=a( a=c)| ( b=c)

17、(a=c)&&(b=c)a=c=bB_ int x=100, y=200; printf40、設(shè)有以下程序段,執(zhí)行后的輸出結(jié)果是("%d",( x, y);100200100,200 編譯出錯東北大學(xué)C語言期末考試題及答案(2)10,則輸出是 _B_ main( ) int a; “%d n”,+a); elseint x=0 ; do printf(“ %2d”,1、若執(zhí)行下面的程序時從鍵盤輸入 scanf( “%d”,&a); if(a+>10) printf( printf("%dn",a-); 12111092、執(zhí)行

18、下面程序段的結(jié)果是 _D_x- ); while ( x); 打印出 321 打印出 23 不打印任何結(jié)果 陷入死循環(huán)3、執(zhí)行與句: for(n=0;n+<4; );后,變量 n 的值是 _C_。34 5 不定4、以下關(guān)于循環(huán)的描述中,錯誤的是 _D_??梢杂?for 語句實現(xiàn)的循環(huán)一定可以用 while 語句實現(xiàn)可以用 while 語句實現(xiàn)的循環(huán)一定可以用 for 語句實現(xiàn) 可以用 do,while 語句實現(xiàn)的循環(huán)一定可以用 while 語句實現(xiàn) do,while 語句與 while 語句的區(qū)別僅僅是關(guān)鍵字 while 的位置不同5、下面的描述錯誤的是 _C 函數(shù)可以有多個形式參數(shù) 函

19、數(shù)可以沒有返回值 函數(shù)內(nèi)可以嵌套定義函數(shù) 函數(shù)可以被其他函數(shù)調(diào)用6、函數(shù)返回值的類型是由 _A_決定的 定義函數(shù)時指定的返回類型函數(shù)中 return 語句的表達式類型 主調(diào)函數(shù)的實際參數(shù)類型 主調(diào)函數(shù)的返回值類型7、定義了一維 int 型數(shù)組 a10 后,下面錯誤的引用是 _B_。 a0=1;a10=2; a0=5*2; a1=a2*a0;8、定義了 int 型二維數(shù)組 a67 后,數(shù)組元素 a34 前的數(shù)組元素個數(shù)為 _B_。242518179、下面語句中,錯誤的是 _D_。int i; int *p; p=&i;int i,*p; p=&a;int i,*p=&a;

20、int i,*p; *p=i;10、已知 int 型二維數(shù)組 a34 ,數(shù)組元素 a12 的地址不能表達為 _C &a12 a1+2*a1+2*(a+1)+211、 C語言中,5種基本數(shù)據(jù)類型的存儲空間長度的排列順序為A charchar =intcharchar=int=long int<=float12、假設(shè)所有變量均為整型,則表達式 (a=2,b=5,b+,a+b) 的值是 _B_。 786213、 若有說明語句: char c='72'則變量 c _A_ 。 包含 1 個字符包含 2 個字符包含 3 個字符 說明不合法, c 的值不確定14、若 x,y 均

21、定義為整型, z 定義為 double 型,以下不合法的 scanf 函數(shù)調(diào)用 語句是 _C_。scanf("%d%lx,%le",&x,&y,&z); scanf("%2d * %d%lf",&x,&y,&z);scanf("%x%*d%o",&x,&y,&z); scanf("%x%o%6.2f",&x,&y,&z);15、 若輸入字符串:abcdev回車 >,貝U以下while循環(huán)體將執(zhí)行A 次。 while

22、(ch=getchar()='e') printf("*");1次死循環(huán)0次5次16、執(zhí)行下面的程序段后,k的值是 _C_。k=1;n=263; dok*=n%10;n/=10;while(n);36336217、 下面程序段中循環(huán)的執(zhí)行次數(shù)是_B_。 a=10;b=0; dob+=2;a-=2+b;while(a>=0);1035418、 下面程序段的運行結(jié)果是 _D。 x=2; doprintf("*");x-;while(!x=0);沒有輸出19、下面程序段的運行結(jié)果是 _B_。 i=1;s=1;a=0;doa=a+s*i;s

23、=-s;i+;while(i<=10); printf("%d",a);2-23020、有如下程序 void main() int a=2,b=-1,c=2 ; if(a) if(b<0) c=0; else c+; printf("%dn",c); 該程序的輸出結(jié)果是 _A_。012321、程序中對 fun 函數(shù)有如下說明 void fun(); 下面說明是錯誤的是 _B_ fun 函數(shù)無返回值fun 函數(shù)的返回值可以是任意的數(shù)據(jù)類型fun 函數(shù)沒有形式參數(shù)void 可以省略22、 函數(shù)求sum(int n)的功能是計算自然數(shù)1到n的和,即

24、1+2+,+n。main() printf("The sum=%dn",sum (10); int sum(int n) int s=0,i;for(i=0;i<=n;i+) B 請從備選答案中選擇一答案,補全程序。s=s+n; return s;s=s+i; return s;return s;return s+=i;23、有以下程序 int f1(int x,int y)return x>y?x:y; int f2(int x,inty)return x>y?y:x; main() int a=4,b=3,c=5,d=2,e,f,g;e=f2(f1(a

25、,b),f1(c,d); f=f1(f2(a,b),f2(c,d); g=a+b+c+d-e-f;printf()_A_4, 3, 73, 4, 75, 2, 72, 5, 724、若有說明:int a3=1,2,3,4,5,6,7; 則數(shù)組a第一維的大小是_B_234無確定值25、 判斷字符串s1是否大于字符串s2,應(yīng)當使用 _D。if(s1>s2)if(strcmp(s1,s2)if(strcmp(s2,s1)>0)if(strcmp(s1,s2)>0)26、 當運行以下程序時,從鍵盤輸入:AhaMAAhavCRxCR表示回車,則下面程序的運行結(jié)果是 _A。 #inclu

26、de "stdio.h" main() char s80,c='a'int i=0; scanf("%s",s); while(si!='0') if(si=c)ahAMaAhAMaAhAMa ahAahAMa ahA27、以下程序執(zhí)行后 a 的值為 _C。 main( ) int a,m=2, k=1,*p=&k; a=p!=&m; printf("%dn",a); -101228、以下能正確讀入字符串的程序段是 C_。char *p;scanf("%s", p);

27、char str10;scanf("%s", &str);char str10, *p;p=str; scanf("%s", p);char str10, *p=str;scanf("%s", p1);,則不能將 x11 的值賦給變量 i 的語句是29、若有定義: int i, x34;_B_。i=x11i=*(*(x+1)i=*(*(x+1)+1)i=*(x1+1)30、下面程序的運行結(jié)果是 A_。 # include <stdio.h> # include<string.h> fun(char *s

28、) char t,*a,*z; a=s; z=s+strlen(s)-1; while(a+<z-) t=*a+; *a=*z-; *z=t; main() char *p; p="a abdddfg afcdebg gbedcfa gfedcba 31、用來描述 C 程序中注釋的是 _C / /32、對于 "xyn102'"字符串的長度是 _B76121333、已知: int x=10 ;執(zhí)行語句 x-=x+x ;后 x 的值是 _A_ -1010-202034、下列描述中,正確的是 _A_ 所有的輸入 / 輸出都是通過調(diào)用庫函數(shù)處理的 所有的輸入

29、 / 輸出都是通過輸入 / 輸出語句實現(xiàn)的 getchar 和 putchar 可以省略 #include 在輸入/ 輸出格式中的 *表示跳過數(shù)據(jù)的含義35、 設(shè)x=10, y=5; z=15,執(zhí)行下面一段程序后z的結(jié)果是_Cif (x>y) if ( y>z) x=y; else z=y ;765436、 執(zhí)行下面程序段的結(jié)果是 _D_ int x=0 ; do printf( “ %2d” ,x- ); while( x);打印出 321 打印出 23 不打印任何結(jié)果 陷入死循環(huán)37、以下關(guān)于 switch 語句和 break 語句的描述正確的是 _D_ 在 switch 語句

30、中必須使用 break 語句break 語句只能用于 switch 語句體中 break 語句只能用于循環(huán)語句中 在 switch 語句中可以使用 break 語句38、與語句while (! x)等價的語句是 Awhile ( x=0)while ( x! =0)while (x! =1)while (x)39、下面的描述錯誤的是 _C_ 函數(shù)可以有多個形式參數(shù) 函數(shù)可以沒有返回值 函數(shù)內(nèi)可以嵌套定義函數(shù) 函數(shù)可以被其他函數(shù)調(diào)用40、下面關(guān)于局部變量的描述中,錯誤的是 _D 函數(shù)的局部變量的有效范圍只能在本函數(shù) 函數(shù)的形式參數(shù)也是局部變量 局部變量的名稱不能和函數(shù)同名稱 不同的函數(shù)中不能定義

31、相同名稱的局部變量東北大學(xué)C語言期末考試題及答案(3)1、定義了一維 int 型數(shù)組 a10 后,下面錯誤的引用是 正確答案是 :B a0=1;a10=2;a0=5*2; a1=a2*a0;2、設(shè)有定義: int a=1, *p=&a; float b=2.0; char c='A',以下不合法的運算是( ) 正確答案是 :C *p+; a-; b+; c-;3、若有定義: int x10, *p=x;,則 *(p+5) 表示( )正確答案是 :B數(shù)組元素 x5 的地址數(shù)組元素 x5 的值數(shù)組元素 x6 的地址數(shù)組元素 x6 的值4、執(zhí)行以下程序段后,y的值是()。in

32、t a =1,3, 5, 7, 9 int x=0, y=1, *ptr; ptr=&a1; while (!x) y+=*(ptr+x); x+; 正確答案是 :C4245、下面程序的運行結(jié)果是( )。 # include <stdio.h> void select (char *s ) int i ,j ; char *t ; t=s ; for (i=0 ,j=0 ;*(t+i)!='0';i+ ) if( *(t+i)>='0'&&*(t+i)<='9') *(s+j)=*(t+i); j+

33、; *(s+j)='0正確答案是 :DHPw19 &17HPw19 &1719176、對于下面語句描述不正確的為 struct Student unsigned long id;char name30; char class30; oStu1;正確答案是 :B struct Student 為用戶自定義類型 Student 為用戶自定義類型name為結(jié)構(gòu)體成員變量oStu1 為結(jié)構(gòu)體變量名稱那么 *(*(p+1)+1) 的值為面的表達式不可以用來表示7、已知: char *pstr="abcd","efgh",*p=&ps

34、tr;正確答案是 :Cbcfg8、已知: int a5=0,1,2,3,4; int *p=a;a3 的是 正確答案是 :C*(a+3)*(p+3)*p+3p39、 strlen("A0B0C")的結(jié)果為 正確答案是 :B012310、定義了 int 型二維數(shù)組 a67 后,數(shù)組元素 a34 前的數(shù)組元素個數(shù)為 正確答案是 :B 2425281711、下面的描述錯誤的是 正確答案是 :C函數(shù)可以有多個形式參數(shù) 函數(shù)可以沒有返回值 函數(shù)內(nèi)可以嵌套定義函數(shù) 函數(shù)可以被其他函數(shù)調(diào)用12、下面關(guān)于全局變量的描述中,錯誤的是 正確答案是 :C所有在函數(shù)體外定義的變量都是全局變量 全局

35、變量可以和局部變量同名稱 全局變量第一次被引用時,系統(tǒng)為其分配內(nèi)存 全局變量直到程序結(jié)束時才被釋放13、以下關(guān)于循環(huán)的描述中,錯誤的是 正確答案是 :D可以用 for 語句實現(xiàn)的循環(huán)一定可以用 while 語句實現(xiàn)可以用 while 語句實現(xiàn)的循環(huán)一定可以用 for 語句實現(xiàn) 可以用 do,while 語句實現(xiàn)的循環(huán)一定可以用 while 語句實現(xiàn) do,while 語句與 while 語句的區(qū)別僅僅是關(guān)鍵字 while 的位置不同14、引用數(shù)組元素時,數(shù)組下標可以是 正確答案是 :D整型常量整型變量 整型表達式 以上均可a315、已知:int a5=0,1,2,3,4; int *p=a;下

36、面的表達式不能用來表示的是正確答案是 :C*(a+3)*(p+3)*p+3p316、已知: char str10,*p=str; 下面的語句中正確的是 正確答案是 :Bstr="ABC"p="ABC"*str="ABC"*p="ABC"17、 對于下面語句描述不正確的為 struct Student unsigned long id; char name30; char calss30; oStu1;正確答案是 :B struct Student 為用戶自定義類型 Student 為用戶自定義類型name為結(jié)構(gòu)體成

37、員變量oStu1 為結(jié)構(gòu)體變量名稱18、一個 c 程序的執(zhí)行是從 正確答案是 :A本程序的 main 函數(shù)開始,到 main 函數(shù)結(jié)束 本程序文件的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束 本程序的 main 函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束 本程序文件的第一個函數(shù)開始,到本程序 main 函數(shù)結(jié)束19、若 x、 i 、 j 和 k 都是 int 型變量,則計算下面表達式后, x 的值為 x=(i=4,j=16,k=32)正確答案是 :C416325220、若有定義: int a=7;float x=2.5,y=4.7;則表達式 x+a%3*(int)(x+y)%2/4的值是 正

38、確答案是 :A2.5000002.7500003.5000000.00000021、以下敘述中正確的是( ) 正確答案是 :D輸入項可以是一個實型常量,如 scanf (“ %f”,3.5 ); 只有格式控制,沒有輸入項也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scanf( “a=%d,b=%d”) ;當輸入實型數(shù)據(jù)時, 格式控制部分可以規(guī)定小數(shù)位數(shù), 例如: scanf( “%4.2f”, &f) ;當輸入數(shù)據(jù)時,必須指明變量地址,例如: scanf (“%f”, &f);22、以下程序輸出結(jié)果是( )。 void main ( ) int m=5 ; if (m+>5) prin

39、tf( “%d n”, m); else printf( “%d n”, m-) ; 正確答案是 :B765423、當執(zhí)行以下程序段時( )。 x=-1 ; do x=x*x ; while (! x); 正確答案是 :A循環(huán)體將執(zhí)行一次循環(huán)體將執(zhí)行兩次 循環(huán)體將執(zhí)行無限次系統(tǒng)將提示有語法錯誤24、執(zhí)行以下程序后,輸出的結(jié)果是( while (-y ); printf (“%d n”, 正確答案是 :D)。void main() int y=10; do y- y- ); ?-118025、有如下程序 void main() int x=23; do printf(“%d”,x -) ; wh

40、ile(!x) ; 該程序的執(zhí)行結(jié)果是( )正確答案是 :B 32123 不輸出任何內(nèi)容 陷入死循環(huán)26、有如下程序 void main () int y=3,x=3,z=1;printf( “%d %d n”,(+x,y+),z+2) ; 運行該程序的輸出結(jié)果是( ) 正確答案是 :D 3 44 24 33 327、有如下程序 void main( ) int x=1,a=0,b=0; switch(x) case 0: a+;case 1: b+ ; case 2: a+ ; b+; p rintf( “a=%d,b=%dn”,a,b ); 該 程序的輸出結(jié)果是( )正確答案是 :Aa=1

41、,b=2a=1,b=1a=1,b=0a=2,b=228、若程序中定義了以下函數(shù) double myadd(double a,double b) return (a+b) ; 并將其放在調(diào)用語句之后,則在調(diào)用之前應(yīng)該對該函數(shù)進行說明,以 下選項中錯誤的說明是double myadd(double a,b) ; double myadd(double,double);正確答案是 :Adouble myadd(double b,double a) ; double myadd(double x,double y);29、有以下程序 int fun(int x , int y) if(x<y)

42、return x; return y; main( ) int a= 9,b=8,c=7; printf(“ %dn”, fun(a,b); 程序的執(zhí)行結(jié)果是正確答案是 :B函數(shù)調(diào)用出錯89730、有以下程序 void f(int v , int w) int t; t=v;v=w;w=t; main( ) int x=1,y=3,z=2; if(x>y) f(x,y); else if(y>z) f(y,z); else f(x,z);printf( “%d,%d,%dn”,x,y,z); 執(zhí)行后輸出結(jié)果是正確答案是 :A1,2,33,1,21,33,12,3,131、以下列一維

43、整型數(shù)組a的正確說明是正確答案是 :D int a(10);int n=10,an;int n; scanf("%d",&n); int an; #define SIZE 10 int aSIZE;32、若二維數(shù)組a有m列,則計算任一元素aij在數(shù)組中位置的公式為。(假設(shè) a00 位于數(shù)組的第 1 個位置上)正確答案是 :D i*m+jj*m+ii*m+j-1i*m+j+133、下面程序的運行結(jié)果是 。 #include "stdio.h" main() chara="morning",t; int i,j=0;for(i=1

44、;i<7;i+)if(aj<ai) j=i; t=aj;aj=a7; a7=aj; puts(a); 正確答案是 :Bmogninr mo morning mornin34、執(zhí)行下面程序段的結(jié)果是 main() int x=1,a=0,b=0; switch(x) case 0:b+; case 1:a+; case 2:a+;b+ printf("a=%d,b=%d",a,b); 正確答案是 :B a=1,b=1a=2,b=1a=1,b=0a=2,b=235、若有以下程序段: for(m=1;m<=100;m+) scanf( “%d”,&y);

45、 if(y<0)continue; printf( 正確答案是 :D“ %3d”,m); 正確的描述是 當 y<0 時整個循環(huán)結(jié)束當 y>=0 時什么也不輸出 printf 函數(shù)永遠也不執(zhí)行 最多允許輸出 100 個非負整數(shù)36、. 以下關(guān)于 switch 語句和 break 語句的描述正確的是 正確答案是 :D在 switch 語句中必須使用 break 語句 break 語句只能用于 switch 語句體中 break 語句只能用于循環(huán)語句中 在 switch 語句中可以使用 break 語句37、下列描述中,正確的是 正確答案是 :A所有的輸入 / 輸出都是通過調(diào)用庫函

46、數(shù)處理的所有的輸入 / 輸出都是通過輸入 / 輸出語句實現(xiàn)的 getchar 和 putchar 可以省略 #include 在輸入/ 輸出格式中的 *表示跳過數(shù)據(jù)的含義38、若給定表達式( x)?(a+): ( a- ),則表達式 x 正確答案是 :C和(x=0)等價和( x!=1 )等價和( x!=0 )等價和(x=1)等價39、 對于"xyn102W"字符串的長度是 正確答案是 :B76121340、下面說法不正確的是 正確答案是 :DC語言能編寫操作系統(tǒng)C 語言是函數(shù)式的語言數(shù)據(jù)類型多樣化書寫格式自由、不規(guī)范東北大學(xué)C語言期末考試題及答案(4)1、 定義了一維 in

47、t 型數(shù)組 a10 后,下面錯誤的引用是 正確答案是 :Ba0=1;a10=2;a0=5*2;a1=a2*a0;2、 設(shè)有定義:int a=1, *p=&a; float b=2.0; char c='A',以下不合法的運算是( ) 正確答案是 :C *p+;a-;b+;c-;3、若有定義: int x10, *p=x;,則 *(p+5) 表示( )正確答案是 :B數(shù)組元素 x5 的地址數(shù)組元素 x5 的值數(shù)組元素 x6 的地址數(shù)組元素 x6 的值4、執(zhí)行以下程序段后,y的值是()。int a =1,3, 5, 7, 9 int x=0, y=1, *ptr; ptr=

48、&a1; while (!x) y+=*(ptr+x); x+; 正確答案是 :C 124245、下面程序的運行結(jié)果是( )。 # include <stdio.h> void select ( char *s) int i , j ; char *t ; t=s ; for ( i=0 , j=0 ;*(t+i)!='0';i+ ) if( *(t+i)>='0'&&*(t+i)<='9') *(s+j)=*(t+i); j+; *(s+j)='0正確答案是 :DHPw19 &17

49、HPw19 &1719176、對于下面語句描述不正確的為 struct Student unsigned long id;char name30; char class30; oStu1;正確答案是 :B struct Student 為用戶自定義類型 Student 為用戶自定義類型name為結(jié)構(gòu)體成員變量oStu1 為結(jié)構(gòu)體變量名稱那么*(*(p+1)+1)的值為7、已知:char *pstr="abcd","efgh",*p=&pstr;b正確答案是 :C面的表達式不可以用來表示8、已知: int a5=0,1,2,3,4; int

50、 *p=a; a3 的是 正確答案是 :C *(a+3)*(p+3)*p+3p39、strlen("A0B0C") 的結(jié)果為 正確答案是 :B 012310、定義了 int 型二維數(shù)組 a67 后,數(shù)組元素 a34 前的數(shù)組元素個數(shù)為 正確答案是 :B 2425281711、下面的描述錯誤的是 正確答案是 :C函數(shù)可以有多個形式參數(shù) 函數(shù)可以沒有返回值 函數(shù)內(nèi)可以嵌套定義函數(shù) 函數(shù)可以被其他函數(shù)調(diào)用12、下面關(guān)于全局變量的描述中,錯誤的是 所有在函數(shù)體外定義的變量都是全局變量 全局變量可以和局部變量同名稱 全局變量第一次被引用時,系統(tǒng)為其分配內(nèi)存 全局變量直到程序結(jié)束時才被

51、釋放正確答案是 :C13、以下關(guān)于循環(huán)的描述中,錯誤的是 正確答案是 :D可以用 for 語句實現(xiàn)的循環(huán)一定可以用 while 語句實現(xiàn)可以用 while 語句實現(xiàn)的循環(huán)一定可以用 for 語句實現(xiàn) 可以用 do,while 語句實現(xiàn)的循環(huán)一定可以用 while 語句實現(xiàn) do,while 語句與 while 語句的區(qū)別僅僅是關(guān)鍵字 while 的位置不同14、引用數(shù)組元素時,數(shù)組下標可以是 正確答案是 :D整型常量整型變量 整型表達式 以上均可int *p=a; 下面的表達式不能用來表示a315、已知:int a5=0,1,2,3,4;的是正確答案是 :C *(a+3)*(p+3)*p+3p

52、316、已知: char str10,*p=str;正確答案是 :B面的語句中正確的是 str="ABC" p="ABC" *str="ABC" *p="ABC"struct Student unsigned long id;17 、對于下面語句描述不正確的為 char name30; char calss30; oStu1; 正確答案是 :B struct Student 為用戶自定義類型 Student 為用戶自定義類型name為結(jié)構(gòu)體成員變量oStu1 為結(jié)構(gòu)體變量名稱18、一個 c 程序的執(zhí)行是從 正確答案

53、是 :A本程序的 main 函數(shù)開始,到 main 函數(shù)結(jié)束 本程序文件的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束 本程序的 main 函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束 本程序文件的第一個函數(shù)開始,到本程序 main 函數(shù)結(jié)束19、若 x、i 、j 和 k 都是 int 型變量, 則計算下面表達式后, x 的值為 x=(i=4,j=16,k=32) 正確答案是 :C416325220、若有定義: int a=7;float x=2.5,y=4.7;則表達式 x+a%3*(int)(x+y)%2/4的值是 正確答案是 :A2.5000002.7500003.5000000.0000

54、0021、以下敘述中正確的是( )正確答案是 :D輸入項可以是一個實型常量,如 scanf (“ %f”,3.5 ); 只有格式控制,沒有輸入項也能正確輸入數(shù)據(jù)到內(nèi)存,例如: scanf( “a=%d, b=%d”) ;當輸入實型數(shù)據(jù)時,格式控制部分可以規(guī)定小數(shù)位數(shù),例如:seanf( “4.2f”, &f) ;當輸入數(shù)據(jù)時,必須指明變量地址,例如:seanf(“%f”, &f);22、以下程序輸出結(jié)果是( )。 void main ( ) int m=5; if (m+>5)printf( “%dn”, m); else printf(“%dn”, m-) ; 正確答案

55、是 :B765423、當執(zhí)行以下程序段時( )。 x=-1 ; do x=x*x ; while (! x); 正確答案是 :A循環(huán)體將執(zhí)行一次循環(huán)體將執(zhí)行兩次循環(huán)體將執(zhí)行無限次 系統(tǒng)將提示有語法錯誤24、執(zhí)行以下程序后,輸出的結(jié)果是( while (-y ); printf (“%d n”,)。void main() int y=10; do y- ; y- ); 正確答案是 :D -118025、有如下程序 void main() int x=23; do printf(“%d”,x -) ; while(!x) ; 該程序的執(zhí)行結(jié)果是( )正確答案是 :B 32123 不輸出任何內(nèi)容 陷入死循環(huán)26、有如下程序 void main () int y=3,x=3,z=1;printf( “%d %d n”,(+x,y+),z+2); 運行該程序的輸出結(jié)果是( )正確答案是 :D 3 44 24 33 327、有如下程序 void main( ) int x=1,a=0,b=0; switch(x) case 0: a+;case 1: b+ ; case 2: a+ ; b+;

溫馨提示

  • 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

提交評論