點(diǎn)擊查看:2018年9月計(jì)算機(jī)二級C語言考試章節(jié)習(xí)題及答案匯總
第2章 C程序設(shè)計(jì)的初步知識
2.3 整型數(shù)據(jù)
1[單選題] 用8位無符號二進(jìn)制數(shù)能表示的最大十進(jìn)制數(shù)為( )
A.127
B.128
C.255
D.256
參考答案:C
參考解析:2^8-1=256-1=255
2[單選題] 若有以下程序段(n所賦的是八進(jìn)制數(shù))
int m=32767,n=032767
printf("%d,%o/n",m,n);
執(zhí)行后輸出結(jié)果是( )
A.32767,32767
B.32767,032767
C.32767,77777
D.32767,077777
參考答案:A
3[單選題] 有以下程序
main()
{ char *s[]={"one","two","three"},*p;
p=s[1];
printf("%c,%s\n",*(p+1),s[0]);
}
執(zhí)行后輸出結(jié)果是( )
A.n,two
B.t,one
C.w,one
D.o,two
參考答案:C
4[單選題] 以下定義語句中正確的是
A.int a =b =0;
B.char A = 65 + 1,b='b';
C.float a = 1,*b=&a,*c=&b;
D.double a = 0.0;b=1.1;
參考答案:B
參考解析:A選項(xiàng)中定義時(shí)賦值不能用連等。C選項(xiàng)中變量C和&b的類型不匹配。D選項(xiàng)中變量b前是分號,所以變量b沒有類型,即未定義。B為變量定義時(shí)賦值的正確表達(dá)形式
5[單選題] 設(shè)有定義:int x=2;以下表達(dá)式中,值不為6的是 ( )
A.x*=x+1
B.x++=2*X
C.X*=(1 X)
D.2*X,X+=2
參考答案:D
參考解析:選項(xiàng)A和C很容易看出結(jié)果是6。選項(xiàng)B和D是逗號表達(dá)式,逗號表達(dá)式是從左到右順序求子表達(dá)式的值,整體的逗號表達(dá)式的值取最后一個(gè)子表達(dá)式的值,很容易判斷出答案D錯(cuò)誤。
6[單選題] 若有以下定義(設(shè)int類型變量占2個(gè)字節(jié))
int i=8,j=9;
則以下語句:
printf("i=%%d,j=%%%d\n",i,j);
輸出結(jié)果是( )。
A.i=8,d=9
B.i=%d,j=%8
C.i=%d,j=%d
D.8,9
參考答案:B
參考解析:本題考查printf函數(shù)的格式。printf函數(shù)中格式說明符之前插入的任何字符都按原樣輸出。對于printf函數(shù),有兩個(gè)%說明;第一個(gè)%后面的內(nèi)容要按原樣輸出。
7[單選題] 有下列程序:
若想從鍵盤上輸入數(shù)據(jù),使變量m中的值為123,n中的值為456,P中的值為789,則正確的輸入是( )。
A.m=123n=456p=789
B.m=123 n=456 p=789
C.m=123,n=456,p=789
D.123 456 789
參考答案:A
參考解析:scanf()函數(shù)中格式控制字符串是為了輸入數(shù)據(jù)用的,無論其中有什么字符,在輸入數(shù)據(jù)時(shí),按照一一對應(yīng)的位置原樣輸入這些字符。
8[單選題] 以下關(guān)于long、int和short類型數(shù)據(jù)占用內(nèi)存大小的敘述中正確的是( )。
A.均占4個(gè)字節(jié)
B.根據(jù)數(shù)據(jù)的大小來決定所占內(nèi)存的字節(jié)數(shù)
C.由用戶自己定義
D.由C語言編譯系統(tǒng)決定
參考答案:D
參考解析:不同的編譯系統(tǒng)或計(jì)算機(jī)系統(tǒng)對幾類整型數(shù)所占用的字節(jié)數(shù)有不同的規(guī)定。long、int和short類型數(shù)據(jù)占用內(nèi)存大小是由選擇何種C編譯系統(tǒng)決定的。
9[單選題] 設(shè)a和b均為int型變量,且a=6、b=11、c=3,則能使值為3的表達(dá)式是( )。
A.b%(c%4)
B.b%(c-a%5)
C.b%a-a%5
D.(b%a)-(a%4)
參考答案:D
參考解析:選項(xiàng)D)括號內(nèi)的運(yùn)算分別是b%a=11%6=5和a%c=6%4=2,最后得到5-2=3。
10[單選題] 若函數(shù)中有定義語句:int a;,則( )。
A.系統(tǒng)將自動給a賦初值0
B.這時(shí)a中的值是和隨機(jī)數(shù)
C.系統(tǒng)將自動給a賦初值-1
D.這a中無任何值
參考答案:B
參考解析:本題考查變量賦值基本概念。在聲明一個(gè)變量后,如果未顯式的對其進(jìn)行賦值,則它的值是一個(gè)隨機(jī)值。
11[單選題] 定義無符號整數(shù)類為UInt,下面可以作為類UInt實(shí)例化值的是( )。
A.-369
B.369
C.0.369
D.整數(shù)集合{1,2,3,4,5}
參考答案:B
參考解析:UInt表示的是無符號整數(shù)類,所以它的每個(gè)實(shí)例都是一個(gè)無符號整數(shù),所以排除選項(xiàng)A)和選項(xiàng)c),選項(xiàng)D)是整數(shù)集合,所以也排除。
12[單選題] 若有定義語句:int a=10;double b=3.14;,則表達(dá)式'A'+a+b值的類型是( )。
A.char
B.int
C.double
D.float
參考答案:C
參考解析:在c語言中不同類型的數(shù)據(jù)進(jìn)行運(yùn)算時(shí),除了強(qiáng)制數(shù)據(jù)類型轉(zhuǎn)換外,都要進(jìn)行默認(rèn)的數(shù)據(jù)類型轉(zhuǎn)換,通常轉(zhuǎn)換為精度較高的數(shù)據(jù)類型。對于本題來說,字符型數(shù)據(jù)'A'與整型a相加轉(zhuǎn)換為整型數(shù)據(jù),其和再與雙精度型數(shù)據(jù)b相加,要轉(zhuǎn)換為雙精度型數(shù)據(jù)。
13[單選題] 關(guān)于C語言中數(shù)的表示,以下敘述正確的是( )。
A.只有整型數(shù)在允許范圍內(nèi)能精確無誤的表示,實(shí)型數(shù)會有誤差
B.只要在在允許范圍內(nèi)整型和實(shí)型都能精確表示
C.只有實(shí)型數(shù)在允許范圍內(nèi)能精確無誤的表示,整型數(shù)會有誤差
D.只有八進(jìn)制表示的數(shù)在不會有誤差
參考答案:A
參考解析:實(shí)型數(shù)據(jù)在內(nèi)存中存儲的二進(jìn)制位數(shù)是有限的,例如float型數(shù)據(jù)在內(nèi)存中有24位二進(jìn)制尾數(shù)。而一個(gè)十進(jìn)制實(shí)數(shù)轉(zhuǎn)化為二進(jìn)制實(shí)數(shù)時(shí),其有效數(shù)字位數(shù)有可能會超過尾數(shù)的存儲長度,從而導(dǎo)致有效數(shù)字丟失而產(chǎn)生誤差。
14[單選題] 若有定義和語句:int a,b; scanf("%d,%d",&a,&b); 以下選項(xiàng)中的輸入數(shù)據(jù),不能把值3 賦給變量a、5 賦 給變量b 的是
A.3,5,
B.3,5,4
C.3 ,5
D.3,5
參考答案:C
參考解析:題目中用scanf 函數(shù)以整數(shù)的形式輸入a,b 的值。選項(xiàng)C)整型數(shù)字3 后面有一個(gè)空格,當(dāng)輸入空格時(shí),scanf 函數(shù)輸入就會終止。
15[單選題] 若函數(shù)中有定義語句:int a;,則( )。
A.系統(tǒng)將自動給a賦初值為0
B.系統(tǒng)將自動給a賦初值-1
C.這時(shí)a中的值無意義
D.這時(shí)a中無任何值
參考答案:C
參考解析:用int方法定義變量時(shí),編譯器僅為變量開辟存儲單元,并沒有在存儲單元中放任何值,此時(shí)變量中的值是無確定的,稱變量值”無意義”。因此,本題正確答案為c。
16[單選題] 程序段:int x=12;double y=3.141593;printf(”%d%8.6f”,x,y);的輸出結(jié)果是( )。
A.123.141593
B.12 3.141593
C.12,3.141593
D.123.1415930
參考答案:A
參考解析:本題考查prinff函數(shù)的輸出格式控制符,%m.nf表示指定輸出的實(shí)型數(shù)據(jù)的寬度為m(包含小數(shù)點(diǎn)),并保留n位小數(shù)。當(dāng)輸出數(shù)據(jù)的小數(shù)位大于n時(shí),截去右邊多余的小數(shù),并對截去的部分的第一位做四舍五入的處理;當(dāng)輸出數(shù)據(jù)小數(shù)位小于n時(shí),在小數(shù)的最右邊補(bǔ)0,輸出數(shù)據(jù)的小數(shù)部分寬度為n。若給出的總寬度m小于ll加上整數(shù)位數(shù)和小數(shù)點(diǎn),則自動突破m的限制;反之,數(shù)字右對齊,左邊補(bǔ)空格。本題中3.141593數(shù)值長度為8,小數(shù)位數(shù)是6,因此左端沒有空格,故正確答案為A。
17[單選題] 以下敘述不正確的是( )。
A.在C程序中,逗號運(yùn)算符的優(yōu)先級最低
B.在C程序中,APH和aph是兩個(gè)不同的變量
C.若a和b類型相同,在計(jì)算賦值表達(dá)式a=b后,b的值將放入a中,而b的值不變
D.當(dāng)從鍵盤輸入數(shù)據(jù)時(shí),對于整型變量只能輸入整型數(shù)值,對于實(shí)型變量只能輸入實(shí)型數(shù)值
參考答案:D
參考解析:在c語言所有的運(yùn)算符中,逗號運(yùn)算符的優(yōu)先級最低。C語言區(qū)分大小寫,所以APH和aph是兩個(gè)不同的變量。賦值表達(dá)式a=b表示將b的值賦予a,而b本身的值保持不變;通過鍵盤可以向計(jì)算機(jī)輸入允許的任何類型的數(shù)據(jù)。選項(xiàng)D)中當(dāng)從鍵盤輸人數(shù)據(jù)時(shí),對于整型變量可以輸入整型數(shù)值和字符,對于實(shí)型變量可以輸入實(shí)型數(shù)值和整型數(shù)值等。
18[單選題] 有以下程序,其中%u表示按無符號整數(shù)輸出:
main()
{
unsigned int x = 0xFFFF; /* x 的初值為十六進(jìn)制數(shù)*/
printf("%u\n",x);
}
程序運(yùn)行后的輸出結(jié)果是( )。
A.-1
B.65535
C.32767
D.0xFFFF
參考答案:B
參考解析:本題考查的是整型無符號數(shù)的輸出。%U的作用是按無符號的十進(jìn)制形式輸出整型數(shù),整型無符號數(shù)的取值范圍在0~65535之間,無符號數(shù)不能表示成小于0的負(fù)數(shù),十六進(jìn)制數(shù)0xFFFF轉(zhuǎn)換為二進(jìn)制位其值為l6個(gè)1,代表的整數(shù)就是65535。
19[單選題] 以下選項(xiàng)中不屬于c語言的類型的是( )。
A.unsigned long int
B.long short
C.unsigned int
D.signed short int
參考答案:B
參考解析:c語言中整型變量分為4種,基本型int,短整型short int,長整型long int和無符號型(unsigned int、un-signed short、unsigned long)。因此B)選項(xiàng)不屬于c語言的類型。
20[單選題] 在C語言中,合法的長整型常數(shù)是( )。
A.0.123456
B.4962717
C.9L
D.5.321e2
參考答案:C
參考解析:選項(xiàng)A)和D)是實(shí)型而非整型。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年9月全國計(jì)算機(jī)等級考試試題匯總(各科目)
2018年全國計(jì)算機(jī)等級考試必做試題匯總(各科目)
2018年全國計(jì)算機(jī)等級考試復(fù)習(xí)知識點(diǎn)匯總(各科目)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |