《C語言程序設(shè)計(jì)》課程自測(cè)題_第1頁
《C語言程序設(shè)計(jì)》課程自測(cè)題_第2頁
《C語言程序設(shè)計(jì)》課程自測(cè)題_第3頁
《C語言程序設(shè)計(jì)》課程自測(cè)題_第4頁
《C語言程序設(shè)計(jì)》課程自測(cè)題_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《C語言程序設(shè)計(jì)》課程自測(cè)1章C語言概述一、判斷題C語言程序中,任何英語單詞均可以作標(biāo)識(shí)符。()X在C語言的源程序中,注釋使用越多,編譯之后的可執(zhí)行程序的執(zhí)行效率越低。()XC語言是一種面向過程的語言。()丁當(dāng)主程序執(zhí)行完畢時(shí),亦即程序執(zhí)行完畢。()丁C程序有且僅有一個(gè)main()函數(shù)。 ( )丁C語言中不區(qū)分大小寫英文字母。 ()X用C語言編寫的程序是一種需要經(jīng)過編譯和連接才能運(yùn)行的程序。()丁C語言是一門對(duì)標(biāo)識(shí)符大小寫敏感的程序設(shè)計(jì)語言。()丁二、單選題一個(gè)C程序的組成部分可以是()。A)一個(gè)主函數(shù)和一至若干個(gè)其他函數(shù)B)一至若干個(gè)主函數(shù)C)一個(gè)主程序和一至若干個(gè)其他函數(shù)D)一個(gè)主程序和一至若干個(gè)子程序A以下敘述的是()。A)在C程序中,main函數(shù)必須位于程序的最前面B)C程序的每行中只能寫一條語句C語言本身沒有輸入輸出語句在對(duì)一個(gè)C程序進(jìn)行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯(cuò)CC語言規(guī)定,C程序執(zhí)行的開始處為( )。A)源程序中排列在最前面的函數(shù)B)一個(gè)指定的系統(tǒng)庫函數(shù)C)用戶指定的一個(gè)特定函數(shù)D)程序的主函數(shù)D一個(gè)C程序的執(zhí)行是從()。本程序的main函數(shù)開始,到main函數(shù)結(jié)束本程序文件的第一個(gè)函數(shù)開始,到本程序文件的最后一個(gè)函數(shù)結(jié)束本程序的main函數(shù)開始,到本程序文件的最后一個(gè)函數(shù)結(jié)束本程序文件的第一個(gè)函數(shù)開始,到本程序main函數(shù)結(jié)束A一個(gè)C語言程序是由( )組成。(A)一個(gè)函數(shù)(B)一個(gè)或若干個(gè)函數(shù)(C)一個(gè)過程 (D)一個(gè)過程或若干個(gè)過程BTOC\o"1-5"\h\z下列說法中錯(cuò)誤的是( )。(A)程序的執(zhí)行總是從主函數(shù)開始。(B)主函數(shù)可以調(diào)用任何非主函數(shù)的其它函數(shù)(C)任何非主函數(shù)可以調(diào)用其它任何非主函數(shù)(D)程序可以從任何非主函數(shù)開始執(zhí)行DC程序的基本單位是( )。A)函數(shù)B)過程 C)語句 D)子程序AC語言規(guī)定:在一個(gè)源程序中,main函數(shù)的位置( )。

