西南民大C語言試卷與答案_第1頁
西南民大C語言試卷與答案_第2頁
西南民大C語言試卷與答案_第3頁
西南民大C語言試卷與答案_第4頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.一、請判斷下列說法的是否正確:(10 分,每小題 1 分 )( 1)一個 C 程序由多個函數組成 ,且必須有一個 main ( )函數,要求 main( )函數必須放到最前面 。( x)( 2)所有的變量在使用前都必須予以聲明 。( v)( 3) C 的 double類型數據可以精確表示任何實數 。(x)( 4) a 是一維數組名 ,數組元素 a1 還可以寫作 “*(a+) ”。(x)( 5) break 語句只能用于 switch 語句和循環(huán)控制語句中 。( v)( 6) C 語言中的數組下標從0 開始,當引數組元素超過所定義的范圍 ,將出來編譯錯誤 。( x)( 7)一個 for 循環(huán)語

2、句 ,一定可以使用 while 語句來替換 。(v)( 8)函數原型為 “void sort(float a, int n) ”,調用該函數時 ,形參數組 a 被創(chuàng)建,實參數組各元素的值被復制到 a 數組各元素中 。(x)(9) 一個結構類型的變量 ,在內存中占的字節(jié)數 ,為各成員數據類型所占內存的總和 。(v)例如:struct exampleint I;float f;char s20; x ;(10) 、語句 y=*(p+);和 y=(*p)+;是等價的 。(x)二、填空(15 分,每小題 1 分)(1) C 語言的基本數據類型分為型、型、型和枚舉型。(2) 、A 不等于 B 在 C 語

3、言中應使用表達式來表示。bb 24ac(3) 寫出數學表達式2a對應的 C 表達式_。(4) 寫出判斷字符變量ch 是(0 9)數字符的 C 表達式。(5)若 s= d,執(zhí)行語句s=(s= a&s=z)?s-32:s; 后,字符變量s 的值為_d _。(6 ) int b=5;執(zhí)行賦值表達式 a=5+(b+=6)后,a、b 的值依次是 _16_11_。(7) 在 C 語言程序中 ,如果對函數 f 的類型未加顯說明 ,則函數 f 的隱含類型是_int_ _。. 下載可編輯 .( 8)定義語為 char a10 =john0ni;,語句 printf(%d,strlen(a);輸出結果是_4。(9

4、)所有的程序都可以用三種控制結構編寫。這三種控制結構是、和。(10 ) 要使 a=10,b=20,c1= A ,c2= a-3.75,z=67,x=1.5,y=.8 ,用下面的語句輸入:scanf(“ %5d%5d%c%c%f%f%*f , %f ” ,&a,&b,&c1,&c2,&x,&y,&z);鍵盤上輸入數據的正確形式為 :( 11)函數調用時 ,若形、實參數均為數組 ,則其傳遞方式是。( 12)表達式 (5=5=5) 的值為0。( 13)設 intx=1,2,3,4,y,*p=&x1;則執(zhí)行語句 y=(*- -p)+; 后變量 y 的值為 _1。( 14 ) 和a“ a是”有區(qū)別的 ,

5、 在a內存中占 _1_個字節(jié) ,“ 在a”內存中占 _2_ 個字節(jié)。三、選擇題(每題 2 分,共 20 分)( 1) 算法具有五個特性 ,以下選項中不屬于算法特性的是( b)(A) 有窮性(B) 簡潔性 (C)可行性(D) 確定性(2) 以下選項中可作為 C 語言合法常量的是 (b)(A)-80.(B)-080(C)-8e1.0(D)-80.0e(3)以下不能定義為用戶標識符是(d)(A)Main(B)_0(C)_int(D)sizeof( 4)在下列各程序段中 ,沒有構成死循環(huán)的是 (a)(A )int i=100;( B) int y=1;while (1)for(; y=1000) ;w

6、hile(s);- -s;. 下載可編輯 .( 5)設變量定義為 “int a4=1,3,7,9, *p=a+2;”,則 *p 的值是(a)。(A )7(B) 3(C)4(D ) &a0+2(6 )下面程序段求兩個數中的大數,( d)不正確。(A )max =xy?x:y;(B) if (xy)max = x; else max=y;(C)max=x;( D )if (y=x ) max=y;if (y=x)max =y;max = x;(7) 給出以下定義 :char x =abcdefg;char y =a,b,c,d,e,f,g;則正確的敘述為b(A) 數組 X 和數組 Y 等價(B)

7、數組 X 的長度大于數組 Y 的長度(C)數組 x 和數組 Y 的長度相同(D) 數組 X 的長度小于數組Y 的長度(8) )對于以下的變量定義 ,表達式 _ _是正確的 。 struct node char s10; int k; p4;( A ) p-k=2( B ) p0.s=“ abc ” ( C ) p0-k=2( D )p- s= a (9) 說明語句 int (*p) ( );的含義是c。A) p 是一個指向一維數組的指針變量B) p 是指針變量 ,它指向一個整型數據的指針C) p 是一個指向函數的指針變量 ,該函數的返回值為整型數D) p 是一個指指針函數 ,該函數的返回值為指

