《C語言程序設(shè)計》試題1(含答案)_第1頁
《C語言程序設(shè)計》試題1(含答案)_第2頁
《C語言程序設(shè)計》試題1(含答案)_第3頁
《C語言程序設(shè)計》試題1(含答案)_第4頁
《C語言程序設(shè)計》試題1(含答案)_第5頁
已閱讀5頁,還剩138頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、We will continue to improve the company's internal control system, and steady improvement in ability to manage and control, optimize business processes, to ensure smooth processes, responsibilities in place; to further strengthen internal controls, play a control post independent oversight role

2、of evaluation complying with third-party responsibility; to actively make use of internal audit tools detect potential management, streamline, standardize related transactions, strengthening operations in accordance with law. Deepening the information management to ensure full communication "ze

3、ro resistance". To constantly perfect ERP, and BFS+, and PI, and MIS, and SCM, information system based construction, full integration information system, achieved information resources shared; to expand Portal system application of breadth and depth, play information system on enterprise of As

4、sistant role; to perfect daily run maintenance operation of records, promote problem reasons analysis and system handover; to strengthening BFS+, and ERP, and SCM, technology application of training, improve employees application information system of capacity and level. Humanistic care to ensure &q

5、uot;zero." To strengthening Humanities care, continues to foster company wind clear, and gas are, and heart Shun of culture atmosphere; strengthening love helped trapped, care difficult employees; carried out style activities, rich employees life; strengthening health and labour protection, org

6、anization career health medical, control career against; continues to implementation psychological warning prevention system, training employees health of character, and stable of mood and enterprising of attitude, created friendly fraternity of Humanities environment. To strengthen risk management,

7、 ensure that the business of "zero risk". To strengthened business plans management, will business business plans cover to all level, ensure the business can control in control; to close concern financial, and coal electric linkage, and energy-saving scheduling, national policy trends, str

8、engthening track, active should; to implementation State-owned assets method, further specification business financial management; to perfect risk tube control system, achieved risk recognition, and measure, and assessment, and report, and control feedback of closed ring management, improve risk pre

9、vention capacity. To further standardize trading, and strive to achieve "according to law, standardize and fair." Innovation of performance management, to ensure that potential employees "zero fly". To strengthen performance management, process control, enhance employee evaluatio

10、n and levels of effective communication to improve performance management. To further quantify and refine employee standards . Work, full play party, and branch, and members in "five type Enterprise" construction in the of core role, and fighting fortress role and pioneer model role; to co

11、ntinues to strengthening "four good" leadership construction, full play levels cadres in enterprise development in theC語言程序設(shè)計精品課件試題目錄(按住CTRL鍵點擊超鏈)單項選擇題第002頁閱讀程序題第018頁程序填空題第039頁編寫程序題第070頁C語言程序設(shè)計精品課件制作小組2006年4月一、單項選擇題導讀:單項選擇題要求從給出的四個備選答案中,選出一個最符合題意的答案。本類習題主要檢查對C語言基本概念的掌握情況,讀者可根據(jù)學習進度選做部分習題。在完

12、成習題的過程中,不但要選出正確的答案,而且要清楚不正確的選項錯在何處,以加深對概念的理解。對于掌握不準的問題,應該通過上機實驗來檢驗?!?.1】以下不正確的C語言標識符是_。A) int B) a_1_2 C) ab1exe D) _x【1.2】以下是正確的C語言標識符是_。A) #define B) _123 C) %d D) n【1.3】下列四組字符串中都可以用作語言程序標識符的一組是 。 A) print B) iam C) Pxq D) str_l _3d one_half My->book Cpp oodbs tart$it line# pow aBc 3pai His.age

13、 while【1.4】下面各選項組中,均是C語言關(guān)鍵字的組是 。A) auto,enum,include B) switch,typedef,continueC) signed,union,scanf D) if,struct,type【1.5】下列不屬于C語言關(guān)鍵字的是 。 A) default B) register C) enum D) external【1.6】C語言程序從main()函數(shù)開始執(zhí)行,所以這個函數(shù)要寫在_。A) 程序文件的開始 B) 程序文件的最后C) 它所調(diào)用的函數(shù)的前面 D) 程序文件的任何位置【1.7】下列關(guān)于C語言的敘述錯誤的是_A) 大寫字母和小寫字母的意義相同

14、B) 不同類型的變量可以在一個表達式中C) 在賦值表達式中等號(=)左邊的變量和右邊的值可以是不同類型 D) 同一個運算符號在不同的場合可以有不同的含義【1.8】在C語言中,錯誤的int類型的常數(shù)是 。A) 32768 B) 0 C) 037 D) 0xAF【1.9】執(zhí)行語句 printf("%x",-1);屏幕顯示_。A) -1 B) 1 C) -ffff D) ffff【1.10】已知 long i=32768;執(zhí)行語句printf("%d",i);屏幕顯示_。A) -1 B) -32768 C) 1 D) 32768【1.11】已知 long i=

15、65539;執(zhí)行語句printf("%d",i);屏幕顯示_。A) 65539 B) -3 C) 3 D) 程序不能執(zhí)行【1.12】在語言中,整數(shù)-8在內(nèi)存中的存儲形式是 。A) 1111 1111 1111 1000 B) 1000 0000 0000 1000C) 0000 0000 0000 1000 D) 1111 1111 1111 0111【1.13】語言中字符型(char)數(shù)據(jù)在內(nèi)存中的存儲形式是_。 A) 原碼 B) 補碼 C) 反碼 D) ASCII碼【1.14】將字符g賦給字符變量c,正確的表達式是 。A) c=147 B) c="147&qu

16、ot; C) c='147' D) c='0147'【1.15】下列轉(zhuǎn)義字符中錯誤的一個是_。A) '000' B) '0014' C) 'x111' D) '2'【1.16】將空格符賦給字符變量c,正確的賦值語句是_。A) c='0' B) c=NULL C) c=0 D) c=32【1.17】已知:char a='70';則變量a中 。A) 包含1個字符 B) 包含2個字符 C) 包含3個字符 D) 說明非法【1.18】字符串""EOFn=-6

17、1""的長度是_。A) 8 B) 9 C) 14 D) 非法字符串【1.19】字符串""的長度是_。A) 0 B) 1 C) 2 D) 非法字符串【1.20】已知:char a;int b;float c;double d;執(zhí)行語句"c=a+b+c+d;"后,變量c的數(shù)據(jù)類型是 。A) int B) char C) float D) double【1.21】溫度華氏和攝氏的關(guān)系是: C=-(F-32)。已知:float C,F;由華氏求攝氏的正確的賦值表達式是_。A) C=5/9(F-32) B) C=5*(F-32)/9 C) C=

18、5/9*(F-32) D) 三個表達式都正確【1.22】逗號表達式"(a=3*5,a*4),a+15"的值是_。A) 15 B) 60 C) 30 D) 不確定【1.23】如果int a=1,b=2,c=3,d=4;則條件表達式"a<b?a:c<d?c:d"的值是_。A) 1 B) 2 C) 3 D) 4【1.24】為求出s=10!的值,則變量s的類型應當為 。A) int B) unsiged C) long D) 以上三種類型均可【1.25】已知int i=10;表達式"20-0<=i<=9"的值是_。A)

19、 0 B) 1 C) 19 D) 20【1.26】已知int x=1,y;執(zhí)行下述語句后變量x的值是_。y=+x>5&&+x<10;A) 1 B) 2 C) 3 D) 4【1.27】為判斷字符變量c的值不是數(shù)字也不是字母時,應采用下述表達式_。A) c<=48|c>=57&&c<=65|c>=90&&c<=97|c>=122B) !(c<=48|c>=57&&c<=65|c>=90&&c<=97|c>=122)C) c>=48

