上海電機(jī)學(xué)院計(jì)算機(jī)C語(yǔ)言專(zhuān)升本題庫(kù)及答案_第1頁(yè)
上海電機(jī)學(xué)院計(jì)算機(jī)C語(yǔ)言專(zhuān)升本題庫(kù)及答案_第2頁(yè)
上海電機(jī)學(xué)院計(jì)算機(jī)C語(yǔ)言專(zhuān)升本題庫(kù)及答案_第3頁(yè)
上海電機(jī)學(xué)院計(jì)算機(jī)C語(yǔ)言專(zhuān)升本題庫(kù)及答案_第4頁(yè)
上海電機(jī)學(xué)院計(jì)算機(jī)C語(yǔ)言專(zhuān)升本題庫(kù)及答案_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

計(jì)算機(jī)C語(yǔ)言專(zhuān)升本題庫(kù)(總分100分,考試時(shí)長(zhǎng)90分鐘)一、單項(xiàng)選擇題(每小題2分,共40分)1、下列字符中,ascii碼值最小的是________。 A、a B、A C、x D、Y2、若變量已正確說(shuō)明為float型,要通過(guò)語(yǔ)句scanf("%f%f%f",&a,&b,&c);給a賦予10,0,b賦予22.0,c賦予33.0,下列不正確的輸入形式是________。 A、10<回車(chē)>22<回車(chē)>33<回車(chē)> B、10.0,22.0,33.0<回車(chē)> C、10.0<回車(chē)>22.033.0<回車(chē)> D、1022<回車(chē)>33<回車(chē)>3、當(dāng)把以下四個(gè)表達(dá)式用作if語(yǔ)句的控制表達(dá)式時(shí),有一個(gè)選項(xiàng)與其它三個(gè)選項(xiàng)含義不同,這個(gè)選項(xiàng)是________。 A、k%2 B、k%2==1 C、(k%2)!=0 D、!k%2==14、執(zhí)行以下循環(huán)語(yǔ)句時(shí),下列說(shuō)法正確的是________。x=-1;

do

{

x=x*x;

}

while(x==0); A、循環(huán)體將執(zhí)行一次 B、循環(huán)體將執(zhí)行兩次 C、循環(huán)體將執(zhí)行無(wú)限次 D、系統(tǒng)將提示有語(yǔ)法錯(cuò)誤5、二維數(shù)組a的每個(gè)元素是由6個(gè)字符組成的串,其行下標(biāo)i=0,1,…,8,列下標(biāo)j=1,2,…,10。若a按行先存儲(chǔ),元素a[8,5]的起始地址與當(dāng)a按列先存儲(chǔ)時(shí)的元素()的起始地址相同。設(shè)每個(gè)字符占一個(gè)字節(jié)。 A、A[8,5] B、A[3,10] C、A[5,8] D、A[0,9]6、以下選項(xiàng)中,不能作為合法常量的是________。 A、1.234e04 B、1.234e0.4 C、1.234e+4 D、1.234e07、設(shè)有如下程序段chars[20]="bejing",*p;p=s;則執(zhí)行p=s;語(yǔ)句后,以下敘述正確的是________。 A、可以用*p表示s[0] B、s數(shù)組中元素的個(gè)數(shù)和p所指字符串長(zhǎng)度相等 C、s和p都是指針變量 D、數(shù)組s中的內(nèi)容和指針變量p中的內(nèi)容相等8、在c語(yǔ)言中,要求運(yùn)算數(shù)必須是整數(shù)的運(yùn)算符是________。 A、< B、% C、/ D、>9、以下關(guān)于字符串的敘述中正確的是________。 A、c語(yǔ)言中有字符串類(lèi)型的常量和變量 B、兩個(gè)字符串中的字符個(gè)數(shù)相同時(shí)才能進(jìn)行字符串大小的比較 C、可以用關(guān)系運(yùn)算符對(duì)字符串的大小進(jìn)行比較 D、空串一定比空格打頭的字符串小10、若有以下定義和語(yǔ)句:intw[2][3],(*pw)[3];pw=w;則對(duì)w數(shù)組元素非法引用是______。 A、*(w[0]+2) B、*(pw+1)[2] C、pw[0][0] D、*(pw[1]+2)11、在以下敘述中,不正確的選項(xiàng)是__________。 A、C語(yǔ)言程序總是從main()函數(shù)開(kāi)始執(zhí)行 B、在C語(yǔ)言程序中,被調(diào)用的函數(shù)必須在main()函數(shù)中定義 C、C程序是函數(shù)的集合,在這個(gè)函數(shù)集中包括標(biāo)準(zhǔn)函數(shù)和用戶(hù)自定義函數(shù) D、在C語(yǔ)言程序中,函數(shù)的定義不能嵌套,但函數(shù)的調(diào)用可以嵌套12、以下選項(xiàng)中合法的字符常量是______。 A、"B" B、'\010' C、68 D、D13、下面描述正確的是________。 A、兩個(gè)字符串包含的字符個(gè)數(shù)相同時(shí),才能比較字符串 B、字符個(gè)數(shù)多的字符串比字符個(gè)數(shù)少的字符串大 C、字符串"STOP"與"STOP■"相等 D、字符串"That"小于字符串"The"14、以下對(duì)枚舉類(lèi)型名的定義中正確的是______。 A、enuma={one,two,three}; B、enuma{one=9,two=-1,three}; C、enuma={"one","two","three"}; D、enuma{"one","two","three"};15、下面程序的輸出結(jié)果是________。