A)必須在最開始 B)必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C)可以任意D)必須在最后C9.下列四組選項(xiàng)中,均不是C語言關(guān)鍵字的選項(xiàng)是()。A)defineB)getcC)includeD)whileIFcharscanfgotypeprintfcasepowA10.以下敘述不的是()。A)—個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成B)—個(gè)C源程序必須包含一個(gè)main函數(shù)C)C程序的基本組成單位是函數(shù)C)C程序的基本組成單位是函數(shù)DD)在C程序中,注釋說明只能位于一條語句的后面以下的C語言標(biāo)識(shí)符是( )。A) abc1_ B)_abc1 C)ABC1_ D)Abc1ABCD錯(cuò)誤ABCDC語言中的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符( )。A)必須為字母B)必須為下劃線C)必須為字母或下劃線D)可以是字母、數(shù)字和下劃線中任一種字符C三、多選題有關(guān)C語言特點(diǎn)的表述的是()(A)語言程序簡(jiǎn)潔、緊湊 (B)C語言可移植性強(qiáng)(C) C語言可以實(shí)現(xiàn)直接對(duì)硬件進(jìn)行操作(D) C語言是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語言(E) C語言是一種結(jié)構(gòu)化的程序設(shè)計(jì)語言ABCE結(jié)構(gòu)化程序設(shè)計(jì)的基本結(jié)構(gòu)包括()D)順序結(jié)構(gòu) E)分支結(jié)構(gòu)A)從上到下的結(jié)構(gòu) B)D)順序結(jié)構(gòu) E)分支結(jié)構(gòu)BCD3章數(shù)據(jù)類型運(yùn)算符和表達(dá)式一、判斷題在C語言中,不同類型的數(shù)據(jù)不可以在一起進(jìn)行算術(shù)運(yùn)算。()X由于計(jì)算機(jī)的計(jì)算精度很高,所以在C語言中程序計(jì)算1.0/3*3的結(jié)果肯定等于1。()X當(dāng)一個(gè)C語言表達(dá)式中同時(shí)含有字符型、整型、單精度和雙精度類型數(shù)據(jù)參加運(yùn)算時(shí)按照"由低到高"的原則,所有的數(shù)據(jù)都必須先轉(zhuǎn)換為雙精度類型數(shù)據(jù)后方能參加運(yùn)算。)X賦值運(yùn)算符優(yōu)先于條件運(yùn)算符。()XC語言與其他高級(jí)語言一樣,對(duì)于所有的同級(jí)運(yùn)算符均遵循左結(jié)合原則。()X如果被定義函數(shù)的返回值類型是整型或字符型,使用前可以不必進(jìn)行說明。()V表達(dá)式128>>2的值是32。( )V若x為整型變量、、為實(shí)型變量,當(dāng)執(zhí)行語句:x=(int)j;后,j也變?yōu)檎妥兞?。?)inta=4,b=0;則表達(dá)式?a&&!b的值是1.(TOC\o"1-5"\h\z賦值運(yùn)算符優(yōu)先于條件運(yùn)算符?( )X!''的優(yōu)先級(jí)可以比'T高。( )兩個(gè)char型數(shù)據(jù)相加,其結(jié)果為char型。( )X若有定義inta;floatb=2.1;則a=int(b+3)是合法的賦值表達(dá)式。()X若有inta=4,b=0側(cè)表達(dá)式a&&!b的值為0。( )V對(duì)于intn=3;執(zhí)行n+=n-=n*n;后n的值是9。( )X表達(dá)式15>>2的值為2。 ()X用語句a=a+b,b=a-b,a=a-b;可以交換a,b兩個(gè)變量的值。()V在C語言中,定義inta=b=c=5;是錯(cuò)0的,而inta,b,c;a=b=c=5;是的.()V表達(dá)式“5=3”是一個(gè)關(guān)系表達(dá)式,且其值為0。( )X若有定義inta,b;則下列語句可用于實(shí)現(xiàn)交換a,b的值。( )a=aAb;b=bAa;a=aAb;V若有定義inta=3,b=4,c=5;則a+b>c&&b==c的值為1。()Xintx=3,y=2;則表達(dá)式(y++==--x)?y++:x++的值為3。( )V設(shè)intx=3,y=2;表達(dá)式(y++==--x)?y++:x++的值是3。( )V已知inta=5,b=5;則表達(dá)式: ++a>b?a:b-->++a?++b:a的值為6。( )V表達(dá)式?(?1<<3)的值是15。()V二、單選題1.下面四個(gè)選項(xiàng)中,均是合法整型常量的選項(xiàng)是()。A)160B)-0xcdfC)-0lD)-0x48a-0xffff0la986,0122e50110xe06680xA設(shè)有定義:intm=l,n=-l測(cè)執(zhí)行語句printf(”%d\n",(m--&++n);后的輸出結(jié)果是( )。A)-1B)0 C)1D)2B設(shè)x,y,z,t均為int型變量,則執(zhí)行以下語句后,t的值為()。x=y=z=1;t=++x||++y&&++z;(A)不定值 (B)2 (C)1 (D)0C執(zhí)行下列程序段后,變量a,b,c的值分別是()。intx=10,y=9;inta,b,c;a=(--x==y++)?--x:++y;b=x++;c=y;(A)a=9,b=9,c=9 (B)a=9,b=10,c=9(C)a=1,b=11,c=10 (D)a=8,b=8,c=10D執(zhí)行下面的程序段后,B的值為()。intx=35;charz=''A'';intB;B=((x&15)&&(z<''a''));(A)0(B)1(C)2(D)3B表達(dá)式11&10的結(jié)果用二進(jìn)制表示為( )。A)11B)3C)1D)10D設(shè)有語句inta=3;則執(zhí)行語句a+=a-=a*a后,變量a的值是( )。(A)3 (B)0 (C)9 (D)-12D在下列選項(xiàng)中,不的賦值語句是()。A)t/=5; B)n1=(n2=(n3=0)); C)k=i==j; D)a=b+c=1;D設(shè)x為int型變量,則執(zhí)行以下語句后,x的值為()。x=10;x+=x-=x-x;A)10B)20C)0D)-20B若有inta=l,b=2,c=3,d=4;則表達(dá)式:a++<b?a++:c<d?a++:d的值是()。A)4 B)3 C)2 D)1C以下選項(xiàng)中( )是的C語言賦值語句。A)x=3,y=5 B)a=b=6 C)i--; D)y=int(x);C設(shè)有如下的變量定義:inti=8,k,a,b;unsignedlongw=5;doublex=1,42,y=5.2;則以下符合C語言語法的表達(dá)式是()。A)a=a-=(b=4)*(a=3) B)x%(--3) C)a=a*3=2 D)y=float(i)A假定有以下變量定義:intk=7,x=12;則值為3的表達(dá)式是()A)x%=(K%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)D設(shè)有如下定義:inta=1,b=2,c=3,d=4,m=2,n=2;則執(zhí)行表達(dá)式:(m=a>b)&&(n=c>d)后,n的值為()。A)1 B)2 C)3 D)0B當(dāng)c的值不為0時(shí),在下列選項(xiàng)中能將c的值賦給變量a、b的語句是()。A)c=b=a; B)(a=c)II(b=c); C)(a=c)&&(b=c); D)a=c=b;C設(shè)a、b、c、d、m、n均為int型變量,且a=5,b=6,c=7,d=8,m=2,n=2,則邏輯表達(dá)式(m=a>b)ll(n=c>d)運(yùn)算后,n的值位為( )。A)0 B)1 C)2 D)3D假定w、x、y、z、m均為int型變量,有如下程序段:

w=1;x=2;y=3;z=4;m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;則該程序運(yùn)行后,m的值是()。4B)3C)2D)1D整型變量x和y的值相等,且為非0值,則以下選項(xiàng)中,結(jié)果為0的表達(dá)式是( )。A)xIIy B)xIy C)x&y D)xAyD下列( )表達(dá)式不滿足:當(dāng)x的值為偶數(shù)時(shí)值為"真”,為奇數(shù)時(shí)值”假”。A)X%2==0 B)!x%2!=0C)(x/2*2-x)==0 D)!(x%2)B20.設(shè)整型變量x的值為5,y的值為220.設(shè)整型變量x的值為5,y的值為2,則值為1的表達(dá)式是(B)Y!=x%3C)X>0&&y<0A)!(y==x/2)D假設(shè)整型變量a為2,使b的值為0的表達(dá)式是(A)b=a/2C若有intA)0A)。D)X!=yIIx>=yB)b=6-(--a)C)b=a%2b=2側(cè)表達(dá)式(b?2)/(b>>1)的值是( )。B)2C)4 D)8)。D)b=a>3?0:1)。C)xIIy+z&&y-z23.設(shè)intx=3,y=4,z=5;則下面表達(dá)式中值為0的是(A)x&&y B)x<=y)。C)xIIy+z&&y-zD)!((x<y)&&!zII1)D24.假設(shè)x=2.5,a=7,y=4.7,則表達(dá)式:x+a%3*(int)(x+y)%2/4的值為( )。A)2.5B)2.75C)3D)9.5A25.已知 a=12,表達(dá)式a+=a-=a*=a的值為()A)A)144B)-12C)0D)24C假設(shè)a=3,b=4,c=5,則邏輯表達(dá)式:TOC\o"1-5"\h\z!(a+b)+c-1&&b+c/2的值是( )。A)true B)false C)0 D)1D若inta=3,b=4測(cè)執(zhí)行c=a++>2llb-->=4之后,b變量的值為( )。A)3 B)0 C)4 D)2C以下( )表達(dá)式取值是正確的。A)1&&a的結(jié)果為1 B)3&5的結(jié)果為0C)3|5的結(jié)果為0 D)3『a''的結(jié)果為029.設(shè)有語句a=4;則執(zhí)行語句a-=a+=a*a;后,變量a的值是()

A)4B)0C)20D)16BTOC\o"1-5"\h\z設(shè)有inta=4,b=6側(cè)表達(dá)式a&b的值為( )A)3 B)4 C)11 D)12B以下哪個(gè)表達(dá)式的值為4( )A)11/3 B)11.0/3 C)(flaot)11/3 D)(int)(11.0/3+0.5)D表達(dá)式k=(12>10)?4:1?2:3的值為( )A)1 B)2 C)3 D)4D假設(shè)所有變量均為整型,則表達(dá)式:(a=2,b=5,b++,a+b)的值為()。A)7B)8C)6D)2B下列程序的輸出結(jié)果是( )。main(){inta=016;a%=6-1;printf("%d",a);a+=a*=a/=3;printf("%d",a++);printf("%d",++a);}A)403 B)402 C)424 D)413C數(shù)學(xué)式4<|x|<10的C語言表達(dá)式為()。A)4<X&&X<10||X>-10&&x<-4 B)4<X&&X<10&&X>-10&&x<-4C)4<X||X<10||X>-10||x<-4AC)4<X||X<10||X>-10||x<-4AD)4<X||X<10&&X>-10||x<-436.以下不正確的表達(dá)式是(36.以下不正確的表達(dá)式是(A)a>b B)c--,++b,a+=1C)。C)a=c+b>n-m=k D)p++37.有定義inta=3,b=4,c=5;37.有定義inta=3,b=4,c=5;執(zhí)行完表達(dá)式a++>--b&&b++>c--&&++c后,a,b,c的值分別為()。A)345BA)345B) 435C)444D)445BTOC\o"1-5"\h\z在下面C語言的函數(shù)說明語句中,正確的是( )。int fun(int x, int y);int fun(int x,y);int fun(x,y);int fun(int x; int y);A2.字符串常量“abc\nt\012\xal*2”在內(nèi)存中所占的存儲(chǔ)空間數(shù)是()。A)11 B)13 C)15 D)18A設(shè)x,y分別為單精度和雙精度類型變量,則下列選項(xiàng)()可將表達(dá)式x+y的運(yùn)算結(jié)果強(qiáng)制轉(zhuǎn)換為整型數(shù)據(jù)。A)(int)x+y B)int(x)+yC)int(x+y) D)(int)(x+y)D在執(zhí)行語句if((x=y=2)>=x&&(x=5))y*=x;后變量x、y的值應(yīng)分別為()。A)2、2 B)5、2 C)5、10D)執(zhí)行時(shí)報(bào)錯(cuò)C當(dāng)z的值不為0時(shí),不能地將z的值賦給變量x和y的是( )。A)x=y=z B)x=z,y=z C)(x=z)||(y=z) D)(x=z)&&(y=z)C設(shè)有整型變量a,實(shí)型變量f,雙精度型變量x,則表達(dá)式10+"b"+x*f值的類型為()。(A)int(B)float(C)double(D)不能確定CTOC\o"1-5"\h\z設(shè)x、y和z是int型變量,且x=3,y=4,z=5,則下面表達(dá)式中值為0的是( )。(A)x&&y; (B)x<=y;<FONTface=Verdana>xIIy+z&&y-z; (D)!((xvy)&&!zII1);v/FONTxY)&&!ZII1);D45.表達(dá)式a<bII~c&d的運(yùn)算順序是( )。(A)~,&,<,II(B)~,II,&,<(C)~,&,II,<(D)~,<,&,IITOC\o"1-5"\h\z在位運(yùn)算中,操作數(shù)每左移一位,其結(jié)果相當(dāng)于( )。(A)操作數(shù)乘以2 (B)操作數(shù)除以2 (C)操作數(shù)除以4 (D)操作數(shù)乘以4A若有intk=5;floatx=1.2;則表達(dá)式(int)(x+k)的值是( )。(A)5 (B)6.2 (C)7 (D)6D表達(dá)式k=(12v10)?4:1?2:3的值為( )。(A) 1 (B)2 (C)3 (D)4B字符串"\101\102\x43\x44"的長(zhǎng)度為( )(A)4 (B)1 (C)16 (D)17A如a為int型,則與表達(dá)式a等價(jià)的C語言關(guān)系表達(dá)式是()(A)a>0 (B)a!=0 (C)a==0 (D)a<0BC語言在判斷一個(gè)量時(shí),用( )表示邏輯真值。(A)true(B)T(C)整型值0 (D)非0整型值D下列哪組運(yùn)算符的優(yōu)先級(jí)相同且運(yùn)算次序從左到右()。A)() []->.B)++-- +=C)< &I人 D)&&IIA已知:intx= 1,y=2,z=0;則執(zhí)行:z=x>y? 10:20z的值為()。A)10 B)20 C)1 D)2B若已定義x和y為double類型,則表達(dá)式x=2,y=x+10/4的值是( )。A)2B)4C)4.0D)4.5Csizeof(”a”+10)的值為( )類型。A)int B)floatC)double D)charA若有floatx=2.5,y=4.7;inta=7;則表達(dá)式x+a%3*(int)(x+y)%2/4的值為( )。A)4.0 B)3.0 C)2.75 D)2.5Dintx=3,y=2;則條件表達(dá)式x>y?1:2.3的值為( )。A)1B)1.0C)2.3D)2B58.已知:intx=1,y= 2,z;則執(zhí)行:z=x>y?++x: ++yz的值為()。(A) 1(B)2(C)3 (D)4CC語言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是()。A)% B)/C)%和/ D)*A若有關(guān)系x±y三z,應(yīng)使用()C語言表達(dá)式。A)(x>=y)&&(y>=z) B)(x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)&(y>=z)A以下能表示a±10或aWO的合法的C語言關(guān)系表達(dá)式是()。A)a>=10ora<=0 B)a>=10|a<=0 C)a>=10llav=0 D)a>=10llav=0CTOC\o"1-5"\h\z若已定義x和y為double類型,則表達(dá)式:x=1,y=x+3/2的值是( )。A)1 B)2 C)2.0 D)2.5C若t為double類型,表達(dá)式t=1,t+5,t的值是( )。A)1 B)6.0 C)1.0 D)6C在以下一組運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是( )。A)<= B)= C)% D)&&C若有以下定義:l chara;intb;floatc;doubled;則表達(dá)式a*b+d-c值的類型為( )。