20、&&c<=57|c>=65&&c<=90|c>=97&&c<=122D) !(c>=48&&c<=57|c>=65&&c<=90|c>=97&&c<=122)【1.28】已知 int a32=3,2,1;則表達式"a00/a01/a02"的值是_。A) 0. B) 1 C) 0 D) 錯誤的表達式【1.29】已知 int x=1,y=1,z=1;表達式"x+y+z+"的值是_。A) 3 B) 4

21、 C) 5 D) 表達式錯誤【1.30】用十進制表示表達式"12|012"的值是_。A) 1 B) 0 C) 12 D) 14【1.31】已知以下程序段:int a=3,b=4;a=ab;0011 0100 0111b=ba;0100 0011 0111 0100a=ab;則執(zhí)行以上語句后a和b的值分別是_。A) a=3,b=4 B) a=4,b=3 C) a=4,b=4 D) a=3,b=3【1.32】在位運算中,操作數(shù)每右移一位,其結(jié)果相當于_。A) 操作數(shù)乘以2 B) 操作數(shù)除以2 C) 操作數(shù)除以16 D) 操作數(shù)乘以16【1.33】已知 char a=222;執(zhí)行

22、語句a=a&052;后,變量a的值是_。A) 222 B) 10 C) 244 D) 254【1.34】已知二進制數(shù)a是,如果想通過整型變量b與a做異或運算,使變量a的高4位取反,低4位不變,則二進制數(shù)b的值應是_。A) B) C) D) 【1.35】已知 int a=15,執(zhí)行語句a=a<<2以后,變量a的值是_。A) 20 B) 40 C) 60 D) 80【1.36】已知int x=5,y=5,z=5;執(zhí)行語句x%=y+z;后,x的值是_。A) 0 B) 1 C) 5 D) 6【1.37】使用語句scanf("x=%f,y=%f",&x,&

23、amp;y);輸入變量x、y的值(代表空格),正確的輸入是_。A) 1.25,2.4 B) 1.252.4 C) x=1.25,y=2.4 D) x=1.25y=2.4【1.38】下列循環(huán)語句中有語法錯誤的是_。A) while(x=y) 5; B) while(0) ;C) do 2;while(x=b); D) do x+ while(x=10);【1.39】已知int x=(1,2,3,4);變量x的值是_。A) 1 B) 2 C) 3 D) 4【1.40】表達式sizeof(double)是 。A) 函數(shù)調(diào)用 B) double型表達式 C) int型表達式 D) 非法表達式【1.41

24、】執(zhí)行語句printf("2:%d,",printf("1:%d,",scanf("%d",&x);以后的輸出結(jié)果是_。A) 2:1,1:1, B) 1:1,2:1, C) 2:4,1:1 D) 1:1,2:4,【1.42】已知:int x,y;double z;則以下語句中錯誤的函數(shù)調(diào)用是 。A) scanf ("%d,%lx,%le",&x,&y,&z); B) scanf ("%2d*%d%lf",&x,&y,&z);C) scanf

25、 ("%x%*d%o",&x,&y); D) scanf ("%x%o%6.2f",&x,&y,&z);【1.43】與條件表達式"(n)?(c+):(c-)"中的表達式(n)等價的表達式是_。A) (n=0) B) (n=1) C) (n!=0) D) (n!=1)【1.44】已知int i=1,j=0;執(zhí)行下面語句后j的值是_。while(i)switch(i) case 1: i+=1;j+;break;case 2: i+=2;j+;break;case j3: i+=3;+;break;

26、default: i-;j+;break;A) 1 B) 2 C) 3 D) 死循環(huán)【1.45】求取滿足式 12+22+32+ +n2 1000的n,正確的語句是_。A) for(i=1,s=0;(s=s+i*i)<=1000;n=i+) ; B) for(i=1,s=0;(s=s+i*i)<=1000;n=+i) ;C) for(i=1,s=0;(s=s+i*+i)<=1000;n=i) ; D) for(i=1,s=0;(s=s+i*i+)<=1000;n=i) ;【1.46】下面的for語句 。for(x=0,y=10;(y>0)&&(x&l

27、t;4);x+,y- ) ;A) 是無限循環(huán) B) 循環(huán)次數(shù)不定 C) 循環(huán)執(zhí)行4次 D) 循環(huán)執(zhí)行3次【1.47】已知int i=1; 執(zhí)行語句while (i+<4) ;后,變量i的值為_。A) 3 B) 4 C) 5 D) 6【1.48】已知int x=12,y=3;執(zhí)行下述程序后,變量x的值是_。do x/=y-;while(x>y);A) 1 B) 2 C) 3 D) 程序運行有錯誤【1.49】已知 char a20="Beijing","shanghai","tianjin","chongqing&q