8、針值. 下載可編輯 .( 10 )下列函數 fun 的功能是 fun(char *s)char *t=s;while(*t+) ;return (t-s-1);。stA) 求兩個串的長度差B) 比較兩個串的大小C) 將串 s 復制到串 t 中D) 求 s 所指向的字符串長度四 、程序填空題 (10 空,每空 2 分,共 20 分)1 下程序是使用遞減法求兩自然數m 、 n 的最大公約數 。void main() int m,n, div;scanf( “%d,%d ”,&m,&n);div=m;if (nm)( 1) _;while ( m%div !=0 | n%div !=0 )( 2 )

9、_;printf (“最大公約數 =%dn”,div);(1)(A)div=0;( B ) div=n;( C) div=m;m=n;n=div;( D )m=n;(2)(A)div+;( B) +div;(C) div-;( D )div=m-n;. 下載可編輯 .2. 下面的程序是打印所有的水仙花數 。水仙花數是指一個 3 位數,其各位數字立方和等于該數本身 。如 :153=1 3+5 3 +3 3main() int i,temp,bai,shi,ge;printf(n all the shuixianhuashu are:n);for(i=100;i=temp(D )i=temp3 輸

10、入 1 個正整數n, 計算并輸出s 的前 n 項的和 。S = 1 -1/2 + 1/3 - 1/4 + 1/5 -1/6 +1/n. 下載可編輯 .void main( ) int k, flag=1, n; float s;-(6)-;scanf(%d, &n);for (k=1 ; k=n; k+) s=-(7)-;-(8)-;printf(sum=%fn, s);( 6) ( A) n=0( B) s=0(C)k=1(D )printf( “Enter a numbern”)( 7) ( A) s+flag/n( B) s+1/k(C) s+1.0*flag/k( D)flag/k(

11、8 )( A ) n+( B)flag=-flag( C) flag+( D )k+;4. 函數 sort 使用選擇法將一維整型數組中個元素按值從大到小排序。void sort(int a,int n) int i,j,k ,temp; for(i=0;in-1;i+) k=i;. 下載可編輯 .for(j=i+1;jaj( B) ajaj+1(C) akaj(D )akaj( 10 )( A ) ak=ai; ai=temp(B) ai=ak; ak=temp(C) flag+( D)k+;五、程序閱讀題 (5 小題,每題 4 分,共 20 分)(認真閱讀程序 ,寫出程序運行結果,注意輸出數

12、據的格式)( 1 )在執(zhí)行以下程序時 ,如果從鍵盤上輸入 : ABC123def ,則輸出為 :void main( ) char ch;while(ch=getchar( )!=n ) if(ch= A & ch= a & ch=0;i-) s=s+ai*j; j=j*10;printf(“ s=%dn ” ,s);3 、以下程序運行后的輸出結果是f(int a)main() autob=0;static c=3;int a=2,i;b=b+1;for( i=0; i3; i+)c=c+1;printf(“ %d ” , f(a);return(a+b+c);4 、以下程序運行后的輸出結果是

13、#include stdio.h fun(char *w). 下載可編輯 .char t,*s1,*s2;for (s1=w,s2=w+strlen(s1)-1;s1s2;s1+,s2-)t=*s1;*s1=*s2;*s2=t;main()char *p=12345;fun(p);puts(p);5 、以下程序的執(zhí)行結果是。#include main( )char ch25=6934,8254,*p2;int i,j,s=0;f or(i=0;i2;i+)pi=chi;f or (i=0;i0&pij=9;j+=2). 下載可編輯 .s=10*s+pij-0;p rintf(%dn,s);六、

14、程序設計題 (2 小題,共 15 分)1求出 10 至 1000 之內能同時被 2、3、7 整除的數 ,并輸出 。( 7 分)2 、編一程序 ,輸入 15 個整數存入一維數組 ,再按逆序重新存放后輸出(用函數完成逆置 ,形參用指針變量完成 )。( 8 分). 下載可編輯 .答卷一、判斷題(每題 1 分,共 10 分)12345678910錯對錯錯對錯對錯對錯二、填空題(每空 1 分,共 15 分)( 1 )整型、實型、字符型( 2)0( 3 )(b-sqrt(b*b-4*a*c)/(2*a)(4)結束本次循環(huán)( 5 )D( 6 )16,11( 7 )整型 (int)(8 )4( 9 )順序結構

15、 、選擇結構 、循環(huán)結構(10 ) 10 0Aa 1.5 -3.75 ,67.8(11 )地址傳遞(12 )0(13)1(14)1(15)12三、單選題(每題 2 分,共 20 分)12345678910BADAADBACD四、程序填空題 (每空 2 分,共 20 分)( 1( 2( 3( 4( 5( 6( 7( 8( 9( 10. 下載可編輯 .)BCACABCBDA五 、程序閱讀題 (每題 4分,共 20分)12345Abc123DEFS=1234789543216385六、程序設計題 ( 2 題,共 15 分 )參考答案1 、main( )inti;for (i=10;i=1000;i+)if (i%3=0&i%7=0& i%2=0)printf( “%3d ”,i);2 、void inv(int *x,int n)int *p,m,t,*i,*j;m=(n-1)/2;i=x;j=x+n-1;p=x+m;for

溫馨提示

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

評論

0/150

提交評論