C語言程序設計試題_第1頁
C語言程序設計試題_第2頁
C語言程序設計試題_第3頁
已閱讀5頁,還剩2頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、以下正確的C語言自定義標識符是A.1aB.2a2.3.C.doD.a.12在C語言中,錯誤的常數表示是A.0LC.'6'設inta,x=2;A.1C.6B.-0x6aLD.1.234E3.5執行語句a=x>0?3*x:x=10;后,變量x的值是B.2D.10C語言程序設計試題一、單項選擇題(本題共25小題,每小題2分,共50分)在每小題列出的四個備選項中只有一個是符合題目要求的,請將其正確答案涂寫在答題卡上。錯選、多選或未選均無分。1.4. 設有以下程序段:intx=2,y=2,z=0,a;a=+x|+y&&z+;printf("%d,%d,%d

2、n”,x,y,z);執行后輸出的結果是。A. 2,2,0B.3,3,1C.3,2,0D.3,2,15. 在C語言中,字符串"TOPt65"”的長度是A. 5B.7C.8D.1212.45,能正確讀入數據的輸入語句是B.scanf("%5d",&x);D.scanf("%s",&x);的值是B.176. 設floatx,由鍵盤輸入:A.scanf("%5f",&x)C.scanf("%f",x);7. 逗號表達式a=2*6,a*3,a+5A.12D.41C.368. C語言

3、程序中,整型常量的書寫形式不包括A.二進制B.八進制C.十進制D.十六進制9. 在C語言中,下列運算符中結合性屬于自右向左的是A.&&B.-C.<<D.->10. 設intx;,則與計算IxI等價的表達式是A.x>0?-x:xB.x>0?x:-xC.x<0?x:-xD.x<0?-x:-x11. 執行下面的程序段后,k的值是.intk=1,n=325;dok*=n%10;n/=10;while(n);A.3B.30C.523D.32512. 表達式的值為0的是A.5/5%513. C.!4設inta=11,b=2doa/=b+;while

4、(a>b);A.1,314. C.2,3B.5>2D.0x7&&7;執行下述程序段后,變量a和b的值分別是B.1,4D.2,4在C語言中,下列錯誤的說法是A.B.C.D.15. 函數可以遞歸調用不允許在函數中再定義函數遞歸程序不可能用非遞歸算法實現對于continue語句,可以通過改變程序的結構而不使用它貝Ua10的值是<B.1inta23=1,2,3;,A.0C.216. 以下對二維數組A.inta3;C.doublea34;17. 設chars10="abcd”,t="12345”;A.6和5C.10和5switch(表達式)語句中的“

5、表達式”A.float,intC.int,charD.3a的正確說明是B.floata4;D.floata(3)(4);,則s和t在內存中分配的字節數分別是B.6和6D.10和6,允許的類型是B.float,int,charD.char,double19. 在C語言中,形參的隱含存儲類別是A.autoB.staticC.extern20. 下列屬于文件包含的命令是A.#defineN25C.#include"stdio.h"設inti,j;for(i=5;i;i-)for(j=0;j<4;j+)則循環體執行次數是A.5C.2022.若有以下定義和語句:charstrl

6、="string",str25;則用以復制字符串的正確方法是A. strcpy(str2,"Hello");B. strcpy(strl,"Hello");C. str2=str1;str1="Hello”;D.registerB.#endifD.#elseB.4D.無限次23. 正確的變量定義是。A. unsignedlongd=1000;B. floatm1=m2=10.0;C. charc1='A',c2=A;D. doublex=0.618,x=3.14;24. 下面程序的輸出結果是。#include