28、uot;;語句printf("%c",a30);的輸出是_。A) <空格> B) n C) 不定 D) 數(shù)組定義有誤【1.50】若用數(shù)組名作為函數(shù)調(diào)用時的實參,則實際上傳遞給形參的是 。A) 數(shù)組首地址 B) 數(shù)組的第一個元素值C) 數(shù)組中全部元素的值 D) 數(shù)組元素的個數(shù)【1.51】對二維數(shù)組的正確說明是_。A) int a=1,2,3,4,5,6; B) int a2=1,2,3,4,5,6;C) int a3=1,2,3,4,5,6; D) int a2,3=1,2,3,4,5,6;【1.52】對字符數(shù)組s賦值,不合法的一個是_。A) char s=&qu

29、ot;Beijing"; B) char s20="beijing";C) char s20;s="Beijing"; D) char s20='B','e','i','j','i','n','g';【1.53】對字符數(shù)組str賦初值,str不能作為字符串使用的一個是_。A) char str="shanghai";B) char str="shanghai"; C) char str9=

30、9;s','h','a','n','g','h','a','i';D) char str8= 's','h','a','n','g','h','a','i';【1.54】對函數(shù)形參的說明有錯誤的是_。A) int a(float x,int n) B) int a(float *x,int n)C) int a(float x10,int n) D)

31、 int a(float x,int n)【1.55】如果一個變量在整個程序運行期間都存在,但是僅在說明它的函數(shù)內(nèi)是可見的,這個變量的存儲類型應該被說明為_。A) 靜態(tài)變量 B) 動態(tài)變量 C) 外部變量 D) 內(nèi)部變量【1.56】在一個C源程序文件中,若要定義一個只允許在該源文件中所有函數(shù)使用的變量,則該變量需要使用的存儲類別是 。A) extern B) register C) auto D) static【1.57】在C語言中,函數(shù)的數(shù)據(jù)類型是指_。A) 函數(shù)返回值的數(shù)據(jù)類型 B) 函數(shù)形參的數(shù)據(jù)類型C) 調(diào)用該函數(shù)時的實參的數(shù)據(jù)類型 D) 任意指定的數(shù)據(jù)類型【1.58】已知如下定義的函

32、數(shù):fun1(a) printf("n%d",a);則該函數(shù)的數(shù)據(jù)類型是_。A) 與參數(shù)a的類型相同 B) void型C) 沒有返回值 D) 無法確定【1.59】定義一個函數(shù)實現(xiàn)交換x和y的值,并將結(jié)果正確返回。能夠?qū)崿F(xiàn)此功能的是_。A) swapa(int x,int y) B) swapb(int *x,int *y) int temp; int temp;temp=x;x=y;y=temp; temp=x;x=y;y=temp; C) swapc(int *x,int *y) D) swapd(int *x,int *y) int temp; int *temp;te