main()

{

intnum=0;

while(num<=2){

num++;

printf("%d\n",num);

}

} A、1

2

3

4 B、1

2

3 C、1

2 D、116、下列while循環(huán),將執(zhí)行

inti=4;

while(--i)printf("%d",i); A、3次 B、4次 C、0次 D、無(wú)限次17、若有以下說(shuō)明語(yǔ)句:

structstudent

{

intnum;

charname[];

floatscore;

}stu;

則下面的敘述不正確的是:() A、struct是結(jié)構(gòu)體類(lèi)型的關(guān)鍵字 B、structstudent是用戶(hù)定義的結(jié)構(gòu)體類(lèi)型 C、num,score都是結(jié)構(gòu)體成員名 D、stu是用戶(hù)定義的結(jié)構(gòu)體類(lèi)型名18、下列程序的輸出結(jié)果是______。intfun(intx,inty,int*cp,int*dp)

{

*cp=x+y;

*dp=x-y;

}

main()

{

inta,b,c,d;

a=30;

b=50;

fun(a,b,&c,&d);

printf("%d,%d\n",c,d);

} A、50,30 B、30,50 C、80,-20 D、80,2019、若二維數(shù)組a有m行n列,則下面能夠正確引用元素a[i][j]的為_(kāi)_____。 A、*(a+j*n+i) B、*(a+i*n+j) C、*(*(a+i)+j) D、*(*a+i)+j20、若有下列說(shuō)明和語(yǔ)句,則對(duì)結(jié)構(gòu)體變量st中成員i的引用方式不正確的是________。

structstu{

inti;

intname;

}st,*p;p=&st; A、st.i B、*p.i C、(*p).i D、p->i二、填空題(每小題2分,共20分)1、若i為整型變量,且i%2==0的值為1,則變量i為_(kāi)_______數(shù)?2、%d怎么實(shí)現(xiàn)(兩位數(shù))左右對(duì)齊3、&&0||2的值為_(kāi)_______?4、C語(yǔ)言源程序經(jīng)過(guò)編譯后,生成文件的后綴名是___。5、下列程序段是從鍵盤(pán)輸入的字符中統(tǒng)計(jì)數(shù)字字符的個(gè)數(shù),用換行符結(jié)束循環(huán)。intn=0,ch;

ch=getchar();

while(________)

{

if(________)n++;

c=getchar();

}6、寫(xiě)出下列程序的運(yùn)行結(jié)果。

#include"stdio.h"

main()

{

inta[]={1,2,3,-4,5};

intm,n,*p;

p=&a[0];

m=*(p+1);

n=*(p+4);

printf("%d%d%d",*p,m,n);

}7、在scanf函數(shù)中,用符號(hào)______表示變量的地址。8、若有"inta[3][2]={{1,2},{3},{4,5}};",則a[1][1]的值是________。9、下列程序段的運(yùn)行結(jié)果是_____。

chars1[20]="abcdef",s2[5]="abc";

strcpy(s1,s2);

printf("%c",s1[5]);10、下列程序段的運(yùn)行結(jié)果是________。

chars1[20]="abcdef",s2[5]="abc";

strcpy(s1,s2);