A)floatB)intC)charD)doubleD66.表示關(guān)系xWyWz的C語言表達(dá)式為( )。A)(x<=y)&&(y<=z) B)(x<=y)AND(y<=z)C)(x<=y<=z) D)(x<=y)&(y<=z)A設(shè)x,y,z,t均為int型變量,則執(zhí)行以下語句后,t的值為()。x=y=z=1;t=x||y&&z;A)不定值B)2 C)1 D)0BCBA)4 B16C32 D52C69. 以下合法的賦值語句是(A)x=y=100B)d--; C)x+y;D)c=int(a+b);設(shè)x.y.z和k都是int型變量,則執(zhí)行表達(dá)式:x=(y=4,z=16,k=32)后,x的值為()70.以下能表示a和b同時(shí)為正或同時(shí)為負(fù)的邏輯表達(dá)式是()。A)(a>=0||b>=0)&&(a<0||b<0)C)(a+b>0)&&(a+b<=0)A)(a>=0||b>=0)&&(a<0||b<0)C)(a+b>0)&&(a+b<=0)D在以下的四個(gè)運(yùn)算符中A)<= B)/ C)!=D在以下的四個(gè)運(yùn)算符中A)?: B)++BD)a*b>0優(yōu)先級(jí)最低的運(yùn)算符是()D)&&TOC\o"1-5"\h\z優(yōu)先級(jí)最高的運(yùn)算符為( )。& D)+=73.設(shè)a和b為int型變量,且a的值為15,b的值為240,則表達(dá)式(a&b)&bllb的值為(A)0 B)1C)trueD)FalseB74.假設(shè)有intx=11;則表達(dá)式(x++*1/3)的值是( )A)3B)12 C)11 D)0A以下關(guān)于運(yùn)算符優(yōu)先順序的描述中關(guān)系運(yùn)算符<以下關(guān)于運(yùn)算符優(yōu)先順序的描述中關(guān)系運(yùn)算符<算術(shù)運(yùn)算符<賦值運(yùn)算符C)算術(shù)運(yùn)算符<關(guān)系運(yùn)算符<賦值運(yùn)算符Dsizeof(double)是一個(gè)( )A)整型表達(dá)式 B)實(shí)型表達(dá)式的是()邏輯運(yùn)算符<關(guān)系運(yùn)算符<算術(shù)運(yùn)算符D)賦值運(yùn)算符<關(guān)系運(yùn)算符<算術(shù)運(yùn)算符不合法的表達(dá)式 D)函數(shù)A設(shè)有整型變量a,實(shí)型變量f,雙精度型變量x,則表達(dá)式10+"b"+x*f的值的類型為(A)intB)float C)double D)不能確定D若有intk=5;flaotx=1.2;則表達(dá)式(int)(x+k)的值是( )5B)6.2C)7D)6D79.下面對(duì)變量賦初值的是()inta=b=c=1;B)inta=1,b=c=2;C)inta=1,b=1,c=1;D)inta=b=1,c=2;C設(shè)有以下語句:inta=3,b=6,c;c=aAb<<2;則c的二進(jìn)制值是()。A)00011011B)00010100C)00011100D)00011000A當(dāng)a=3,b=2,c=1時(shí),表達(dá)式f=a>b>c執(zhí)行完后f的值是()A)1 B)0 C)3 D)2B若x=2,y=1,則表達(dá)式x>y?1:1.5的值為( )A)1B)1.5C)1.0D)2C在位運(yùn)算中,操作數(shù)每左移一位,其結(jié)果相當(dāng)于()A)操作數(shù)乘以2 B)操作數(shù)除以2 C)操作數(shù)乘以4 D)操作數(shù)除以4A在位運(yùn)算中,某操作數(shù)右移3位,其結(jié)果相當(dāng)于()A)操作數(shù)乘以6 B)操作數(shù)除以6 C)操作數(shù)乘以8 D)操作數(shù)除以8D在C語言中,若以下變量均為int型,則下面程序段的輸出結(jié)果是( )。s=6,u=6;u=s++;u++;printf("%d",u);A)7 B)6 C)5 D)4B若有定義:intx=3;doubley;則執(zhí)行語句y=(double)x;后,變量x的數(shù)據(jù)類型為()。A)intB)charC)flaotD)doubleATOC\o"1-5"\h\z若有定義doublex,y;則表達(dá)式x=l,y=x+3/2的值為( )。A)1 B)2 C)2.0 D)2.5C若有定義intx,y,t;則執(zhí)行語句:x=y=3,t=++xll++y;后,y的值為( )。A)不定值 B)4 C)3 D)1C若x、i、j和k都是int型變量,則計(jì)算下面表達(dá)式后,x的值為( )。x=(i=4,j=16,k=32)A)4 B)16 C)32D)52C假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,b++,a+b)的值是( )。A)7B)8C)6D)2B三、多選題C語言中,若在一個(gè)復(fù)合語句和復(fù)合語句所在的函數(shù)中都定義了一個(gè)同名的變量,則該兩變量()。A)實(shí)際是同一變量B)是不同變量但作用域相同C)是不同變量且作用域不同D)是同一變量,但作用域不定CC語言的函數(shù)定義中,如果函數(shù)的返回值為0~255之間的整數(shù),則函數(shù)的返回類型可以定義為()。A)intB)floatC)charD)doubleE)longACE下列選項(xiàng)中,對(duì)變量的初始化定義的是()。(A)inta,b,c=3;(B)inta=3,b=3,c=3;(C)inta=b=c=3;inta=3;b=3;c=3;(E)inta,b=c=3;AB下列賦值語句中的有()(A)a=1,b=3,c=5;(B)a=(b=10)/(c=2);(C)a+=a-=a*a;(D)a+=b;(E)a=1;b=2;c=3;BCDEC語言中的語句中除了控制語句外,還應(yīng)包括()。(A)函數(shù)調(diào)用語句 (B)表達(dá)式語句 (C)空語句(D)復(fù)合語句 (E)輸入輸出語句ABCD在下列說法中,的是()。和其它語言一樣,C語言本身也提供了輸入輸出語句。在C語言中,賦值語句和賦值表達(dá)式不是兩個(gè)等價(jià)的概念。語句x%=y+3;與x=x%y+3;的執(zhí)行效果是一樣的。在inta=3,b=3,c=3;中對(duì)變量的初始化不是在編譯階段完成的。語句x=a>b?a:b;與語句if(a>b)x=a;elsex=b;的作用等價(jià)。BDE在C語言中,每個(gè)變量必須在使用前進(jìn)行類型說明或定義,這樣可以()。為變量賦初值 (B)規(guī)定該變量的取值范圍規(guī)定該變量所能進(jìn)行的運(yùn)算操作 (D)方便在編譯時(shí)為其分配存儲(chǔ)單元(E)規(guī)定變量的個(gè)數(shù)BCDTOC\o"1-5"\h\z下列運(yùn)算符中,屬于單目運(yùn)算符的有( )。A)sizeofB)++ C)! D)!= E),ABC變量x,y,z均為double型且已賦值,能夠表示數(shù)學(xué)式子x/yz的C語言表達(dá)式是( )。(A)x/y*z(B)x/y/z(C)x/y*1/z (D)x*(1/(y*z))(E)1.0/y*1/z*xBCDE錯(cuò)誤BCDE下列哪些運(yùn)算符的優(yōu)先級(jí)相同且運(yùn)算次序從左到右( )。(A) ()[]-> (B) ++-- (C) <>=&&II (E) & 丨人ABC假設(shè)在程序中a、b、c均被定義為整型,并且已賦大于1的值,則下列能表示代數(shù)式1/abc的表達(dá)式是( )。A)1.0/a*1.0/b*1.0/c B)1/a/b/(float)c C)1.0/(a*b*c)1.0/a/b/c E)1.0/(float)(a*b*c)ACDE12.設(shè)有定義:ints,t=387;則可以改變變量t的值的語句有()(A)s=(char)t; (B)t=t/2*2; (C)t=t+65536;(D)t=-(t|32768); (E)t>>2;BD13.設(shè)a,b和c都是int型變量,且a=3,b=4,c=5,則值為0的表達(dá)式是( )。A)a+b>c&&b==cD)!(x=a)&&(y=b)&&0B)allb+c&&b-c C)!(a>b)&&!cll1E)!(a+b)+c-1&&b+c/2AD14.以下的敘述是(A)a&=b等價(jià)于a=a&b)B)al=b等價(jià)于a=alb C)a!=b等價(jià)于a=a!bD)aA=b等價(jià)于a=aAbE)a&&=b等價(jià)于a=a&&bABD15.下列各語句組中,可實(shí)現(xiàn)a,b兩個(gè)整型變量值互換的是( )。a=a+b;b=a-b;a=a-b; B)t=a;a=t;b=t;(intt;) C)a=b;b=a;D)a=aAb;b=aAa;a=aAb; E)b=a;a=b;ABD16.已知a為整型變量,則與表達(dá)式a!=0真假值相同的表達(dá)式有( )A)a>0lla<0B)aC)!a= =0D)!aE)!a==1ABC 錯(cuò)誤ABC17.對(duì)于charch;的賦值語句只()。A)ch=''3''+''5'';B)ch=''3+5'';C)ch=''\035'';D)ch=3+57;E)ch="\b";ACD以下說法中不的是()。A)c>a+b等效于c>(a+b) B)若a,b均為真,則a&&b也為真C表達(dá)式''0''&&''1''的值為0 D)邏輯運(yùn)算符!的優(yōu)先級(jí)比位運(yùn)算符|高E)若a,b不同為真,則a||b的值為假CE以下語句組中,不能使i的值為4的是( )。A)i=j=((i=3)++); B)i=1,j=1;i+=j+=2; C)i=0,j=0;(i=2,i+(j=2));D)i==j=4; E)i=0,j=1;(j==1)?i+=3:i=2;ACDE假設(shè)所有變量均已定義并賦值,則以下合法的C語句有()。A)a:=b+1; B)a=b=c+=2;C)int18.5%3; D)a=a+7=c+d; E)(flaot)3+2;BE假設(shè)有定義inta=12,n=5;則值為0的表達(dá)式有( )A)a/=aB)a%=aC)a/=a+a D)a%=(n%=2) E)a-=a*=aBCDE若a、b、sum為整型,則計(jì)算a+lbI的值的方法可以是( )。sum=a>0?a+b:a-b;sum=b>0?a+b:a-b;(C)ifa>0thensum=a+belsesum=a-b;(D)ifb>0thensum=a+belsesum=a-b;(E)ifb>0thensum=a-belsesum=a+b;BD下列說法的是()可以對(duì)兩個(gè)實(shí)型表達(dá)式進(jìn)行“相等”的判斷不能夠?qū)蓚€(gè)實(shí)型表達(dá)式進(jìn)行“相等”的判斷一個(gè)關(guān)系表達(dá)式可以視為一個(gè)整型表達(dá)式字符數(shù)據(jù)能夠作為整數(shù)參加運(yùn)算整型數(shù)據(jù)和實(shí)型數(shù)據(jù)都可以進(jìn)行“求余”運(yùn)算BCDTOC\o"1-5"\h\z在x的值處于-2到2,4到8時(shí)值為“真”,否則為“假”的表達(dá)式是( )A)(2>x>-2)||(4>x>8) B)!((x<=-2)||(x>=2)||(x>=8))C)(x<2)&&(x>-2)&&(x>4)&&(x<8) D)(x>-2)&&(x<2)||(x<8)&&(x>4)E)(x>-2)&&(x<2)||(x>4)&&(x<8)DE25.設(shè)a=3,b=4,c=5測(cè)值為0的表達(dá)式有()。A)a/=a+a B)a+=a-=a*=aC)a+=a-=a*aD)a||b+c&&b-c E)!a&&b||a>b&&cABE4章順序程序設(shè)計(jì)一、判斷題1.格式字符%皿小中的m不能為負(fù)。( )XTOC\o"1-5"\h\z實(shí)際上,可以用順序、分支、循環(huán)三種結(jié)構(gòu)構(gòu)造任何算法。()丁printf("%d",sizeof(1234));其結(jié)果是4。( )丁在C語言中,任何一個(gè)表達(dá)式的最后加上一個(gè)分號(hào)就構(gòu)成一個(gè)合法的語句。()丁下面程序執(zhí)行結(jié)果是32768。( )main(){inta,b;printf("%d\n",b=(a=32767,a+1));}X二、單選題下述程序的輸出結(jié)果是()#include<STDIO.H>voidmain(){inta,b,c=241;a=c/100%9;b=-1&&-1;printf("%d,%d",a,b);}(A)2,0 (B)2,1 (C).6,1 (D)0,-1B若有定義:intx,y;chara,b,c;并有以下輸入數(shù)據(jù):x=12ABCvCR>,則能給x賦整數(shù)1,給賦整數(shù)2,給a賦字符A,給b賦字符B,給c賦字符C的程序段是