33、mp=*x;*x=*y;*y=temp; temp=x;x=y;y=temp; 【1.60】求一個角的正弦函數(shù)值的平方。能夠?qū)崿F(xiàn)此功能的函數(shù)是_。A) sqofsina(x) float x; return(sin(x)*sin(x);B) double sqofsinb(x)float x; return(sin(double)x)*sin(double)x);C) double sqofsinc(x) return(sin(x)*sin(x);D) sqofsind(x)float x; return(double(sin(x)*sin(x);【1.61】一個函數(shù)內(nèi)有數(shù)據(jù)類型說明語句如下:

34、double x,y,z(10);關(guān)于此語句的解釋,下面說法正確的是_。A) z是一個數(shù)組,它有10個元素。B) z是一個函數(shù),小括號內(nèi)的10是它的實參的值。C) z是一個變量,小括號內(nèi)的10是它的初值。D) 語句中有錯誤。【1.62】已知函數(shù)定義如下:float fun1(int x,int y) float z;z=(float)x/y;return(z);主調(diào)函數(shù)中有int a=1,b=0;可以正確調(diào)用此函數(shù)的語句是_。A) printf("%f",fun1(a,b); B) printf("%f",fun1(&a,&b);C) p

35、rintf("%f",fun1(*a,*b); D) 調(diào)用時發(fā)生錯誤【1.63】下面函數(shù)的功能是_。a(s1,s2)char s1,s2; while(s2+=s1+) ;A) 字符串比較 B) 字符串復制 C) 字符串連接 D) 字符串反向【1.64】在下列結(jié)論中,只有一個是錯誤的,它是 。A) 語言允許函數(shù)的遞歸調(diào)用B) 語言中的continue語句,可以通過改變程序的結(jié)構(gòu)而省略C) 有些遞歸程序是不能用非遞歸算法實現(xiàn)的 D) C語言中不允許在函數(shù)中再定義函數(shù)【1.65】已知:int a, *y=&a;則下列函數(shù)調(diào)用中錯誤的是 。A) scanf("%

36、d", &a); B) scanf("%d", y);C) printf("%d", a); D) printf("%d", y);【1.66】說明語句"int (*p)( );"的含義是 。A) p是一個指向一維數(shù)組的指針變量B) p是指針變量,指向一個整型數(shù)據(jù)C) p是一個指向函數(shù)的指針,該函數(shù)的返回值是一個整型D) 以上都不對【1.67】設(shè)有說明int (*p)4;其中的標識符p是 。A) 4個指向整型變量的指針變量B) 指向4個整型變量的函數(shù)指針C) 一個指向具有4個整型元素的一維數(shù)組的指

37、針D) 具有4個指向整型變量的指針元素的一維指針數(shù)組【1.68】已知:char s10, *p=s,則在下列語句中,錯誤的語句是 。A) p=s+5; B) s=p+s; C) s2=p4; D) *p=s0;【1.69】已知:char s100;int i;則引用數(shù)組元素的錯誤的形式是 。A) si+10 B) *(s+i) C) *(i+s) D) *(s+)+i)【1.70】已知:char s6, *ps=s;則正確的賦值語句是 。 A) s="12345"; B) *s="12345"; C) ps="12345"; D) *

38、ps="12345";【1.71】已知:char a310="BeiJing","ShangHai","TianJin", *pa=a;不能正確顯示字符串"ShangHai"的語句是 。A) printf("%s",a+1); B) printf("%s",*(a+1);C) printf("%s",*a+1); D) printf("%s",&a10);【1.72】已知:int a43=1,2,3,4,5,

39、6,7,8,9,10,11,12;int (*ptr)3=a,*p=a0;則以下能夠正確表示數(shù)組元素a12的表達式是 。A) *(*(a+1)+2) B) *(*(p+5) C) (*ptr+1)+2 D) *(ptr+1)2)【1.73】已知:int a =1,2,3,4,5,6,7,8,9,10,11,12,*p=a;則值為3的表達式是 。A) p+=2,*(p+) B) p+=2,*+p C) p+=2,*p+ D) p+=2,+*p【1.74】已知:int a=1,2,3,4, y, *p=a;則執(zhí)行語句y = (*+p)-;之后, 數(shù)組a各元素的值變?yōu)開。A) 0,1,3,4 B)