printf("%c",s1[2]);三、編程題(每小題分,共40分)1、編寫(xiě)程序:計(jì)算并輸出一維數(shù)組a[10]中的最大值。(本題10分)2、任意輸入兩行字符串,把第二行字符串連接到第一行字符串末尾(不用strcat函數(shù))。(本題14分)3、通過(guò)函數(shù)調(diào)?實(shí)現(xiàn):講結(jié)構(gòu)體數(shù)組中的三個(gè)元素按num成員進(jìn)?升序排列。要求:

①數(shù)組元素依次賦初值為:{12,"sunny",89.1}、{8,"henry",73.5}、{21,"lucy",91.7}。

②結(jié)構(gòu)體定義如下:structs{intnum;charname[30];floatscore;};(本題16分)

參考答案一、單項(xiàng)選擇題1、B【解析】a、A、x、Y對(duì)應(yīng)的ASCII碼值分別是0001110、0001100、1000111、1001101,故正確答案為B。2、B【解析】在C語(yǔ)言中,當(dāng)一次輸入多個(gè)數(shù)據(jù)的時(shí)候,數(shù)據(jù)之間要用間隔符,合法的間隔符可以是空格、制表符和回車(chē)符。逗號(hào)不是合法的間隔符。3、D4、A5、B【解析】二維數(shù)組A[0:8,1:10],設(shè)起始地址為0,數(shù)組元素A[i,j]按行存儲(chǔ)公式為:Loc(A[i,j])=L1+(i-1)×U2×d+(j-1)×d,數(shù)組元素A[i,j]按列存儲(chǔ)公式為:Loc(A[i,j])=L1+(j-1)×U2×d+(i-1)×d,可得i=3,j=10。6、B【解析】C語(yǔ)言的語(yǔ)法規(guī)定,字母e(E)之前必須有數(shù)字,且e(E)后面的指數(shù)必須是整數(shù),而選項(xiàng)B)中,e(E)后面的指數(shù)是小數(shù),所以不合法。7、A8、B9、D10、B11、B12、B13、D14、B15、C16、D17、D18、C19、C20、B【解析】本題主要考查結(jié)構(gòu)指針:p=&st,訪(fǎng)問(wèn)結(jié)構(gòu)體的成員,可以通過(guò)結(jié)構(gòu)變量訪(fǎng)問(wèn),即st.i,也可以用等價(jià)的指針形式即(*p).i和p->i。二、填空題1、偶2、%2d和%-2d|3、['1(或真)']4、.c5、['ch!=’\\n’ch>=0’0’','&&ch<=’9’']6、1257、&8、09、f10、c三、編程題1、#include<stdio.h>

main()

{

inta[10],i,max=0;

for(i=0;i<=9;i++)

{

scanf("%d",a[i]);

if(max<a[i])max=a[i];

}

printf("%d",max);

getch();

}2、#include<stdio.h>

#include<string.h>

intmain()

{

chars1[80],s2[80];

inti,l1,l2,j;

gets(s1);

gets(s2);

l1=strlen(s1);

l2=strlen(s2);

for(i=l1,j=0;j<l2;i++,j++){

s1[i]=s2[j];

}

puts(s1);

return0;

}3、寫(xiě)法1:在函數(shù)外部定義結(jié)構(gòu)體變量并且賦值,參數(shù)值為空。

charname[30];

floatscore;

}a[3]={{12,"sunny",89.1},{8,"henry",73.5},{21,"lucy",91.7}};

voidfun()

{

inti,j;

structst;

for(i=0;i<2;i++)

{

for(j=0;j<2-i;j++)

{

if(a[j].num>a[j+1].num)

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

}

}

intmain()

{

inti;

fun();

for(i=0;i<3;i++)

{

printf("%d,%s,%f\n",a[i].num,a[i].name,a[i].score);

}

return0;

}

8,henry,73.500000

12,sunny,89.099998

21,lucy,91.699997

寫(xiě)法2:在主函數(shù)中定義變量,通過(guò)參數(shù)傳遞變量值

charname[30];

floatscore;

};

voidfun(structs*a,intn)

{

inti,j;

structst;

for(i=0;i<n-1;i++)

{

for(j=0;j<n-1-i;j++)

{

if(a[j].num>a[j+1].num)

{

t=a[j];

a[j]=a[j+1];

a[j+1]=t;

}

}

}

}

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論