()A)scanf("x%dy=%d",&x,&y);a=getch();b=getch();c=getch();scanf("x=%d%d",&x,&y);a=getch();b=getch();c=getch();scanf("x=%d%d%c%c%c",7x,&y,&a,&b,&c);scanf("x=%d%d%c%c%c%c%c",&x,&y,&a,&b,&b,&c,&c);D已有定義doubled,f;數(shù)據(jù)的輸入方式為:3.45vCR>1.2vCR>根據(jù)定義和數(shù)據(jù)的輸入方式,輸入函數(shù)調(diào)用語句的形式為()A)scanf("%lf%lf",&d,&f)scanf("%f%f",&d,&f)scanf("3.2f%3.1f",&d,&f)scanf("%3.2lf%3.1lf",&d,&f)A如下程序:#include<STDIO.H>voidmain(){intm,n,k;}運(yùn)行后m的值為(}運(yùn)行后m的值為()。(A)4(B)3(C)7Cm=(n=4)+(k=10-7);printf(“m=%d\n”,m);5.下面程序的輸出是()。(D)14#include<STDIO.H>voidmain(){intx=10,y=3;printf(“%d\n#include<STDIO.H>voidmain(){intx=10,y=3;printf(“%d\n”,y=x/y);}(A)0 (B)1 (C)3C下面程序運(yùn)行情況是()。#include<STDIO.H>voidmain(){intx=3,y=0,z=0;if(x=y+z)printf(“****”);elseprintf(“####”);}(A)有語法錯(cuò)0不能通過編譯(D)不確定的值(B)輸出****(C)可以通過編譯,但不能通過連接,因而不能運(yùn)行 (D)輸出####D結(jié)構(gòu)化程序的三種基本結(jié)構(gòu)是(D結(jié)構(gòu)化程序的三種基本結(jié)構(gòu)是((A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)(C)嵌套結(jié)構(gòu)、遞歸結(jié)構(gòu)、順序結(jié)構(gòu))。(B)遞歸結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、轉(zhuǎn)移結(jié)構(gòu)循環(huán)結(jié)構(gòu)、轉(zhuǎn)移結(jié)構(gòu)、順序結(jié)構(gòu)A以下程序的輸出結(jié)果是()。#include<STDIO.H>main(){inti=010,j=10;printf("%d,%d",++i,j--);}(D)10,9)。(A)11,10 (B)9,10 (D)10,9)。B運(yùn)行完下列程序后,在屏幕上的內(nèi)容是(main(){inta=0;a+=(a=12);printf("%d\n",a);}A)0 B)6 C)12 D)24D若x,y為實(shí)數(shù)類型的變量,要判斷x,y相等,最好使用下列關(guān)系表達(dá)式()。A)x==y; B)x-y==0;C)fabs(x-y)<1e-8; D)labs(x-y)<1e-8;語句printf("s=%-5.3s","computer");的輸出結(jié)果是( )。A)s=comB)s=com C)s=terD)s=terB下面程序的輸出是( )main(){intx=10,y=3;printf(“%d\n”,y=x/y);}A)0 B)1 C)3 D)不確定的值C執(zhí)行下面程序中輸出語句后,a的值是( )main(){inta;printf(“%d\n”,(a=3*5,a*4,a5));}A)65 B)20 C)15 D)10C下列程序的輸出結(jié)果是()。main()

{inta=-1,b=1,c;c=(a++<=0)&&!(b--<=0));printf("%d,%d,%d",a,b,c);}C)0,1,0D)0,0,0)C)0,1,0D)0,0,0)。A15.以下程序運(yùn)行后,m的值為(#include<STDIO.H>voidmain(){intm,n,k;m=(n=4)+(k=10-7);printf("m=%d\n",m);}D)14)D)14)。D)-11)。下面程序的輸出結(jié)果是(main(){intx=10;printf("%d\n",~x);}A)9B)-9C)11D以下程序的輸出結(jié)果是(main(){intx=10,y=10;printf("%d,%d\n",x--,--y);}A)10,10B)9,9C)9,10D)10,9Dprintf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5列,如果字符串長(zhǎng)度大于5,則輸出按方式( )。A)從左起輸出該字符串,右補(bǔ)空格B)按原字符長(zhǎng)從左向右全部輸出C)右對(duì)齊輸出該字串,左補(bǔ)空格D)輸出錯(cuò)0信息Bputchar函數(shù)可以向終端輸出一個(gè)A)整型變量表達(dá)式值B)實(shí)型變量值C)字符串D)字符或字符型變量值D根據(jù)定義和數(shù)據(jù)的插入方式,輸入語句的形式為()。已有定義:floatf1,f2;數(shù)據(jù)的輸入方式:4.523.5scanf("%f,%f",&f1,&f2);scanf("%f%f",&f1,&f2);scanf("%3.2f%2.1f",&f1,&f2);scanf("%3.2f%2.1f",&f1,&f2);

B已知ch是字符型變量,下面不的賦值語句是(A)ch=”a+b” B)ch=”\O”; C)ch=”7”+”9”;A假設(shè)inta=4;以下不的語句是()。A)a+1=4;B已知ch是字符型變量,下面不的賦值語句是(A)ch=”a+b” B)ch=”\O”; C)ch=”7”+”9”;A假設(shè)inta=4;以下不的語句是()。A)a+1=4;D)printf("a+1=4");A如下程序的執(zhí)行結(jié)果是(main(){intx=023;printf("%d\n",--x);}A)17B)。D)ch=5+9;B)18B){a++++4;a/=4}C);)。C)23D)24以下程序的輸出結(jié)果是(main(){charx=040;printf("%d\n",x=x<<1);A)100 B)80D假如一個(gè)整型變量的最大允許值為32767,那么運(yùn)行如下程序后屏幕上會(huì)輸出的結(jié)果是())。}