40、1,1,3,4 C) 1,2,2,4 D) 1,2,3,3變量y的值是_。A) 1 B) 2 C) 3 D) 4 【1.75】已知:int a =1,3,5,7, y *p= a;為使變量y的值為3,下列語句正確的是_。A) y=+*p+; B) y=+(*p+); C) y=(+*p)+; D) y=(*+p)+;【1.76】已知:int x = 1,3,5,7,9,11 ,*ptr=x;則能夠正確引用數(shù)組元素的語句是 。A) x B) *(ptr-) C) x6 D) *(-ptr)【1.77】函數(shù)的功能是交換變量x和y中的值,且通過正確調(diào)用返回交換的結(jié)果。能正確執(zhí)行此功能的函數(shù)是 。A)

41、 funa (int *x, int *y) B) funb (int x, int y) int *p; int t;p=x;*x=*y;*y=*p; t=x;x=y;y=t; C) func (int *x, int *y) D) func (int *x, int *y) *x=*y;*y=*x; *x=*x+*y;*y=*x-*y;*x=*x-*y; 【1.78】有定義如下:struct sk int a;float b;data ,*p;如果 p=&data;則對于結(jié)構(gòu)變量data的成員a的正確引用是_。A)(*).data.a B) (*p).a C) p->data

42、.a D) p.data.a【1.79】已知:struct st int n;struct st *next;static struct st a3=1,&a1,3,&a2,5,&a0,*p;如果下述語句的顯示是2,則對p的賦值是_。printf("%d",+(p->next->n);A) p=&a0; B) p=&a1; C) p=&a2; D) p=&a3;【1.80】已知:struct person char name10;int age;class10="LiMing",29,&

43、quot;ZhangHong",21,"WangFang",22;下述表達式中,值為72的一個是_。A) class0->age + class1->age+ class2->ageB) 5 C) 5D) clase->name5【1.81】已知:struct int i;char c;float a;test;則sizeof(test)的值是 。A) 4 B) 5 C) 6 D) 7【1.82】已知:union int i;char c;float a;test;則sizeof(test)的值

44、是 。A) 4 B) 5 C) 6 D) 7【1.83】已知:union u_type int i;char ch;float a;temp;現(xiàn)在執(zhí)行"temp.i=266;printf("%d",temp.ch)"的結(jié)果是 。A) 266 B) 256 C) 10 D) 1【1.84】若有以下程序段:struct dent int n;int *m;int a=1,b=2,c=3;struct dent s3 = 101,&a,102,&b,103,&c ;struct dent *p=s;則以下表達式中值為2的是 。A) (p

45、+)->m B) *(p+)->m C) (*p).m D) *(+p)->m【1.85】若有以下說明語句,則對結(jié)構(gòu)變量pup中sex域的正確引用是 。struct pupil char name20;int sex;pup,*p;p=&pup;A) p.pup.sex B) p->pup.sex C) (*p).pup.sex D) (*p).sex【1.86】以下對結(jié)構(gòu)變量stul中成員age的非法引用是 。struct student int age;int num;stu1,*p;p=&stu1;A) stu1.age B) student.ag

46、e C) p->age D) (*p).age【1.87】若有以下定義和語句:union data int i;char c;float f;a;int n;則以下語句正確的是 。A) a=5; B) a=2,'a',1.2; C) printf("%dn",a); D) n=a;【1.88】已知:struct sk int a;int age;date,*p;如果要使指針p指向data中的成員a,正確的賦值語句是_。A) p = (struct sk *)&data.a; B) p = (struct sk *)data.a;C) p = &

47、amp;data.a; D) *p = data.a;【1.89】已知 enum week sun,mon,tue,wed,thu,fri,satday;則正確的賦值語句是_。A) sun=0; C) san=day; D) sun=mon; D) day=sun;【1.90】已知 enum color red,yellow=2,blue,white,blackren;執(zhí)行下述語句的輸出結(jié)果是_。printf("%d",ren=white);A) 0 B) 1 C) 3 D) 4【1.91】已知 enum namezhao=1,qian,sun,liman;執(zhí)行下述程序段后

48、的輸出是_。man=0;switch(man) case 0: printf("Peoplen");case 1: printf("Mann");case 2: printf("Womann");default: printf("Errorn");A) People B) Man C) Woman D)Error【1.92】下述關(guān)于枚舉類型名的定義中,正確的是_。A) enem a= one,two,three ; B) enem a one=9,two=-1,three ;C) enem a="one&

