![南昌航空大學(xué)C語(yǔ)言選擇題(共六卷)_第1頁(yè)](http://file4.renrendoc.com/view6/M03/02/2D/wKhkGWdzS7uAHT7nAAIHsYWwVeI482.jpg)
![南昌航空大學(xué)C語(yǔ)言選擇題(共六卷)_第2頁(yè)](http://file4.renrendoc.com/view6/M03/02/2D/wKhkGWdzS7uAHT7nAAIHsYWwVeI4822.jpg)
![南昌航空大學(xué)C語(yǔ)言選擇題(共六卷)_第3頁(yè)](http://file4.renrendoc.com/view6/M03/02/2D/wKhkGWdzS7uAHT7nAAIHsYWwVeI4823.jpg)
![南昌航空大學(xué)C語(yǔ)言選擇題(共六卷)_第4頁(yè)](http://file4.renrendoc.com/view6/M03/02/2D/wKhkGWdzS7uAHT7nAAIHsYWwVeI4824.jpg)
![南昌航空大學(xué)C語(yǔ)言選擇題(共六卷)_第5頁(yè)](http://file4.renrendoc.com/view6/M03/02/2D/wKhkGWdzS7uAHT7nAAIHsYWwVeI4825.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C語(yǔ)言選擇題(一)
(總分100分,考試時(shí)長(zhǎng)90分鐘)
一、理論基礎(chǔ)(每小題1分,共10分)
1、以下敘述中正確的是O
A、在程序的一行上可以出現(xiàn)多個(gè)有效的預(yù)處理命令行
B、使用帶參的宏時(shí),參數(shù)的類型應(yīng)與宏定義時(shí)的一致
C、宏替換不占用運(yùn)行時(shí)間,只占編譯時(shí)間
D、在以下定義中CR是稱為〃宏名〃的標(biāo)識(shí)符#defineCR045
2、以下敘述中錯(cuò)誤的是一
A、用戶所定義的標(biāo)識(shí)符允許使用關(guān)鍵字
B、用戶所定義的標(biāo)識(shí)符應(yīng)盡量做到〃見(jiàn)名識(shí)意〃
C、用戶所定義的標(biāo)識(shí)符中,大、小寫(xiě)字母代表不同標(biāo)識(shí)
D、用戶所定義的標(biāo)識(shí)符必須以字母或下劃線開(kāi)頭
3、以下關(guān)于常量的敘述也不正確的是o
A、常量可以表示一個(gè)具體的、不變的值
B、常量是指固定大變的值
C、不同類型的常登書(shū)寫(xiě)格式不同
D、不同類型的常量書(shū)寫(xiě)格式相同
4、以下不正確的敘述是o
A、在C程序中所月的變量必須先定義后使用
B、程序中,APH和aph是兩個(gè)不同的變量
C、若a和b類型相同,在執(zhí)行了賦值語(yǔ)句a=b;后b中的值將放入a中,b
中的值不變
D、當(dāng)輸入數(shù)值數(shù)據(jù)時(shí),對(duì)于整型變量只能輸入整型值;對(duì)于實(shí)型變量只能
輸入實(shí)型值
5、若采用雙符號(hào)位判斷溢出當(dāng)結(jié)果的符號(hào)位為11時(shí),表示(13)o
A、結(jié)果為正溢出
B、結(jié)果正,無(wú)溢
C、結(jié)果負(fù)溢出
D、結(jié)果為負(fù),無(wú)溢出
6、流程圖里面的開(kāi)始和結(jié)束用()表示。
A、矩形
B、圓
C、橢圓
D、菱形
7、已知各變量的類型說(shuō)明如下,則以下不符合c語(yǔ)言語(yǔ)法的表達(dá)式是:。int
k,a,b;unsignedlongw=5;doublex=l.422;
A、x%(-3)
B、w+=-2
C、k=(a=2,b=3,a+b)
D、a+=a=+(b=4)*(a=3)
8、下列條件語(yǔ)句中輸出結(jié)果與其他語(yǔ)句不同的是o
A、if(a)prinL£(“%d\n”,x);
elseprintf(u%d\nw,y);
if(a==0)printf(w%d\nw,y);
elseprintf("%d\n”,x);
C、if(a!=0)printf("%d\n",x);
elseprintf("%d\n",y);
D、if(a=0)printf(<<%d\nw,x);
elseprintf("%d\n",y);
9、下列選項(xiàng)中,不合法的變量是o
intx=3;
charch='c';
C、floatf;
D、casec;
10、c語(yǔ)言提供的合法的數(shù)據(jù)類型關(guān)鍵字是.
A^Double
B、short
C、integer
DsChar
11>若有定義語(yǔ)句:inta=10;doubleb=3.14;,則表達(dá)式'a'+a+b值得類型
是o
A、char
B、int
C>double
D、float
12、與十六進(jìn)制數(shù)200等值得十進(jìn)制數(shù)為o
A、256
B、512
C、1024
D、2048
13、一個(gè)字長(zhǎng)為8位的無(wú)符號(hào)二進(jìn)制整數(shù)能表示的十進(jìn)制數(shù)值范圍是
A、0-256
B、0-255
C、1-256
D、1-255
14、執(zhí)行下列語(yǔ)句后,a和b的值分別為o(注:a的accii碼值為:97,a
的accii碼值為:65)inta,b;a=l+fa;b=2+7%-4-,a*;
A、-63,-64
B、98,-60
C、1,-60
D、79,78
15、有如下說(shuō)明inta[10]={1,2,3,4,5,6,7,8,9,10),
*p=a;則數(shù)值為9的表達(dá)式是o
A、*p+9
B、*(p+8)
C^*p+二9
D、p+8
16、設(shè)inta=0;錯(cuò)誤的語(yǔ)句是________。
A、++a;
a++;
C、a二一a;
D、(-++a);
17、下列兩條語(yǔ)句〃
intcl=l,c2=2,c3;
c3=l.0/c2*cl;
〃執(zhí)行后變量c3的值是。
A、0
B、0.5
C、1
D、2
18、下列對(duì)變量的引用中,錯(cuò)誤的是o
A、inia;inL&p-a;
chara;char&p=a;
C>inta;int&p;p=a;
D、floata;float&p=a;
19、若intx,*p;則正確的賦值表達(dá)式是—。
A、p=&x
p二x;
C、*p=&x;
D、*p=*x
20、若有以下定義,則正確的語(yǔ)句是
uniondata
(
inti;
charc;
floatf;
}a;
intn;
A、c=5;
B、a={
2/a,1.2);
C、printf(,z%d\n,z,a);
D、n二a;
二、控制結(jié)構(gòu)(每小題1分,共10分)
1、c語(yǔ)言中下面哪個(gè)天是條件語(yǔ)句?
A、if
ifelse
C、NSLog
D、switch
2、有以下程序
main()
(
inti=l,j=l,k=2;
if((j++IIk++)&&i++)
printf("%d,%d,%d\n,z,i,j,k);
)
執(zhí)行后輸出結(jié)果是。
A、1,1,2
B、2,2,1
C、2,2,2
D、2,2,3
3、switch語(yǔ)句不能用于下列哪種數(shù)據(jù)類型()
A、double
B、byte
C、short
Dschar
4、若a的值為3時(shí),下列程序段被執(zhí)行后,c的值是
intc=1;
if(a>0)if(a>3)c=2;
elsec=3;
elsec=4;
A、1
B、2
C、3
D、4
5、選擇出合法的if語(yǔ)句(設(shè)intx,a,b,c;)。
A、if(a=b)x++;
B、if(a=<b)x++;
C^if(a<>b)x++;
D、if(a=>b)x++;
6、執(zhí)行以下程序段后,w的值為_(kāi)_______。
intw=,a",x=14,y=15:w=((x||y)&&(wV'a'));
A、-1
B、NULL
C、1
D、0
7、與y=(x>0?l:x<0?-l:0);的功能相同的if語(yǔ)句是
A、if(x>0)y=l;
elseif(x<0)y=-l;
elsey=0;
B、if(x)
if(x>0)y=l;
elseif(x<0)y=-l;
elsey=0;
C、y—1
if(x)
if(x>0)y=l;
elseif(x-0)y=0;
elsey=-l;
D、y=0;
if(x>=0)
if(x>O)y=l;
elsey=-l;
8、下列程序的輸出結(jié)果是o
main()
(
inta=0,i;
for(i=l;i<5;i+~)
(
switch(i)
(
case0:case3:a+=l;
case1;
case2:a+=2;
default:a+=3;
)
}
printf(〃%d〃,a):
)
A、19
B、1
C、6
D、8
9、有以下程序
#include<stdio.h>
main()
(
inta=5,b=4,c=3,d=2;
if(a>b>c)
printf("%d\n",d);
elseif((c-1>=d)==1)
printf(〃%d\n〃,d+1);
else
printf(〃%d\n”,d+2);
)
執(zhí)行后輸出的結(jié)果是。
A、2
B、3
C、4
D、編譯時(shí)有錯(cuò),無(wú)結(jié)果
10、與〃y=(x>0?l:x<0?-l:0)〃;的功能相同的if語(yǔ)句是
A、if(x>0)y=l;
if(x)
elseif(x>0)y=l;
elsey=0;elseif(x%0)y=-l;
elsey=0;
C、y--l
D、y二0;
if(x)if(x>=0)
if(x>O)y=l;if(xi>=0)y=l;
elseif(x~0)y=0;elsey=-l;
elsey=-l;
三、循環(huán)結(jié)構(gòu)(每小題1分,共10分)
1、c語(yǔ)言的跳轉(zhuǎn)語(yǔ)句中,對(duì)于break和continue說(shuō)法正確的是。
A、break語(yǔ)句只應(yīng)用于循環(huán)體中
B、continue語(yǔ)句只應(yīng)用于循環(huán)體中
C^break是無(wú)條件跳轉(zhuǎn)語(yǔ)句,continue不是。
D、break和continue的跳轉(zhuǎn)范圍不夠明確,容易產(chǎn)生問(wèn)題
2、在循環(huán)結(jié)構(gòu)中,可以使得同一組語(yǔ)句一次也不執(zhí)行.
A、當(dāng)型循環(huán)
B、直到型循環(huán)
C、都不能實(shí)現(xiàn)
D、do-while語(yǔ)句
3、下面描述中,符合結(jié)構(gòu)化程序設(shè)計(jì)風(fēng)格的是_______o
A、使用順序、選擇和重復(fù)(循環(huán))3種基本控制結(jié)構(gòu)表示程序的控制邏輯
B、模塊只有一個(gè)入口,可以有多個(gè)出口
C、注重提高程序的執(zhí)行效率
D、不使用GOTO語(yǔ)句
4、有以下程序:
main()
ints=0.n;
for(n=0;n<3;n~+)
switch(s)
case0;
easel:s-=l;
case2:s+=2;
break;
case3:s+=3;
defaulL:s+-4;
}
printf("%d,"s);
程序運(yùn)行后的輸出結(jié)果是o
A、1,2,4,
B、1,3,6,
C、3,10,14,
D、3,6,10,
5、c語(yǔ)言中while和do-while循環(huán)的主要區(qū)別是。
A、do-while的循環(huán)體至少無(wú)條件執(zhí)行一次
B、while的循環(huán)控制條件比do-while的循環(huán)控制條件嚴(yán)格
C^do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)
D、do-while的循環(huán)體不能是復(fù)合語(yǔ)句
6、以下for語(yǔ)句中不是死循環(huán)的是o
A、for(inti=0;i<l;i++);
B、for(inti=0;i++);
C、for(inti=l;i>0;++i);
D、for(;;);
7、for循環(huán)的循環(huán)次數(shù)o
A、通常是確定的,但也可以不確定
B、通常不確定,但也可以確定
C、是不確定的
D、是確定的
8、若變量已正確定義,以下while循環(huán)正常結(jié)束時(shí),累加到pi的最后一項(xiàng)item
的值滿足0
A、item的絕對(duì)值小于0.0001
B、item的絕對(duì)值大于0.0001
C、item的絕對(duì)值大于等于0.0001
D^item的絕對(duì)值小于等于0.0001
9、有以下程序
#include<stdio.h>
main()
(
inti,n;
for(i=0;i<8;i++)
(
n-rand()%5;
switch(n)
(
case1:
case3:
printf(〃%d\n〃,n);
break;
case2:
case4:
printf(〃%d\n〃,n);
continue;
case0:
exit(0);
)
printfn);
}
}
以下關(guān)于程序執(zhí)行情況的敘述,正確的是O
A、for循環(huán)語(yǔ)句固定執(zhí)行8次
B、當(dāng)產(chǎn)生的隨機(jī)數(shù)n為4時(shí)結(jié)束循環(huán)操作
C、當(dāng)產(chǎn)生的隨機(jī)數(shù)n為1和2時(shí)不做任何操作
D、當(dāng)產(chǎn)生的隨機(jī)數(shù)n為0時(shí)結(jié)束程序運(yùn)行
10、以下描述中正確的是________O
A、由于d。-while循環(huán)中循環(huán)體語(yǔ)句只能是一條可執(zhí)行語(yǔ)句,所以循環(huán)體
內(nèi)不能使用復(fù)合語(yǔ)句
B、do-while循環(huán)由do開(kāi)始,用while結(jié)束,在while(表達(dá)式)后面不能
寫(xiě)分號(hào)
C、在dozhile循環(huán)體中,是先執(zhí)行一次循環(huán),再進(jìn)行判斷
D、do-while循環(huán)中,根據(jù)情況可以省略while
四、數(shù)組/指針數(shù)組(每小題1分,共10分)
1、有以下程序:
main()
(
intnum[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}),ij;
for(i=0;i<4;i+-)
(
for(>0;j<=i;j++)printf(飛4c〃,');
for(j=______;j<4;j++)printf(〃%4d”,num[i][j]);
printf(〃\n〃:;
}
)
若要按以下形式輸出數(shù)組右上半三角1234678111216則在程序下劃
線處應(yīng)填入的是。
A、i-1
B、i
C、i+1
D、4-i
2、以下函數(shù)func()的功能是:使具有n個(gè)元素的一維數(shù)組b的每個(gè)元素的
值都增加2,劃線處應(yīng)填入_____.
func(intb[],intnJ
int;
for(i=0;i<n;i+-)
}
A、b[i++]
B、b[i]++
C、b[i+=2]
D、b[i]+=2
3、以下關(guān)于數(shù)組的描述正確的是
A、數(shù)組的大小是同定的,但可以有不同的類型的數(shù)組元素c
B、數(shù)組的大小是可變的,但所有數(shù)組元素的類型必須相同。
C、數(shù)組的大小是同定的,但所有數(shù)組元素的類型必須相同。
D、數(shù)組的大小是可變的,但可以有不同的類型的數(shù)組元素。
4、若有定義語(yǔ)句:intm[]=(5,4,3,2,1},i=4;則下面對(duì)m數(shù)組元素的引用中
錯(cuò)誤的是—
A、ni[-i]
m[2*2]
C、
D、
5、若有說(shuō)明:inta[10];則對(duì)a數(shù)組元素的正確引用是()。
A、a[10]
B、a[3,5]
C、a(5)
D、a[10-10]
6、c語(yǔ)言中數(shù)組下標(biāo)的下限是o
A、1
B、0
C、視具體情況而定
D、無(wú)固定下限
7、定義如下變量和數(shù)組:inti,x[3][3]={1,2,3,4,5,6,7,8,9
};則下面語(yǔ)句for(i=0;i<3;i++)printf(〃機(jī)1〃,乂[口[2-口);的輸出結(jié)果是
A、159
B、147
C、357
D、369
8、下列定義數(shù)組的語(yǔ)句中,正確的是o
A^intN=10;
B、#defineN10
intxFNl:intxFNl;
C、intx[0..10];
Dsintx口;
9、設(shè)有如下定義:char*aa設(shè)]={"abed","abed");則以下說(shuō)法中正確的是
A、aa數(shù)組成元素的值分別是〃abed〃和ABCD〃
B、aa是指針變量,它指向含有兩個(gè)數(shù)組元素的字符型一維數(shù)組
C、aa數(shù)組的兩個(gè)元素分別存放的是含有4個(gè)字符的一維字符數(shù)組的首地址
D、a社數(shù)組的兩個(gè)元素中各自存放了字符‘I和'A'的地址
10、下列選項(xiàng)中合法的數(shù)組定義是O
A、inta□二〃string”;
B、inta[5]={
0,1,2,3,4,5);
C、chara=〃sting”;
D、chara口二{
0,1,2,3,4)
五、字符串/字符串指針(每小題1分,共10分)
1、以下選項(xiàng)中,合法的C語(yǔ)言常量是。
A、2XY
B、HELLO'
C、〃\0.\0
D、1.0
2、判斷字符串a(chǎn)和b是否相等,應(yīng)當(dāng)使用。
A、if(a=b)
B、if(a=b)
C、if(strcmp(a,b))
D^if(strcmp(a,b)==0)
3、以下程序運(yùn)行后的輸出結(jié)果是
main()
(
chars口:”ABCD〃,*p;
for(p=s+l;p<s+4;p++)printf(,,%s\n,,?p);
)
A、ABCD
BCD
CD
D
B、A
B
C
D
C、B
C
D
D、BCD
CD
D
4、下列字符串中,不可以用作c標(biāo)識(shí)符的是
A、y_2006
B、_FEST_H
C、Return
D、switch
5、按照c語(yǔ)言規(guī)定的用戶標(biāo)識(shí)符命名規(guī)則,不能出現(xiàn)在標(biāo)識(shí)符中的是
________0
A、大寫(xiě)字母
B、連接符
C、數(shù)字字符
D、下劃線
6、以下正確的字符串常量是_______。
A、〃\\\〃
B、'abc,
C、OlympicGames
D、〃〃
7、設(shè)有以下語(yǔ)句,若0。<4,下列選項(xiàng)中對(duì)字符串的非法引用是()。
charstr[4][2]={"aaa","bbb","ccc",〃ddd"},*strp[4];
intj;
for(j=0;j<4;j++)
strp[j]=str[j];
A^strp
B、str[k]
C、strp[k]
*strp
8、下面關(guān)于編譯預(yù)處理命令,正確的是。
A、^definecharCHAR
B、SDefineE0.0000034
C、##defineFALSE0
D、^defineDIM26
9、下列選項(xiàng)中,能夠滿足〃若字符串si等于字符串s2,則執(zhí)行st〃要求的是
A^if(strcmp(s2,si)==0)ST;
B、if(sl==s2)ST;
C、if(slrcpy(s1,s2)―1)ST;
D、if(sl-s2=0)ST;
10、下列數(shù)據(jù)中屬于〃字符串常量〃的是
A、ABC
B、〃ABC〃
C、'ABC'
D、'A'
六、函數(shù)/函數(shù)指針(每小題1分,共10分)
1、以下正確的說(shuō)法是O
A、定義函數(shù)時(shí),形參的類型說(shuō)明可以放在函數(shù)體內(nèi)
B、return后邊的值不能為表達(dá)式
C、如果函數(shù)值的類型與返回值類型不一致,以函數(shù)值類型為準(zhǔn)
D、如果形參與實(shí)參類型不一致,以實(shí)參類型為準(zhǔn)
2、在c語(yǔ)言中,函數(shù)的數(shù)據(jù)類型是指()
A、函數(shù)返回值的數(shù)據(jù)類型
B、函數(shù)形參的數(shù)據(jù)類型
C、調(diào)用該函數(shù)時(shí)的實(shí)參的數(shù)據(jù)類型
D、任意指定的數(shù)據(jù)類型
3、結(jié)構(gòu)化程序設(shè)計(jì)所規(guī)定的三種基本控制結(jié)構(gòu)是o
A、輸入、輸出、處理
B、順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
C、for、while、switch
D、主程序、子程序、函數(shù)
4、以下關(guān)于程序中函數(shù)的定義、調(diào)用和聲明的敘述中,正確的是_____o
A、函數(shù)的定義必須放在該函數(shù)的調(diào)用之前
B、函數(shù)的聲明必須放在該函數(shù)的調(diào)用之前
C、函數(shù)的定義必須放在該函數(shù)的聲明之前
D、函數(shù)的聲明必須放在該函數(shù)的定義之前
5、以下與庫(kù)函數(shù)slrcpy(chtti沐pl,chai*p2)功能不等的程序段是
A、strcpyl(char*pl,char*p2){
while((*pl++=*p2-+)!='\0');
)
B、strcpy2(char*pl,char*p2){
while((*pl=*p2)!='\0'){
pl++;p2++;
C^strcp)^3(char*pl,char*p2){
while(*pl++=*p2+-);
}
strcpy4(char*pl,char*p2){
while(*p2)*pl++=*p2++;
}
6、以下說(shuō)法錯(cuò)誤的是________o
A、由三種基本結(jié)構(gòu)組成的結(jié)構(gòu)化程序不能解決過(guò)于復(fù)雜的問(wèn)題
B、由三種基本結(jié)構(gòu)組成的結(jié)構(gòu)化程序能解決些簡(jiǎn)單的問(wèn)題
C、由三種基本結(jié)構(gòu)組成的結(jié)構(gòu)化程序能解決遞歸問(wèn)題
D、由三種基本結(jié)構(gòu)組成的結(jié)構(gòu)化程序能解決數(shù)學(xué)上有解析解的問(wèn)題
7、有如下函數(shù)定義;
voidfunc(inta,int&b)
(
a++;
b++;
)
若執(zhí)行代碼段:intx=0,y=l;
func(x,y);
則變量x和y的值分別是o
A、0和1
B、1和1
C、0和2
D、1和2
8、以下說(shuō)法中正確的是________o
A、C語(yǔ)言程序總是從第一個(gè)的函數(shù)開(kāi)始執(zhí)行
B、在C語(yǔ)言程序中,要調(diào)用的函數(shù)必須在mam()函數(shù)中定義
C、C語(yǔ)言程序總是從main。函數(shù)開(kāi)始執(zhí)行
D、C語(yǔ)言程序中的main()函數(shù)必須放在程序的開(kāi)始部分
9、請(qǐng)閱讀程序:
#include<math.h>
#include<stdio.h>
main()
(
floata,b,c;
scanf(/z%f%f,z,&a,&b);
c=a/b;
while(l){
if(fabs(c)>1.6){
a=b;
b=c;
c=a/b;
)
elsebreak;
)
printf("%f\n',b);
)
若運(yùn)行時(shí)從鍵盤(pán)上輸入3.62.4〈回車,,則輸出結(jié)果是o
A、1.500000
B、1.600000
C、2.000000
D、2.400000
10、對(duì)函數(shù)inimax(inLa,inib-O,inLc-O,iriL(1-0,inLe-O);下列調(diào)月方
式正確的是。
A、intm=max(10,11,12,13,14);
B、intm=max(10,,12,13,14);
C^intm=max(10,IL,13,14);
D、intm=max(10,11,12,,14);
七、指針(每小題1分,共10分)
1、函數(shù)的值通過(guò)return語(yǔ)句返回,下面關(guān)于return語(yǔ)句的形式描述錯(cuò)誤的是
A、return表達(dá)式;
B、return(表達(dá)式);
C、一個(gè)return語(yǔ)句可以返回多個(gè)函數(shù)值
D、一個(gè)return語(yǔ)句只能返回一個(gè)函數(shù)值
2^表達(dá)式sizeof(double)是。
A、函數(shù)調(diào)用
B、double型表達(dá)式
Csint型表達(dá)式
D、非法表達(dá)式
3、下列字符數(shù)組長(zhǎng)度為5的是o
A、chara[10]={'h','a','b','c','d'};
B、charb[]={'h',‘a(chǎn)口'b','e','d',
C>charc[]={,h*,'a','b','c','d'};
D、chard[6]={'h','a','b','c',''0'};
4、x,y,z被定義為int型變量,若從鍵盤(pán)給x,y,z輸入數(shù)據(jù),正確的輸入語(yǔ)句是
A、INPUTx、v、z;
B、scanf(〃%d%d%d〃,&x,&y,&z);
C^scanf(〃%d%d%d〃,x,y,z);
D、read(〃%d%d%d〃,&x,&y,&z);
5、當(dāng)全局變量與局部變量重名時(shí),那么在調(diào)用時(shí);)
A、局部變量會(huì)被屏蔽
B、全局變量會(huì)被屏蔽
C、都不會(huì)調(diào)用,系統(tǒng)會(huì)報(bào)錯(cuò)
D、會(huì)調(diào)用兩次,元調(diào)用局部變量,再調(diào)用全局變量
6、設(shè)有定義:chars[81];inti=0;以下不能將一行(不超過(guò)80個(gè)字符)帶有
空格的字符串正確讀入的語(yǔ)句或語(yǔ)句組是o
A、gets(s);
while((s[i++]=getchar())!='\n');s[i]=<\0,;
C、scanf(,s);
D、do{scanf(“%c",&s[i]);}while(s[i++]!=<\n,);s[i]='\0;
7、字符串指針變量中存入的是o
A、字符串
B、字符串的首地址
C、第一個(gè)字符
D、字符串變量
8、下列對(duì)字符數(shù)組進(jìn)行初始化的語(yǔ)句正確的是o
A、chara口="Hello”;
B、chara□□=
C^chara[5]="Hello”;
D、chara[2]"World"};p
9、若有說(shuō)明:int*p,n=5,n:以下正確的程序段是。
A、p=&n;scanf(〃機(jī)T,&p);
p=&n;scanf*p)
C、scanf(〃/d〃,&p;*p=6);
D、p;&n;*p=m;
10、下列說(shuō)法中錯(cuò)誤的是。
A、一個(gè)數(shù)組只允許存儲(chǔ)同種類型的變量
B、如果在對(duì)數(shù)組進(jìn)行初始化時(shí),給定的數(shù)據(jù)元素個(gè)數(shù)比數(shù)組元素個(gè)數(shù)少時(shí),
多余的數(shù)組元素會(huì)被自動(dòng)初始化為最后一個(gè)給定元素的值
C、數(shù)組的名稱其實(shí)是數(shù)組在內(nèi)存中的首地址
D、當(dāng)數(shù)組名作為參數(shù)被傳遞給某個(gè)函數(shù)時(shí),原數(shù)組中的元素的值可能被修
改
八、結(jié)構(gòu)體(每小題1分,共10分)
1、下面賦值表達(dá)式不正確的是.
structstudent
(
longnum;
charname[20];
}stl,*p=&stl,st2={101,"tom'}:
A、stl=st2
B、p->name=st2.name
C、p->num=st2.num
D、*p=st2
2、下列程序的輸出結(jié)果是o
structstu
(
charnum[10];
floatscore[3];
)
f
intmain()
(
structstus[3]=
{{"20021〃,90,95,85},「20022〃,95,80,75},{"20023",100,95,90}};
structstu*p=s;
inti;
floatsum=0;
for(i=0;i<3;:++)
(
sum=sum+p->score[i];
}
printf(〃%6.2f”,sum):
return0;
)
A、260.00
B、270.00
C、280.00
D、285.00
3、設(shè)有以下說(shuō)明語(yǔ)句structstu
inta;
floatb;
}
stutype;
則下面的敘述不正確的是。
A、struct是結(jié)構(gòu)體類型的關(guān)鍵字
B、structstu是用戶定義的結(jié)構(gòu)體類型
C、stutype是用戶定義的結(jié)構(gòu)體類型名
D、a和b都是結(jié)構(gòu)體成員名
4、有以下定義和語(yǔ)句:
structstudents{
intnum;
charname[20];
charc;
struct(
intgrade1;
intgrade2;
}s;
};
structstudentsw,*pw;
*pw=w;
下列賦值語(yǔ)句不正確的是o
A、num=1002:
B、w.gradel=85;
C^pw->num=1002;
Dsw.s.grade2=85;
5、設(shè)有下面的定義:
structst
(
inta;
floatb;
}d;
int*p;
要使P指向結(jié)構(gòu)變量d中的a成員,正確的賦值語(yǔ)句是
A、*p=d.a;
B、p=&a;
C、p=d.a;
D、p—&d.a;
6、以下關(guān)于邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的敘述中正確的是o
A、可以是任意合法的表達(dá)式
B、只能是整數(shù)0或非0整數(shù)
C、可以是結(jié)構(gòu)體類型的數(shù)據(jù)
D、只能是整數(shù)0或1
7、有以下程序
ttinclude<stdio.h>
main()
(
structstu
(
charname[9];
charsex;
doublescore[2];
)
t
structstua={"zhao〃,'m',85.0,90.0},b={〃qian〃,'f',95.0,92.0};
b=a;
printf(〃%s,%c,%2.Of,%2.0f\nz,,b.name,b.sex,b.score[0],b.score[1]);
}
程序的運(yùn)行結(jié)果是O
A、Qian,f,95,92
B、Qian,m,85,90
C、Zhao,f,95,92
D、Zhao,m,85,90
8、下列描述說(shuō)明正確的是________o
A、定義結(jié)構(gòu)體時(shí),它的每個(gè)成員的數(shù)據(jù)類型可以不同
B、不同結(jié)構(gòu)體的成員名不能相同
C、結(jié)構(gòu)體定義時(shí),其成員的數(shù)據(jù)類型不能是結(jié)構(gòu)體本身
D、結(jié)構(gòu)體定義時(shí)各成員項(xiàng)之間可用分號(hào)也可用逗號(hào)隔開(kāi)
9、設(shè)有以下說(shuō)明語(yǔ)句:
typedefstructstu
(
inta;
floatb;
}stutype;
則下面敘述中錯(cuò)誤的是________。
A、struct是結(jié)構(gòu)類型的關(guān)鍵字
B、structstu是用戶定義的結(jié)構(gòu)類型
C、a和b都是結(jié)構(gòu)成員名
D、stutype是用戶定義的結(jié)構(gòu)體變量名
10、以下程序的運(yùn)行結(jié)果是
#include,,stdio.h〃
main()
(
sLrucLdale{
intyear,month,day;
}today;
printfsizeof(structdate));
)
A、6
B、8
C、10
D、12
九、程序題(每小題1分,共10分)
1、有以下程序
#include<stdio.h>
voidfun(char*c,intd)
(
*c二*c+1;
d=d+l;
printf("%c,%c,n,*c,d);
}
main()
(
charb='a',a=Ja';
fun(&b,a);
printf("%c,%c\n",b,a);
)
程序運(yùn)行后的輸出結(jié)果是o
A^b,B,b,A
B、b,B,B,A
C^a,B,B,a
D、a,B,a,B
2、下列程序執(zhí)行后的輸出結(jié)果是o
main()
(
intx='f';printf'A'+(x-'a'+1);;
)
A、G
B、H
C、I
D、J
3、若有以下定義和語(yǔ)句,則輸出結(jié)果是。
int**pp,*p,a=10,b=20;pp=&p;p=&a;p;&b;printf(,,%d\n,/,*p,**pp);
A、10,20
B、10,10
C、20,10
D、20,20
4、若有定義:inta,b,c;以下程序段的輸出結(jié)果是a=l1;b=3;c=0;
printf(〃%d\n〃,c=(a/b,a%b));
A、2
B、0
C、3
D、1
5、下列程序的輸出結(jié)果是o
intaF51={2,4,6,8,10},*D,**k:
P=a;
k=&p;
printf*(p++));
printf(〃%d\n〃,**k);
A、44
B、22
C、24
D、46
6、以下程序輸出的結(jié)果是.
ttinclude<stdio.h>
voidmain()
(
inta[]={1,2,3,4,5),i,j,s=0;
for(i=0;i<5;i+-)s=s*10+a[i];
/,,,
printf(s=%d\n>s);
}
A、s=12345
s=l2345
C、s=54321
D、s=54321
7、下述程序的輸出結(jié)果是
#include<sLdio.h>
voidmain(){
chara=l,b=2;
charc=a"b<<2;
printf(〃\n%d〃,c);
)
A、9
B、10
C、12
D、2
8、以下程序的輸出結(jié)果為
#include<stdio.h>
intmain()
{
inti=l,j=l;
printf(,z%d%d\nz/,i,j++):
)
A、11
B、12
C、21
D、22
9、如下程序,輸出結(jié)果為
voidmain()
(
floata=l;
printfa;;
printf("%0.2f\n",a);
printf(,z%3.lf\n*,a);
)
A、l\nl.OO\nl.O
B、l.OOOOOO\nl.OO\nl.O
C、LOOOOOO\nLOO\n【空格】1.00
D、l\nl\nl
10、有如下程序
main()
(
inta=7,b=5,c=9:
if(a<b)if(b<0)c=0;
elsec++;
printf("%d\n”,c;;
)
該程序的輸出結(jié)果是o
A、0
B、10
C、9
D、7
參考答案
一、理論基礎(chǔ)
1、C
2、A
3、D
【解析】在VisualFoxPro中,常量用以表示一個(gè)具體的、不變的值。常量共
有6種類型,分別是:字符型、貨幣型、日期型、日期時(shí)間型、邏輯型、數(shù)值
型,不同類型的常量書(shū)寫(xiě)格式是不同的。
4、D
5、D
【解析】本題考查定點(diǎn)數(shù)加、減法溢出問(wèn)題。
定點(diǎn)數(shù)加、減時(shí),若采用雙符號(hào)位法,即采用兩個(gè)符號(hào)位,如果兩個(gè)符號(hào)位
相同,則沒(méi)有溢出;若不同,則表示出現(xiàn)溢出,而第一符號(hào)位才是真正的符
號(hào)。即兩個(gè)符號(hào)位的高位為1表示負(fù)溢出,而高位為0、低位為1則表示正溢
出。
題目中給出的結(jié)果的符號(hào)位為11,根據(jù)上面的分析\第一個(gè)符號(hào)位才是真正
的符號(hào),那么此數(shù)是負(fù)數(shù),但兩個(gè)符號(hào)位相同,表示沒(méi)有溢出。
6、C
7、A
8、D
9、D
10、B
11、C
12、B
13、B
【解析】無(wú)符號(hào)數(shù),即自然數(shù)。8位無(wú)符號(hào)的二進(jìn)制數(shù)的范圍是00000000?
11111111,轉(zhuǎn)換成十進(jìn)制就是0~255。
14、B
15、B
16、D
17、A
18、B
19、A
20、C
二、控制結(jié)構(gòu)
1、C
2、C
【解析】首先計(jì)算if語(yǔ)句后面的表達(dá)式值,先計(jì)算運(yùn)算符&&前面括號(hào)里的
“II”運(yùn)算。在“II”運(yùn)算中先計(jì)算j++,值為:(j的值為2),為真,后面的
k++將不再計(jì)算,k的值依舊為2。計(jì)算&&后面的表達(dá)式i++,值為l(i的值變
為2)。整個(gè)表達(dá)式的值為真,所以執(zhí)行后面的輸出語(yǔ)句,最后輸出的i、j和k
的值為2、2和2。
3、A
【解析】swish語(yǔ)句中表達(dá)式expression只能返回這兒種類型的值:int>
byte、short和ch”。如果比較的數(shù)據(jù)類型是double型,則不能使用switch
結(jié)構(gòu)。
4、C
【解析】此題主要考查if-else的使用,當(dāng)if語(yǔ)句中的條件為真時(shí)執(zhí)行后的
語(yǔ)句,并跳過(guò)else執(zhí)行下面的語(yǔ)句;當(dāng)條件為假時(shí)執(zhí)行else后的語(yǔ)句。
5、A
【解析】A雖然是賦值語(yǔ)句,但是在邏輯運(yùn)算中自動(dòng)將賦值語(yǔ)句的結(jié)果當(dāng)作邏
輯值,方法是,如果賦值語(yǔ)句的結(jié)果是非零值則當(dāng)作邏輯真,否則當(dāng)作邏輯
假。C語(yǔ)言中關(guān)系運(yùn)算符有〈(小于)、》(大于)、>=(大于等于)、<二(小于等
于)、二二(等于)、!二(不等于)等六種,可見(jiàn)其他的條件表達(dá)式中的關(guān)系符寫(xiě)錯(cuò)
了。
6、C
【解析】字符變量w的初值為字符'A',其ASCII碼值為65,字符'a'的ASCII
碼值為97,所以關(guān)系表達(dá)式wV'a'的值為1;變量x=14,變量y=15,x||y為
或,x、y均為真,所以x||y的結(jié)果1。因而邏輯表達(dá)式(x||y)&&(wV'a')的值
為lo
7、A
8、A
9、B
【解析】第二個(gè)if語(yǔ)句中的表達(dá)式"cT>=d”的值為邏輯值1,所以該條件
成立。
10、B
三、循環(huán)結(jié)構(gòu)
1、B
【解析】break語(yǔ)句和continue語(yǔ)句都是C的跳轉(zhuǎn)語(yǔ)句。break語(yǔ)句又稱為跳
出語(yǔ)句,它可以用在循環(huán)語(yǔ)句和switch語(yǔ)句中。在switch語(yǔ)句中,break用
來(lái)使執(zhí)行流程跳出switch語(yǔ)句。在循環(huán)語(yǔ)句中,break語(yǔ)句用來(lái)使執(zhí)行流無(wú)條
件跳出本層循環(huán)體。continue語(yǔ)句又稱為繼續(xù)語(yǔ)句,它僅用在循環(huán)語(yǔ)句中。
它的功能是:結(jié)束本次循環(huán),接著進(jìn)行下一次是否執(zhí)行循環(huán)的條件判定。
2、A
3、A
【解析】應(yīng)該選擇只有一個(gè)入口和一個(gè)出口的模夬,故B選項(xiàng)錯(cuò)誤;首先要保
證程序正確,然后才要求提高效率,故C選項(xiàng)錯(cuò)誤:嚴(yán)格控制使用got。語(yǔ)句,
必要時(shí)可以使用,故D選項(xiàng)錯(cuò)誤。
4、C
5、A
6、A
【解析】考查循環(huán)語(yǔ)句for的使用。
[解題要點(diǎn)]循環(huán)的一般格式為(初始化部分;終止條件判斷部分;迭代
部分){循環(huán)體;}說(shuō)明如下:for循環(huán)開(kāi)始時(shí),首先執(zhí)行初始化操作,然后判斷
終止條件是否滿足,如果滿足,則執(zhí)行循環(huán)體中的語(yǔ)句,最后執(zhí)行迭代部分。
完成一次循環(huán)后,重新判斷終止條件。
[錯(cuò)解分析]在for語(yǔ)句中,如果省略了終止條件判斷部分,開(kāi)且在語(yǔ)句中沒(méi)有
break,或者是終止條件判斷部分始終沒(méi)有終止,都將出現(xiàn)死循環(huán)。
[考點(diǎn)鏈接]for循環(huán)語(yǔ)句可由while循環(huán)語(yǔ)句來(lái)代替。
7、A
【解析】for循環(huán)通常用于循環(huán)次數(shù)確定的情況,但也可以根據(jù)循環(huán)結(jié)束條件
完成循環(huán)次數(shù)不確定的情況。
8、A
9、D
【解析】閱讀本程序匕知,當(dāng)產(chǎn)生隨機(jī)數(shù)為4時(shí),會(huì)繼續(xù)執(zhí)行循環(huán);當(dāng)產(chǎn)生隨
機(jī)數(shù)為1和2時(shí),會(huì)順勢(shì)執(zhí)行case1或case2下面的語(yǔ)句,進(jìn)而輸出結(jié)果;
當(dāng)產(chǎn)生隨機(jī)數(shù)為()時(shí),正常結(jié)束程序的運(yùn)行。for循環(huán)語(yǔ)句隨著產(chǎn)生的隨機(jī)數(shù)
的不同,執(zhí)行的次數(shù)也不相同。
10、C
【解析】dowhile語(yǔ)句的一般形式為:do循環(huán)體語(yǔ)句while(表達(dá)式);,其中
循環(huán)體語(yǔ)句可以是復(fù)合型語(yǔ)句,但必須用花括號(hào)括起來(lái)。while后必須要有分
號(hào)作為語(yǔ)句的結(jié)束,在do-while循環(huán)中,不可以省略while。
四、數(shù)組/指針數(shù)組
1、B
【解析】本題程序?yàn)槎匮h(huán),外循環(huán)控制輸出數(shù)據(jù)的行數(shù),內(nèi)循環(huán)控制輸出
數(shù)據(jù)的列數(shù)。從本題輸出的形式來(lái)看,程序要求輸出的是4行4歹4。
2、D
3、C
4、C
5、D
6、B
7、C
8、B
9、D
10>A
五、字符串/字符串指針
1、D
【解析】C語(yǔ)言常量包含整型常量,實(shí)型常量,字符常量,字符串常量。其中字符
常量是用單引號(hào)括起來(lái)的單個(gè)字符,選項(xiàng)B只有半邊單引號(hào);字符串常量使用雙
引號(hào)括起來(lái)的多個(gè)字符,選項(xiàng)只有雙引號(hào)的半邊。整型常量包含:十進(jìn)制,八進(jìn)制
和I六進(jìn)制。選項(xiàng)A中X和Y不是有效字符。本題答案為D選項(xiàng)。
2、D
3、D
【解析】本題考查指向字符串指針的運(yùn)算方法。執(zhí)行p=s+1后,指針變量p就
指向字符串中的第二個(gè)字符B,然后輸出字符串〃BCD〃并換行;繼續(xù)執(zhí)行循環(huán)語(yǔ)
句,指針變量P指向下一個(gè)字符c,輸出字符串〃CD〃,最后一次循環(huán),p指向字
符〃D〃,輸出字符串〃D"。
4、D
【解析】在C中,變量標(biāo)識(shí)符必須是以大小寫(xiě)字母、下畫(huà)線開(kāi)始,由數(shù)字或者
字母下畫(huà)線等組成的一個(gè)字符串,其中C++關(guān)鍵字不能作為標(biāo)識(shí)符,不能包含
-、+、*、/等運(yùn)算符號(hào)。C++變量區(qū)分大小寫(xiě),所以Retrun不是關(guān)鍵字,而是
一個(gè)合法變量;swith為關(guān)鍵字,所以不能定義為標(biāo)示符。
5、B
【解析】C語(yǔ)言的標(biāo)識(shí)符要符合以下規(guī)定:
①標(biāo)識(shí)符是個(gè)以字母或下劃線開(kāi)頭的,由字母、數(shù)字、下劃線組成的字符
串:
②標(biāo)識(shí)符不能與任意一個(gè)關(guān)鍵字同名:
③標(biāo)識(shí)符中的字母區(qū)分大小寫(xiě)。
故本題應(yīng)該選擇Bo
6、D
7、A
8、D
【解析】無(wú)參宏定義的一般格式用define標(biāo)識(shí)符語(yǔ)言符號(hào)字符串,其
中:“define”為宏定義命令;”標(biāo)識(shí)符為所定義的宏名,通常用大寫(xiě)字母表示,
以便于與變量區(qū)別;“語(yǔ)言符號(hào)字符串”可以是常數(shù)、表達(dá)式、格式串(格式串
是用雙引號(hào)括起來(lái)的字符串)等,選項(xiàng)ABC錯(cuò)誤,選項(xiàng)D正確;本題答案為
Do
9、A
10、B
六、函數(shù)/函數(shù)指針
1、C
【解析】選項(xiàng)A)中定義函數(shù)時(shí),形參的類型說(shuō)明應(yīng)該放在形參表列內(nèi)說(shuō)明。老
版本C語(yǔ)言中,對(duì)形參類型的聲明是放在函數(shù)定義的第2行,也就是不在第1
行的括號(hào)內(nèi)指定形參的類型,而在括號(hào)外單獨(dú)指定。選項(xiàng)B)中return后面的
值可以是一個(gè)表達(dá)式。選項(xiàng)D)中實(shí)參與形參的類型應(yīng)相同或賦值兼容。如昊實(shí)
參為整型而形參為實(shí)型,或者相反,則按不同類型數(shù)值的賦值規(guī)則進(jìn)行轉(zhuǎn)換,
以形參類型為準(zhǔn)。
2、A
3、B
【解析】結(jié)構(gòu)化程序有三種基本結(jié)構(gòu)組成,分別是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)
結(jié)構(gòu)。
4、B
【解析】在程序中,函數(shù)定義是指對(duì)函數(shù)的完整定義,包括函數(shù)首部和I函數(shù)
體,函數(shù)調(diào)用是指對(duì)所定義函數(shù)的使用,一個(gè)函數(shù)只有被調(diào)用才能得到執(zhí)行。
函數(shù)聲明是指函數(shù)的定義在后面I而前面需要對(duì)它進(jìn)行調(diào)用,這樣就需要預(yù)先
進(jìn)行聲明,以便編洋程序檢查調(diào)用的合法性。一般來(lái)說(shuō),函數(shù)的聲明只是函數(shù)
首部加上分號(hào)即可。函數(shù)聲明不是必需的,若函數(shù)調(diào)用在函數(shù)定義之后,則無(wú)
須聲明。
5、D
6、A
【解析】順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)是三種基本結(jié)構(gòu),由三種基本結(jié)構(gòu)所構(gòu)
成的程序稱為結(jié)構(gòu)化程序,由三種基本結(jié)構(gòu)組成的算法可以解決任何復(fù)雜的問(wèn)
題,選項(xiàng)A錯(cuò)誤,本題答案Ao
7、C
【解析】本題考查的知識(shí)點(diǎn)是:函數(shù)參數(shù)的傳遞方式。C的默認(rèn)參數(shù)傳遞方式
是傳值,即將實(shí)參值的副本傳遞(拷貝)給被調(diào)用函數(shù)的形參。如果需要傳地
址,可通過(guò)傳遞指針、引用或數(shù)組類型的參數(shù)來(lái)實(shí)現(xiàn)。傳值時(shí),對(duì)形參的改變
不會(huì)影響到實(shí)參;而傳地址,則會(huì)同時(shí)改變實(shí)參。本題中形參a是普通參數(shù),
即傳值調(diào)用,函數(shù)中走a增1不會(huì)影響到實(shí)參x的值;而形參b是引用,即傳
址調(diào)用,函數(shù)中對(duì)b增1同時(shí)也改變了實(shí)參y的值(y也增1了)。故最終結(jié)果
是0和2,應(yīng)該選擇C。
8、C
9、D
【解析】本題考查用break語(yǔ)句終止循環(huán)。程序中定義了兩個(gè)實(shí)型變量a、b,
并給scanf()函數(shù)賦值,鍵盤(pán)輸入3.62.4〈回車〉后,a=3.6,b=2.4,
c=a/b=3.6/2.4=1.5,因?yàn)閏=1.5VL6,退出循環(huán),輸出b的原值。表面上
看,whiled)條件恒為真,將會(huì)產(chǎn)生死循環(huán),但利用break語(yǔ)句可以終止循
環(huán)。
10、A
七、指針
1、C
【解析】return語(yǔ)句口的表達(dá)式的值就是所求的函數(shù)值,此表達(dá)式值的類型必
須與函數(shù)首部所說(shuō)明的類型一致。如果類型不一致,則以函數(shù)值的類型為準(zhǔn),
由系統(tǒng)自動(dòng)進(jìn)行轉(zhuǎn)換。一個(gè)return語(yǔ)句只能返回一個(gè)值。
2、C
3、C
【解析】注意是字符數(shù)組的長(zhǎng)度,不是字符串的長(zhǎng)度。
4、B
【解析】考查格式輸入函數(shù)scanf的使用。
[解題要點(diǎn)]scanf函數(shù)的一般格式是:
scanf(格式控制,地址表列)
該格式中,地址表列中應(yīng)是變量地址,而不是變量名。
[考點(diǎn)鏈接]調(diào)用putchar和getchar函輸出和輸入字符。
5、B
【解析】當(dāng)局部變量與全局變量重名時(shí),全局變量會(huì)被屏蔽。
6、C
7、B
8、A
【解析】本題考查對(duì)字符數(shù)組的初始化。A選項(xiàng)口,數(shù)組a在定義后緊跟初始
化的情況下可省略數(shù)組長(zhǎng)度,其最終數(shù)組長(zhǎng)度由所賦字符串常量的長(zhǎng)度給定。A
選項(xiàng)正確。B選項(xiàng)中,a是一個(gè)二維數(shù)組,二維數(shù)組也能在定義時(shí)被初始
化.如果對(duì)全部元素都賦初值,則定義數(shù)組時(shí)第一維的大小可以忽略,但第二
維的大小不能省略。故B選項(xiàng)錯(cuò)誤。C選項(xiàng)和D選項(xiàng)都忽略了字符串的大G要
比字符串中的字符數(shù)多1這一點(diǎn),造成了數(shù)組的越界。
9、D
【解析】“&”是求址運(yùn)算符,是指針變量說(shuō)明符。選項(xiàng)A),B)應(yīng)改為
scanf(〃%d〃,p);選項(xiàng)C)中指針變量p未指向一確定的內(nèi)存單元,不能為其
賦值,這樣做很危險(xiǎn),建議不使用。
10、B
八、結(jié)構(gòu)體
1、B
2、B
3、C
4、B
【解析】本題主要考查的是結(jié)構(gòu)體變量的嵌套定義,也就是說(shuō)一個(gè)結(jié)構(gòu)體變量
也可以是一個(gè)結(jié)構(gòu)體。在本題中student這個(gè)結(jié)陶體中包含了結(jié)構(gòu)體s。所以
對(duì)結(jié)構(gòu)體變量w中g(shù)rade1成員的引用是w.s.grade1或w->s->gradelo
5、D
【解析】本題主要考查按結(jié)構(gòu)數(shù)組元素方式引用結(jié)構(gòu)成員。結(jié)構(gòu)體變量的成員
引用方法有3種:①結(jié)構(gòu)體變量名,成員名;②韋針變量名成員名;③;*指
針變量名).成員名。因?yàn)閜是指針變量,所以應(yīng)該將地址值賦給p。
6、A
【解析】C語(yǔ)言的邏輯運(yùn)算符比較特別,它的操作數(shù)沒(méi)有明確的數(shù)據(jù)類型,可以
是任意合法的表達(dá)式,所以選擇A
7、D
8、A
9、C
10、A
【解析】在解答本題時(shí)應(yīng)該考慮兩個(gè)問(wèn)題:結(jié)構(gòu)體變量的長(zhǎng)度及sizcof。求字
節(jié)數(shù)的運(yùn)算符。結(jié)構(gòu)體變量的長(zhǎng)度是其內(nèi)部成員總長(zhǎng)度之和,本題中,struct
date中包含year,month,day三個(gè)整型變量。一個(gè)整型變量所占的字節(jié)數(shù)為
2o
九、程序題
1、A
2、A
3、D
4、A
5、C
6、A
7、A
【解析】本題主要考查C語(yǔ)言最基本的算術(shù)運(yùn)算“左移(VV)”和“異或
“左移”或“右移”運(yùn)算表達(dá)式的一般形式為:xVVn或x>>n。"左移
?<)"運(yùn)算的規(guī)則是將x的二進(jìn)制位全部向左移動(dòng)n位,將左邊移動(dòng)的高位
舍棄,右邊空出的位補(bǔ)0:“右移(>>)”運(yùn)算的規(guī)則是將x的二進(jìn)制位全部
向右移動(dòng)n位,將右邊移動(dòng)的高位舍棄,左邊高位空出要根據(jù)原來(lái)符號(hào)位的情
況進(jìn)行補(bǔ)充,對(duì)無(wú)符號(hào)數(shù)則補(bǔ)0,對(duì)有符號(hào)數(shù),若為正數(shù)則補(bǔ)0,若為負(fù)數(shù)則補(bǔ)
lo
“異或”運(yùn)算是當(dāng)兩個(gè)運(yùn)算量的相應(yīng)位相同時(shí)結(jié)果為0,不相同時(shí)結(jié)果為1。
b=2的二進(jìn)制為(00000010)bVV2后為00001000,a=l的二進(jìn)制為00000001,
所以c=£bVV2為00001001,轉(zhuǎn)化為十進(jìn)制后為9o
8、A
9、B
10、C
C語(yǔ)言選擇題(二)
(總分100分,考試時(shí)長(zhǎng)90分鐘)
一、理論基礎(chǔ)(每小題1分,共10分)
1、c語(yǔ)言中,int型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是_______o
A、ASCH碼
B、補(bǔ)碼
C、反碼
D、原碼
2、以下表達(dá)式中,其值不等于數(shù)值3的是。
A、0+'3'
B、
C、
D、‘d'-a'
3、以下敘述中不正確的是o
A、一個(gè)好的程序應(yīng)該有詳盡的注釋
B、在C程序中,賦值運(yùn)算符的優(yōu)先級(jí)最低
C、在C程序中,j++;是一條賦值語(yǔ)句
D、C程序中的#1萬(wàn)111(16和#define均不是C語(yǔ)句
4、已知inta,b;用語(yǔ)句scanf(飛d%d",&a,&b);輸入a,b的值時(shí),不能作
為輸入數(shù)據(jù)分隔符的是o
A、,
B、.空格
C、回車
D、Tab鍵
5、在計(jì)算機(jī)中,用()位二進(jìn)制碼組成一個(gè)字節(jié)。
A、8
B、16
C、32
D、64.
6、若變量a是int類型,并執(zhí)行了語(yǔ)句:a='a'+:.6;,則正確的敘述是
A、a的值是字符C
B、a的值是浮點(diǎn)型
C、不允許字符型和浮點(diǎn)型相加
D、a的值是字符飛'的ASCH值加上1。
7、關(guān)于指針概念說(shuō)法不正確的是o
A、一個(gè)指針變量只能指向同一類型變量
B、一個(gè)變量的地址稱為該變量的指針
C、只有同一類型變量的地址才能放到指向該類型變量的指針變量之中
D、指針變量可以曰整數(shù)賦,不能用浮點(diǎn)賦
8、下列關(guān)于實(shí)型變量書(shū)寫(xiě)正確的是o
A、E3
B、2e0.3
C、1.2e3
D、1.2E0.3
9、59,73,83,94,()
A、107
B、101
C、105
D、113
10、執(zhí)行下列語(yǔ)句后,1和n的值為()inti=10;intn=i++%5;
A、10,0
B、10,1
C、11,0
D、11,1
11、若有以下數(shù)組說(shuō)明,則i=10;a[a[i]]元素?cái)?shù)值是。
inta[12]={l,4,7,10,2,5,8,11,3,6,9,12};
A、10
B、9
C、6
D、5
12、C語(yǔ)言中,邏輯〃真〃等價(jià)于
A、大于零的數(shù)
B、非零的數(shù)
C、大于零的整數(shù)
D、非零的整數(shù)
13、inta=10;下列哪個(gè)選項(xiàng)的值不是20?
A、a<<1
B、a>>l
C、a*2
D、a+10
14、若要對(duì)a進(jìn)行++運(yùn)算,則a應(yīng)具有下面說(shuō)明
A、inta[3][2];
B、char*a[]“12〃,〃ab〃;
C^char(*a)[3];
D、intb[10],*a=b;
15、若有以下定義和語(yǔ)句uniondata
(
inti;
charc;
floatr;
}x;
inty;
則以下語(yǔ)句正確的是。
A^x=10.5;
B、x.C=101:
C、Y二x;
D、printf(〃%d\n",x);
16、若有代數(shù)式|x3+lgx|,則正確的c語(yǔ)言表達(dá)式是o
fabs(x*3+log10(x))
abs(pow(x,3)+loglO(x))
C^abs(pow(x,3)0)+logl0(x))
D
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年聲學(xué)懸浮物監(jiān)測(cè)儀合作協(xié)議書(shū)
- 2025年基礎(chǔ)機(jī)械:液壓件合作協(xié)議書(shū)
- 2025年沼氣集中供氣系統(tǒng)合作協(xié)議書(shū)
- 2025年產(chǎn)品特許經(jīng)營(yíng)合同常用版(4篇)
- 2025年二手房東房屋租賃合同標(biāo)準(zhǔn)版本(4篇)
- 2025年九年級(jí)音樂(lè)教師工作總結(jié)第二學(xué)期(二篇)
- 2025年買賣房產(chǎn)合同標(biāo)準(zhǔn)版本(2篇)
- 2025年個(gè)人房屋租賃合同協(xié)議參考樣本(三篇)
- 2025年臨時(shí)勞動(dòng)協(xié)議標(biāo)準(zhǔn)范文(2篇)
- 2025年企業(yè)勞動(dòng)員工勞動(dòng)合同模板(2篇)
- GB/T 45107-2024表土剝離及其再利用技術(shù)要求
- 安裝門(mén)窗施工方案
- 人教版九年級(jí)英語(yǔ)動(dòng)詞時(shí)態(tài)專項(xiàng)練習(xí)(含答案和解析)
- 蘭州市規(guī)范醫(yī)療服務(wù)價(jià)格項(xiàng)目基準(zhǔn)價(jià)格表
- 2006年度銀行業(yè)金融機(jī)構(gòu)信息科技風(fēng)險(xiǎn)評(píng)價(jià)審計(jì)要點(diǎn)
- 火災(zāi)隱患整改登記表
- 普通地質(zhì)學(xué)教材
- 2022年全國(guó)高考詩(shī)歌鑒賞試題-教學(xué)課件
- 天津華寧KTC101說(shuō)明書(shū)
- 2023-2024學(xué)年浙江省杭州市小學(xué)語(yǔ)文六年級(jí)上冊(cè)期末深度自測(cè)試題
- 縣道及以上公路保潔考核檢查評(píng)分表
評(píng)論
0/150
提交評(píng)論