C)120D)64main(){inta,b;a=32767;b=a+1;printf(“%d,%d”,a,b);}A)32767,32768B)32767,-32768C)32767,0D)運(yùn)行時(shí)報(bào)錯(cuò)B已知字母A的ASCII碼為十進(jìn)制的65,下面程序的輸出是main(){charch1,ch2;ch1=''A''+''5''-''3'';ch2=''A''+''6''-''3'';printf("%d,%c\n",ch1,ch2);}A)67,D B)B,C C)C,D D)不確定的值A(chǔ)請(qǐng)讀程序片段:inti=65536;printf(”%d\n",i);上面程序片段的輸出結(jié)果是( )。A)65536 B)0 C)有語法錯(cuò)0,無輸出結(jié)果D)-1B28.在下列程序段中:intx,y;scanf("%3d*2d%d",&x,&y);若輸入的數(shù)據(jù)為:12345678vCR>,則x、y的值分別為( )。A)123,456 B)123,678 C)12345678 D)無法得到的值B有如下程序,輸入數(shù)據(jù)12345<CR>后,y的值是()。#include<stdio.h>main(){intx;floaty;scanf("%3d%f",&x,&y); }(A)12.000000 (B)345.000000 (C)12345.000000 (D)0.000000B有如下程序,若要求a1,a2,c1,c2的值分別為10,20,A,B,的數(shù)據(jù)輸入是()main(){inta1,a2;charc1,c2;scanf("%d%d",&a1,&a2);scanf("%c%c",&c1,&c2);}(A)1020AB<CR> (B)1020<CR>AB<CR> (C)10 20AB<CR>(D)1020AB<CR>D下列語句的輸出為()。intx=-1;printf("%d,%u,%o",x,x,x);A)-1,65535,177777B)-1,-1,-1C)-1,32767,-177777D)-1,32768,177777A若有定義inta=3;則執(zhí)行完printf("%d",-a--);語句后,a的值為()。A)-3 B)2 C)-2 D)3B以下程序的輸出結(jié)果是()。intx=3,y=4;voidmain(){intx,y=5;x=y++;printf("%d",x);}A)3 B)4 C)5 D)6C設(shè)有如下定義:intx=10,y=3,z;則語句:z=(x%y,x/y));printf(“%d\n”,Z);的輸出結(jié)果是()A)1B)0D35.以下程序的輸出結(jié)果是(main(){inta=3;printf("%d\n",(a+a-=a*a)A)-6B)12DC)4D)3).);}C)0 D)-1236.設(shè)有定義:intx=l,y=-l測(cè)語句:printf("%d\n",(x--&++y);的輸出結(jié)果是( ).A)lB)0 C)-l D)2B設(shè)有如下定義:intx=l0,y=3,z;出結(jié)果是( )設(shè)有如下定義:intx=l0,y=3,z;出結(jié)果是( )。A)l B)0 C)4D(l7)下列程序的輸出結(jié)果是(main(){doubled=3.2;intx,y;x=l.2;y=(x+3.8)/5.0;printf("%d\n", d*y);}A)3B)3.2 C)0則語句:printf("%d\n",z=x%y,x/y));D)3)D)3.07的輸TOC\o"1-5"\h\z39.已知E的ASCII碼是69,則執(zhí)行以下語句的結(jié)果是( )。printf("%c",''D''-''8''+''5'');A)66B)A C)B D)EA執(zhí)行下面程序后,n的值為( )。main(){intn,a=2,b=3,c=4;n=(a<?xml:namespaceprefix=b)?a/><b)?a:b;n=(n>b)?b:c;n=(n<c)?a:b;}A)5 B)4 C)3 D)2</b)?a:b;C以下程序執(zhí)行完后,a的值為()#inlcudevoidmain(){inta;printf("%d\n",(a=3*5,a*4,a+5));

}D)10A)65B)20C)15D)10C42.下面程序的運(yùn)行結(jié)果是()main(){intn;(n=6*4,n+6),n*2;printf("n=%d\n",n);}A)30B)24C)60D)48B43.下面程序的運(yùn)行結(jié)果是()main(){intx=0,y=0;while(!!x)y+=++x;printf("%d\n",y);}A)1 B)0 C)控制表達(dá)式非法B44.下面程序的運(yùn)行結(jié)果是( )main(){intn,a=2,b=3,c=4;n=(a<b)?a:b;n=(n>b)?b:c;}TOC\o"1-5"\h\zA)5 B)4 C)3 D)2B45.以下程序的運(yùn)行結(jié)果為( )。main(){unsigneda=3,b=10;printf("%d\n",a<<2|b>>1);}A)3 B)10C)13 D)14C46.以下程序的運(yùn)行結(jié)果為()。main(){intx=17,y=26;printf("%d",y/=(x%=6));}A)5 B)8 C)2 D)26A47.以下程序的輸出結(jié)果是( )。main(){inta=-1,b=4,k;k=(++a,0)&&!(b--<=0);printf("%d,%d,%d\n",k,a,b);}A)1,0,4 B)1,0,3 C)0,0,3D)程序執(zhí)行無限次D)0,0,4D)程序執(zhí)行無限次D)0,0,448.以下程序的輸出是().main(){inta,b,d=241;a=d/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}A)6,1B)2,1C)6,0D)2,0B49.下列程序段的輸出結(jié)果是()。intx=1,y=1,z;z=1||++x&&y--;D)D)2,0,0A)1,1,1 B)2,0,1 C)2,1,1A50.下列程序的運(yùn)行結(jié)果是( ).#include<STDIO.H>main(){unsigneda,b,c;a=0x255;b=a<<4;x=(~b)&0xff;printf("%f",x);}A)0x55B)0xafC)0x50D)0xdaB51.若有定義inta=25,b=14,c=19;則以下三目運(yùn)算符構(gòu)成的語句的執(zhí)行結(jié)果是()a++<=25&&b--<=2&&c++pritnf("%d,%d,%d\n",a,b,c):printf("%d,%d,%d\n",a,b,c);A)25,14,19 B)26,13,19D)26,14,19B52.以下程序的輸出結(jié)果是().main(){inta=-1,b=4,k;k=(++a,1)&&!b-->=0;printf("%d,%d,%d\n",k,a,b);}A)1,0,4 B)1,0,3 C)0,03C三、多選題1.結(jié)構(gòu)化程序設(shè)計(jì)思想應(yīng)該包括()。C)25,13,19D)0,0,4使用順序、分支、循環(huán)三種基本結(jié)構(gòu);限制使用goto語句;應(yīng)該使用自頂向下、逐步求精的方法;應(yīng)該使用模塊化的方法;編碼過程中,變量名的命名只要程序員自己明白就可以了;ABCD2.對(duì)于scanf()函數(shù),下列說法的是( )。如果相鄰格式符之間沒有數(shù)據(jù)分隔,則對(duì)應(yīng)的輸入數(shù)據(jù)之間可用空格、回車分隔。輸入數(shù)據(jù)時(shí)不能指定精度。在用格式說明符"%c"輸入單個(gè)字符時(shí),空格字符和轉(zhuǎn)義字符是無效字符,即不能被輸入。遇到空格、或者回車時(shí),系統(tǒng)認(rèn)為一個(gè)數(shù)據(jù)輸入結(jié)束。ABD已知ch是字符型變量,下面的賦值語句是( )。A)ch=”123”; B)ch=”\xff'; C)ch=”t”; D)ch="\";BC若有定義inta,b;floatx;,則以下不的賦值語句是( )。A)a=1,b=2, B)b++; C)a=b=5D)b=int(x);答案:A,C,DACD5章條件語句一、判斷題在if...else語句中,else總是和它上面最近且未曾配對(duì)的if配對(duì)。( )V在if(v表達(dá)式〉) <語句序列1> else<語句序列2>中的語句序列1和語句序列2可以為復(fù)合語句。()VC語言在判斷一個(gè)量是否為真時(shí),以非0值代表“真”,以0值代表“假”。()V與下列程序段等價(jià)的賦值語句是y=x>0?1:x<0?-1:0 ( )Xif(x>0)y=1;elseif(xv0)y=-1;elsey=0;二、單選題有如下程序main(){floatx=4.0,y;if(xv0.0)y=0.0;elseif(xv10.0)y=1.0/x;elsey=1.0;printf(“%f\n”,y);}該程序的輸出結(jié)果是( )A)0.0B)0.25C)0.5D)1.0B為了避免嵌套的if-else語句的二義性,C語言規(guī)定else總是與()組成配對(duì)關(guān)系。(A)縮排位置相同的if (B)在其之前未配對(duì)的if(C)在其之前未配對(duì)的最近的if (D)同一行上的ifC為了避免嵌套的if-else語句的二義性,C語言規(guī)定else總是與()組成配對(duì)關(guān)系。(A)縮進(jìn)位置相同的if (B)在其之前未配對(duì)的if(C)在其之前最近的未配對(duì)的if (D)同一行上的ifC設(shè)inta=0,b=5,c=2選擇可執(zhí)行x++的語句是()。(A)if(a)x++ (B)if(a=b)x++;(C)if(a=<b)x++;(D)if(!(b-c))x++;B5.下列程序段運(yùn)行后,x的值是()。inta,b,c,x;a=b=c=0;x=35;if(!a)x--;elseif(b);if(c)x=3;elsex=4;A)3B)4C)34D)35B若要求在if后一對(duì)圓括號(hào)中表示a不等于0的關(guān)系,則能表示這一關(guān)系的表達(dá)式為A)a<>0DB)!aC)a=0D)a假定所有變量均已定義,if(!ok1)x--;elseif(ok2)if(ok3)elsex=4;上面程序段運(yùn)行后x的值是:(A)14 B)4 C)15D在C語言的if語句中,ok1=1;ok2=2;ok3=3;x=15;x=3;)D)3用作判斷的表達(dá)式為(A)關(guān)系表達(dá)式 B)邏輯表達(dá)式式D以下程序的運(yùn)行情況是(#inlcudevoidmain({intifelse).).C)算術(shù)表達(dá)式D)任意表達(dá))x=3,y=0,z=0;(x=y+z) printf("****");printf("####");}A)有語法錯(cuò)0不能通過編譯C)可以通過編譯,不能通過連接,不能運(yùn)行D若要求在if后一對(duì)圓括號(hào)中表示count等于0的關(guān)系, 則能表示這一關(guān)系的表達(dá)式為()A)countB以下程序的輸出結(jié)果是(#include<MATH.H>main(){inta=1,b=4,c=2;floaty=4.0,z;B)!countC)count=0)。B)輸出****D)輸出####D)count!=0z=(a+b)/c+sqrt((double)y)*1.2/c;printf(%f\n",z);}A)3.500000B)3.700000C)3.200000D)4.400000C若有定義intx,y;下面選項(xiàng)中合法的if語句()if(a==b)x++;if(a=<B)X++;if(a<>b)x++;(Cif(a=>b)x++;A下面程序的輸出是( )。#include<STDIO.H>main(){intx=100,a=10,b=20;intv1=5,v2=0;if(a<B)if(b!=15)if(b!=15)if(!v1)x=1;elseif(v2) x=10;x=-1;printf("%d",x);}(A)100(B)-1(C)1(D)10B有一C語言源程序如下:main(){inta,b=-1;scanf("%d",&a);if(a)if(a>0) b=1;elseb=0;}該程序所表示的數(shù)學(xué)函數(shù)關(guān)系是()<IMGsrc="/UploadFile/2008326113138781.jpg"border=0>C運(yùn)行下列程序并用鍵盤輸入53,48,32后,在屏幕上的內(nèi)容是()main(){inti,j,k;scanf("%d,%d,%d",&i,&j, &k);if(i>50)printf("%d",i);elseif(i>40)printf("%d",j);elseif(i>30)printf("%d",k);elseprintf("Error");}A)53B)48C)32 D)Error16.若有inti=10,j=0;并執(zhí)行下列程序段switchr(i){case9:i+=1;break;case10:case11:i-=2;break;default:j+= 3;break;}則變量i的結(jié)果是( )。13 B)10 C)11 D)8D17.若inti=10,執(zhí)行下列程序switch(i){case9:i+=1;case10:case11:i-=1;default:i+= 1;}則變量i的結(jié)果是( )。10(B)11(C)12(D)9A若給定條件表達(dá)式(m)?(a++):(a--),則其中表達(dá)式m()。A)和(m==0)等價(jià) B)和(m=1)等價(jià) C)和(m!=0)等價(jià) D)和(m!=l)等價(jià)C以下程序段的運(yùn)行結(jié)果是()。inta=7,b=8,c=9;if(a>b)a=b,b=c;c=a;printf("%d,%d,%d\n",a,b,c);A)7,8,7 B)7,9,7 C)8,9,7 D)7,8,9A要判斷字符變量ch中的值是否為數(shù)字字符,則的表達(dá)式是( )。A)ch三0&&ch三9 B)ch>=0&&chv=9 C)ch>=”0''&&chv=”9” D)ch三”0”ch2”9”C兩次運(yùn)行以下程序,若從鍵盤上分別輸入6和4,則輸出結(jié)果是()main(){intx;scanf("%d",&x);if(x++>5) printf("%d\n",x--);}A)7和5B)7C)7和4D)6和4B下面程序的輸出是()。main(){inty=9;for(;y>0;y--)if(y%3==0){printf(“%d”,--y);continue;}}A)741B)852C)963D)875421B假定所有變量均已說明,下列程序段運(yùn)行后x的值是()。a=b=c=0;x=35;if(!a)x--;elseif(b)if(c)x=3;elsex=4;A)34 B)4 C)35 D)3B下面程序的運(yùn)行結(jié)果是()。main(){intk=3;if(k++>3)printf("%d\n",k++);else printf("%d\n",--k);}A)5B)4 C)3 D)2C下面程序的輸出結(jié)果為( )。main(){intx=0,a=10,b=20,c=15;if(a>b)if(b<c)x=1;elsex=2;printf("%d\n",x);}A)0 B)1 C)2 D)不確定A下列程序的輸出結(jié)果是()#include<stdio.h>main(){inta,b,c;a=1;b=2c=3;a=(c=a>b)&&(b=c<b)?b:c;printf("%d,%d,%d\n",a,b,c);}A)1,2,3 B)0,2,0 C)1,2,0 D)1,0,0三、多選題如果tv>0,則把變量a的值賦給變量c,否則把變量b的值賦給變量c,能實(shí)現(xiàn)此功能的語句有()。c=t?a:b; (B)c=!t?a:b;(C)if(t)c=a;elsec=b;if(!t)c=a;elsec=b;(E)c=t!=0?a:b;ACE以下敘述的有()A)if((x=12;)!=0)…… B)if((x=12)!=0)……C)賦值語句與賦值表達(dá)式是不同的D)在if語句中的表達(dá)式不能有賦值語句E)在if語句中不能有賦值表達(dá)式BCD若inta,b,sum;則計(jì)算a+lbI的值的方法( )。A)sum=a>0?a+b:a-b;B)sum=b>0?a+b:a-b;C)if(a>0)sum=a+b;elsesum=a-b;D)if(b>0)sum=a+b;elsesum=a-b;E)if(b>0)sum=a-b;elsesum=a+b;BD已定義inta,b,x,下列語句中合法的條件語句是( )。A)if(a=<b)++x;B)if(a=>b)++x;C)if(a!=b)++x;D)if(a<>b)++x;E)if(a>=b)++x;CE5.若變量c定義為char型,則能判斷c為大寫字母的有()A)''A''<=c<=''Z''B)''Z''>=c>=''A''C)c>=''A''&&''Z''>=cD)c>=''A''&&c<=''ZE)c>=''A''llc<=''Z''CD6章循環(huán)結(jié)構(gòu)一、判斷題continue語句可以用于switch結(jié)構(gòu)中。()Xbreak語句只能用于循環(huán)語句中。()Xdo......while循環(huán)語句至少要執(zhí)行一次循環(huán)體。丁TOC\o"1-5"\h\z語句while(!E);中的條件!E等價(jià)于E==0。( )V語句for(;;){循環(huán)體}和while(1){循環(huán)體}是等價(jià)的。( )V在C語言中,for語句既可以用于計(jì)數(shù)類型循環(huán)又可以用于條件類型循環(huán)。()V二、單選題若N為整型變量,則for(N=10;N=0;N--);循環(huán)里的循環(huán)體被( )。A)無限循環(huán) B)執(zhí)行10次C)執(zhí)行一次 D)一次也不執(zhí)行D下列程序段運(yùn)行后i的值是()。inti=10switch(i+1){case10:i++;break;case11:++i;case12:++i;break;default:i=i+1;}A)11 B)13 C)12 D)14C3.下面的程序,描述的是()main(){intx=3;do{printf("%d\n",x-=2);}while(!(--x));}(A)輸出的是1循環(huán)B4.執(zhí)行下面程序后,a的值是(#include<stdio.h>void{(B)輸出的是1和-2)。main()inta;printf(“%d\n”,(a=3*5,a*4,a+5));(B)20輸出的是3和0是死(A)65B5.以下程序的輸出結(jié)果為(#include<stdio.h>main(){inti;for(i=0;i<10;i++);printf("%d",i);(C)15(D)10)。}(A)DC語句for(;;){……}是指(A)無意義 (B)無限循環(huán)B以下程序的輸出結(jié)果是:main(){intn=4while(n--)printf("%d",--n);}A)20A(B)123456789(C)B)310123456789(D)10)。(C)循環(huán)執(zhí)行1次(D)循環(huán)執(zhí)行0次C)32D)2 1設(shè)inta=1,則執(zhí)行完循環(huán)While(a++v5);a的值是:A)6 B)5 C)1A在下列for循環(huán)中,其循環(huán)次數(shù)是()for(x=1,y=0;(y!=123)&&(x<4);x++);A)4 B)3 C)1 D)無數(shù)多次D)-264B10.有如下程序main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf(“a=%d,b=%d\n”,a,b);}該程序的輸出結(jié)果是()A)a=2,b=1a=1,b=1a=1,b=0a=2,b=2A若有定義floatx,y;inta,b;則合法的switch語句是()switch(a){case3+x:printf("abc");case4:printf("123abc");}switch(a)case3printf("abc");case4printf("123abc");}switch(b){default:a++;case1:printf("abc");case1+2:printf("1234");}switch(a+b);{case1+2:printf("1234");case1:printf("abc");default:a++;C循環(huán)語句for(x=0,y=0;(y!=123)ll(xv4);x++);的循環(huán)次數(shù)是()。34無限次不確定次C下述程序的輸出結(jié)果是()#include<stdio.h>voidmain(){intx=9;for(;x>0;x--){if(x%3==0){printf("%d",--x);continue;}}}(A)741(B)852963875421B假定a和b為int型變量,則執(zhí)行以下語句后b的值為()a=1;b=10;do{b-=a;a++;}while(b--<0);(A)9(B)-2(C)-1(D)8D15.循環(huán)語句for(x=0,y=0;(y!=123)ll(xv4);x++);的循環(huán)執(zhí)行((A)無限次 (B)不確定次 (C)4次(D)3次A16.設(shè)x和y均為int型變量,則執(zhí)行下面的循環(huán)后,y的值為(for(y=1,x=1;y<=50;y++){if(x>=10)break;if(x%2==1){x+=5;continue;}x-=3;}(A)2 (B)4 (C)6 (D)8C17.語句while(!e==0);什么時(shí)候?qū)?huì)陷入死循環(huán)()A)e==0B)e!=0C)e!=1D)e!=-1B18.執(zhí)行下面程序段的結(jié)果是()。intx=23;do{printf("%2d",x--);(D)陷入死循環(huán)(D)陷入死循環(huán))(C)不打出任何內(nèi)容(A)打印出321 (B)打印出(C)不打出任何內(nèi)容19.循環(huán)語句for(a=0,b=0;(b!=45)||(av5);a++);的循環(huán)次數(shù)是((A)4 (B)3 (C)5(D)無數(shù)多次D20.以下不是死循環(huán)的語句()。(A)for( ; ;x++=i);

(B)while(1){x++;}(C)for(i=10;;i--)sum-=i;(D)for( ;(c=getchar())!=‘\n';)sum-=i;D.若則輸出結(jié)果為(2intx=3;且有下面的程序片段,do{printf("%d",x-=2);}while(!(--x));(A)1(B)30 (C) 1-2 (D)死循環(huán)C)。22.以下程序的輸出結(jié)果是( )》main(){intn=4;while(n--)printf("%d",--n);}A)20B)31C)321D)210語句while(!E);中的表達(dá)式!E等價(jià)于( )。A)E==0 B)E!=1 C)E!=0 D)E==1A以下程序段()。intx=-1;do{x=x*x;}while(!x);是死循環(huán) B)循環(huán)執(zhí)行2次 C)循環(huán)執(zhí)行1次 D)有語法錯(cuò)0C25.對(duì)以下程序段,描述的是()。intk=5;while(k=0) k=k-1;printf("%d\n",k);while(k=0) k=k-1;printf("%d\n",k);循環(huán)體被執(zhí)行了5次循環(huán)體一次也不執(zhí)行C26.以下語句執(zhí)行完后i循環(huán)體是無限循環(huán)循環(huán)體被執(zhí)行一次的值為( )。for(x=0,y=3,i=0;(y>3)&&(x<4);x++,y++)i++;A)0 B)1 C)2Afor(x=0,y=3,i=0;(y>3)&&(x<4);x++,y++)i++;A)0 B)1 C)2A27.下面程序的運(yùn)行結(jié)果是( )main(){intx=0,y=0;while(1) y=++x;printf("%d\n",y);}D)3A) 1B)A) 1B)控制表達(dá)式非法C)無限循環(huán)D)0C28.下面程序段的輸出結(jié)果是() 。intx=3;do{printf("%d",x-=2);}while(!(--x));A)1B)130 C)12 D)死循環(huán)D執(zhí)行下列程序段之后,b的值為( )。inta=1,b=10;do{b-=a;a++;}while(b--<0);A)9 B)-2 C)-4 D)8D在下述程序中,判斷i>j共執(zhí)行了()次。#include<stdio.h>voidmain(){inti=0,j=10,k=2,s=0;for(;;){i+=k;if(i>j){printf("%d\n",s);break;}s+=i;}}(A)4(B)7(C)5(D)6D三、多選題在下列語句所構(gòu)成的程序結(jié)構(gòu)中,break語句和continue語句均可使用的是()(A)用goto語句和if語句構(gòu)成的循環(huán) (B)while循環(huán)(C)do-while循環(huán)(D)for循環(huán)(E)switch語句構(gòu)成的分支結(jié)構(gòu)BCD與for(表達(dá)式1;;表達(dá)式3);語句等價(jià)的選項(xiàng)有()。(A)for(表達(dá)式1;1;表達(dá)式3); (B)for(表達(dá)式1;0;表達(dá)式3);(C)表達(dá)式1;while(1)表達(dá)式3;(D)表達(dá)式1;while(0)表達(dá)式3;(E)表達(dá)式1;while(3)表達(dá)式3;ACE在while(<表達(dá)式〉)中,用于表達(dá)式等于0時(shí)循環(huán),否則退出循環(huán)的表達(dá)式可以寫成()。A)while(x!=0)B)while(x==0)C)while(x)D)while(!x)E)while(x=0)BD在C語言中,下列說法的有()。"do語句體while(條件)"中的語句體可能一次也不會(huì)執(zhí)行"do語句體while(條件)"中當(dāng)條件為0時(shí)將結(jié)束循環(huán)

for(表達(dá)式1;表達(dá)式2;表達(dá)式3);中的表達(dá)式1無論如何都會(huì)執(zhí)行一次for循環(huán)只能用于循環(huán)次數(shù)已確定的情況}D)intx=10;}D)intx=10;E)for(;;);(E)do-while語句和while語句在任何情況下完成的功能等價(jià)BC5.在下列選項(xiàng)中,構(gòu)成死循環(huán)的程序段是(A)inti=100; B)intk=100;)。C)ints=36;while(1)dowhile(s);{i=i%100+1;{k++;--s;if(i>100)break;}while(k>=1000);for(;1;x--)if(x==0)break;ACE6章數(shù)組一、判斷題1.如果strcmp(s1,s2)的返回值為一個(gè)負(fù)數(shù),則表明字符串si一定小于字符串s2。(”2.strlen(s1)+ strlen(s2)等于strlen(strcat(s1,s2))。( ”二、單選題1.在下面關(guān)于一維數(shù)組的定義中,其中()有語法錯(cuò)0。A)intx[]={1,2,3,4,5};B)intx[5]={0};C)intx[]; D)C2.設(shè)有字符數(shù)組a,則的輸入語句intx[5];是()。(A) gets(''a''); (B)scanf("%c",a);(C)scanf("%s",a);

溫馨提示

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

評(píng)論

0/150

提交評(píng)論