49、quot;,"two","three"; D) enem a "one","two","three";【1.93】語言中標準輸入文件stdin是指 。 A) 鍵盤 B) 顯示器 C) 鼠標 D) 硬盤【1.94】要打開一個已存在的非空文件"file"用于修改,選擇正確的語句。A) fp=fopen("file", "r"); B) fp=fopen("file", "a+");C) fp=fope

50、n("file", "w"); D) fp=fopen('file", "r+");【1.95】當順利執(zhí)行了文件關(guān)閉操作時,fclose函數(shù)的返回值是 。A) -1 B) TRUE C) 0 D) 1 【1.96】fscanf函數(shù)的正確調(diào)用形式是 。A) fscanf (文件指針, 格式字符串, 輸出列表);B) fscanf (格式字符串, 輸出列表, 文件指針);C) fscanf (格式字符串, 文件指針, 輸出列表);D) fscanf (文件指針, 格式字符串, 輸入列表);【1.97】使用fgetc函數(shù),

51、則打開文件的方式必須是 。A) 只寫 B) 追加 C) 讀或讀/寫 D) 參考答案B和C都正確【1.98】已知宏定義#define N 3#define Y(n) (N+1)*n)執(zhí)行語句z=2*(N+Y(5+1);后,變量z的值是_。A) 42 B) 48 C) 52 D) 出錯【1.99】已知宏定義 #define SQ(x) x*x,執(zhí)行語句printf("%d",10/SQ(3);后的輸出結(jié)果是_。A) 1 B) 3 C) 9 D) 10【1.100】已知宏定義如下:#define PR printf#define NL "n"#define D

52、 "%d"#define D1 DNL若程序中的語句是 PR(D1,a);經(jīng)預處理后展開為_。A) printf(%dn,a); B) printf("%dn",a);C) printf("%d""n",a); D) 原語句錯誤【單項選擇題參考答案】【1.1】答案: A注釋:int是C語言的關(guān)鍵字【1.2】答案: B【1.3】答案:A【1.4】答案:B注釋:include是預處理命令;scanf是函數(shù)名;type不是C語言的關(guān)鍵字。【1.5】答案:D【1.6】答案:D【1.7】答案:A【1.8】答案:A注釋:int

53、型表示整數(shù)的范圍是-3276832767?!?.9】答案:D注釋:整型常量-1在計算機中表示為補碼1111 1111 1111 1111,用十六進制顯示這個數(shù)時,最左邊的1不會被解釋為符號位,而是與右邊其它位共同轉(zhuǎn)換為十六進制數(shù)。【1.10】答案:B注釋:長整型數(shù)32768在計算機內(nèi)的表示是1000 0000 0000 0000,以一般整型進行輸出時,此數(shù)恰是-32768的補碼?!?.11】答案:C注釋:長整型數(shù)65539在計算機內(nèi)的表示是0001 0000 0000 0000 0011,以一般整型進行輸出時,僅將右側(cè)16位二進制數(shù)轉(zhuǎn)換為十進制數(shù)?!?.12】答案:A注釋:C語言中,int型的

54、負數(shù)是采用補碼表示的?!?.13】答案:D【1.14】答案:C注釋:變量c是字符型,可用字符常量為它賦值。字符常量必須用單引號括起來,所以B是錯誤的;在單引號或雙引號內(nèi)的反斜線''用于表示轉(zhuǎn)義字符,A選項在無引號時使用反斜線是錯誤的;C選項單引號內(nèi)出現(xiàn)反斜線表示它與后面的數(shù)字組成一個轉(zhuǎn)義字符;單引號只允許括起一個字符,D選項在單引號內(nèi)出現(xiàn)4個字符,是錯誤的?!?.15】答案:C【1.16】答案:D注釋:空字符和空格符是不同的兩個字符,空格符的ASCII碼值是32,空字符的ASCII值是0?!?.17】答案:A【1.18】答案:B【1.19】答案:A【1.20】答案:C【1.21