7、<stdio.h>voidmain()ints,k;for(s=1,k=2;k<5;k+)s+=k;printf("%dn”,s);A.1B.9C.10D.1525. 下列描述中不正確的是。A. 字符型數組中可以存放字符串B. 可以對字符型數組進行整體輸入、輸出C. 可以對實型數組進行整體輸入、輸出不能在賦值語句中通過賦值運算符“=”對字符型數組進行整體賦值二、填空題(本題共10小題,每小題2分,共20分)請在每小題空格中填上正確答案.錯填、不填均無分。26. 一個C語言程序的執行起點是。27. 設intx=3,y=5;則執行printf("%dn&quo

8、t;,x&&y);后輸出。128.定出公式1x-對應的C語言表達式。29. 若函數調用語句為f(a,b,f(a+b,a-b,b);,貝U函數f的參數個數是。30. 設inta=2;,則執行a+=a*=15;后,變量a的值是。31. 設doubley45;,則數組y中元素的個數是。32. 設intx=7,y=3,則表達式x%y+x/y的值是。33. 設chars="E_mail",則執行printf("%dn",strlen(s);后輸出的值是當執行下面程序段后,變量i的值是。inta,b,c,d,i,j,k;a=10;b=c=d=5;i=

9、j=k=0;for(;a>b;+b)i+;while(a>+c)j+;dok+;while(a>d+);35.設inta34=1,2,5,3,2,4,7,9,3,6,5,8;則表達式a12+a23的值是三、程序分析題(本題共5小題,每小題2分,共10分)36. 寫出下面程序的運行結果。#include<stdio.h>voidmain()(intx=15;while(x<20)(x+;if(x/3!=0)x+;break;elsecontinue;printf("%dn”,x);37. 寫出下面程序的運行結果。#include<stdio.h

10、>voidinv(intx,intn)intt,i,j;for(i=0;i<n/2;i+)j=n-1-i;t=xi;xi=xj;xj=t;voidmain()inti,a5=3,7,9,11,0;inv(a,5);for(i=0;i<5;i+)printf("%d",ai);printf("n");38. 寫出下面程序的運行結果。(程序運行時,輸入一個整數5)#include<stdio.h>voidmain()inta,b10,c,i=0;printf("輸入一個整數n");scanf("%d

11、",&a);while(a!=0)c=a%2;a=a/2;bi=c;i+;for(;i>0;i-)printf("%d",bi-1);39. 寫出下面程序的運行結果。#include<stdio.h>voidmain()(inta,b,i;a=b=0;for(i=0;i<=10;i+=2)(a+=i;b+=i+1;printf("a=%dn”,a);printf("b=%dn”,b-11);40. 寫出下面程序的運行結果。#include<stdio.h>inta=100;s()(staticinta

12、=20;a+;printf("%dn",a);voidmain()(inti;for(i=1;i<=3;i+)(a+;printf("%d",a);s();四、程序填充題(本題共2小題,每個空格2分,共10分)給出下列程序,將橫線處缺少的部分補上,使其能正確運行。41. 對含有10個元素的數組a先按元素的存儲次序倒序輸入,再按其正序輸出。#include<stdio.h>#define/*空格1*/voidmain()(inti,aN;for(i=N-1;i-)/*空格2*/scanf("%d",);/*空格3*/f

13、or(i=0;i<N;i+)printf("%dt”,ai);42. printf("n");學生成績的字每等級和分數范圍如下:字母等級分數范圈A90100B8089C7079D6069E059其它字母輸入錯誤輸入字母等級之后,輸出相應的分數范圍。#include<stdio.h>voidmain();/:printf("輸入錯誤n");/*空格5*/五、程序修改題(本題共2小題,共10分)請在注釋“ERROR處修改程序中的錯誤,使它能得出正確的結果。注意:不要改動main函數,不得增行或刪行,也不得更改程序結構!43. 用指

14、針變量輸出數值。#include<stdio.h>voidmain()inta=1,2,3,4,5,6,7,8,9,10,*p;p=a;/*ERROR1*/printf("%fn",*p+9);/*ERROR2*/44. 利用函數求兩個整數的最大公約數。#include<stdio.h>voidmain()intgcd(inta,intb);inta,b,abd;printf("intputdataab:n");空格4*/scanf("%c”,&score);switch(score)case'A'

15、;:printf("A:90100n");break;case'B':printf("B:8089n");break;case'C':printf("C:7079n");break;case'D':printf("D:6069n");break;case'E':printf("E:059n");break;scanf("%d,%d”,a,b);/*ERROR3*/abd=gcd(a,b);printf("abd=%dn",abd);intgcd(intx,inty);/*ERROR4*/intt;if(x<y)t=x;x=y;y=t;while(y!=0)t=x%y;x=y;x=t;/*ERROR5*/returnx;參考答案:32. 一、單項選擇題1.A2.D3.B10.B11.B12.C19.A20.C21.C二、填空題主函數11.0/2*(x+sqrt(x+y)/(5*x)36031.2036515三、程序分析題1701197101a=303

溫馨提示

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

評論

0/150

提交評論