55、】答案:B注釋:單純從C語言語法來說,選項B、C都是正確的,但是選項C中第一個運算的兩個對象都是整型常數(shù),其結(jié)果也是整型數(shù)0,最后的運算結(jié)果也就是0了?!?.22】答案:C【1.23】答案:A注釋:將條件表達式增加一個括號,此式變?yōu)閍<b?a:(c<d?c:d),它的運算順序就清楚了。由于條件運算符的結(jié)合性是從右向左,所以括號可以省略。它的運算順序是先算出右邊的條件表達式"c<d?c:d"的值,然后求條件表達式a<b?a:3的值?!?.24】答案:C【1.25】答案:B【1.26】答案:B注釋:當通過一個運算對象即可決定邏輯運算&&的

56、結(jié)果時,則對另一個運算對象不做處理?!?.27】答案:D 【1.28】答案:B注釋:數(shù)組元素在內(nèi)存中按行排列,此數(shù)組的前3個元素的值分別是3、2、1,表達式中雖然數(shù)組下標的寫法似乎每行有3個元素,和定義時的3行2列不一致,但是C語言引用數(shù)組元素時是根據(jù)數(shù)組的首地址和給出的下標進行運算決定元素的地址。題中表達式引用了數(shù)組前3個元素?!?.29】答案: A【1.30】答案:D【1.31】答案:B【1.32】答案:B【1.33】答案:B【1.34】答案:A【1.35】答案:C【1.36】答案:C【1.37】答案:C【1.38】答案:D【1.39】答案:D【1.40】答案:C1.41】答案:D注釋:s

57、canf函數(shù)返回值是輸入數(shù)據(jù)的個數(shù),printf函數(shù)的返回值是輸出的字符個數(shù)?!?.42】答案:D【1.43】答案:C注釋:在C語言中, 經(jīng)常用一個變量來作為邏輯表達式,其含義就是:當變量的值不為0時關(guān)系成立?!?.44】答案:D注釋:break語句僅可跳出switch語句,不會跳出while循環(huán),這是一個死循環(huán)?!?.45】答案:A 【1.46】答案:C【1.47】答案:C 【1.48】答案:D注釋:當除數(shù)y為0時,程序發(fā)生溢出錯誤?!?.49】答案:C【1.50】答案:A【1.51】答案:C【1.52】答案:C注釋:答案C的賦值號左側(cè)是數(shù)組s的首地址,是一個常量,賦值號右側(cè)是一個字符串常量

58、,不可能將一個字符串常量賦給一個地址常量?!?.53】答案:D注釋:D選項缺少字符串結(jié)束標志。【1.54】答案:C注釋:此處函數(shù)形參是一個指針變量,接受實參的地址,而不是一個數(shù)組?!?.55】答案:A【1.56】答案:D注釋:這里首先要明確一些基本概念。在C語言中,程序與文件是不同的概念,一個程序可以由一個文件組成,也可以由多個文件組成;一個文件中又可以包含多個函數(shù);函數(shù)是構(gòu)成C程序的基本單位。變量的作用域因變量的存儲類型不同而不同。auto和register類型的變量的作用域是說明變量的當前函數(shù);外部變量的作用域是整個程序,即外部變量的作用域可以跨越多個文件;內(nèi)部靜態(tài)變量(定義在一個函數(shù)內(nèi)部的static型的變量)的作用域是當前函數(shù),外部靜態(tài)變量(定義在函數(shù)外面的static型的變量)的作用域是當前文件,即可以跨越同一文件中的不同函數(shù)。【1.57】答案:A【1.58】答案:A注釋:它和參數(shù)a一樣,數(shù)據(jù)類型說明被省略,按照C語言的規(guī)定,在這種情況下,表示它們是int型。【1.59】答案:C注釋:函數(shù)swapa是值傳遞,函數(shù)的執(zhí)行結(jié)果不能返回;函數(shù)swapb中變量temp不

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論