2017年計(jì)算機(jī)C語(yǔ)言考試題及答案
驕傲來(lái)自淺薄,狂妄出于無(wú)知。 驕傲是失敗的開(kāi)頭,自滿(mǎn)是智慧的盡頭。以下是小編為大家搜索整理2017年計(jì)算機(jī)C語(yǔ)言考試題及答案,希望能給大家?guī)?lái)幫助!更多精彩內(nèi)容請(qǐng)及時(shí)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
一、選擇題((1)-(40)每小題1分,(41)-(50)每小題2分,共60分)
下列各題 A) 、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的,請(qǐng)將正確選項(xiàng)在答題卡相應(yīng)位置上涂黑,答在試卷上不得分。
(1) 應(yīng)用軟件是指
A.所有能夠使用的軟件
B.能被各應(yīng)用單位共同使用的某種軟件
C.所有微機(jī)上都應(yīng)使用的基本軟件
D.專(zhuān)門(mén)為某一應(yīng)用目的而編制的軟件
(2) 下列述敘中錯(cuò)誤的是
A.計(jì)算機(jī)要經(jīng)常使用不要長(zhǎng)期閑置不用
B.為了延長(zhǎng)計(jì)算機(jī)的壽命,應(yīng)避免頻繁開(kāi)關(guān)計(jì)算機(jī)
C.在計(jì)算機(jī)附近應(yīng)避免磁場(chǎng)干擾
D.計(jì)算機(jī)用幾小時(shí)后,應(yīng)關(guān)機(jī)一會(huì)兒再用
(3) 下列字符中,ASCII碼值最小的是
A.A
B.a
C.Z
D.x
(4) 用晶體管作為電子器件制成的計(jì)算機(jī)屬于
A.第一代
B.第二代
C.第三代
D.第四代
(5) 下列各不同進(jìn)制的四個(gè)無(wú)符號(hào)數(shù)中,最小的數(shù)是
A.(11011001)2
B.(37)8
C.(75)10
D.(2A)16
(6) 二進(jìn)制數(shù)1110111.11轉(zhuǎn)換成十六進(jìn)制數(shù)是
A.77.C
B.77.3
C.E7.C
D.E7.3
(7) 下列各無(wú)符號(hào)十進(jìn)制數(shù)中,能用八位二進(jìn)制表示的是
A.296
B.333
C.256
D.199
(8) 計(jì)算機(jī)的軟件系統(tǒng)可分類(lèi)為
A.程序與數(shù)據(jù)
B.系統(tǒng)軟件與應(yīng)用軟件
D.操作系統(tǒng)與語(yǔ)言處理程序
D.程序、數(shù)據(jù)與文檔
(9) 486機(jī)中的CPU同時(shí)能處理的二進(jìn)制位數(shù)為
A.8
B.16
C.32
D.64
(10) 在使用計(jì)算機(jī)的過(guò)程中,需要重新啟動(dòng)DOS,則要
A.按Ctrl+Break鍵
B.按^C鍵
C.按Ctrl+Alt+Del鍵
D.按^H鍵
(11) 現(xiàn)要從軟盤(pán)啟動(dòng)DOS(軟盤(pán)中已存有DOS系統(tǒng)),設(shè)有如下一些操作:①打開(kāi)計(jì)算機(jī)電源;②將該軟盤(pán)插入A驅(qū)動(dòng)器;③關(guān)好A驅(qū)動(dòng)器門(mén)。則冷啟動(dòng)的操作順序應(yīng)為
A.①→②→③
B.③→②→①
C.②→①→③
D.②→③→①
(12) 設(shè)當(dāng)前盤(pán)中某一文件路徑為\A\C\B\ABC.C,當(dāng)前目錄為\A。下列命令中錯(cuò)誤的是
A.CD..
B.RD \A\C\B
C.TYPE \A\C\B\ABC.C
D.TYPE C\B\ABC.C(13) 設(shè)當(dāng)前盤(pán)中的根目錄下有一子目錄AB,在子目錄AB下有一文件PQ.BAS,F(xiàn)要查看文件PQ.BAS的內(nèi)容,應(yīng)使用命令
A.TYPE \AB PQ.BAS
B.TYPE \AB\PQ.BAS
C.TYPE \PQ.BAS
D.DIR \AB\PQ.BAS
(14) 自動(dòng)批處理文件必須放在
A.C盤(pán)根目錄中
B.A盤(pán)根目錄中
C.啟動(dòng)盤(pán)的任一個(gè)目錄中
D.啟動(dòng)盤(pán)的根目錄中
(15) 設(shè)當(dāng)前盤(pán)當(dāng)前目錄為C:\USER\XY\P,且當(dāng)前盤(pán)當(dāng)前目錄為空,則下列命令中能正確執(zhí)行的是
A.RD C:\USER\XY\P
B.RD USER\XY\P
C.MD \USER\XY\P\USER
D.MD \USER\XY\P\X\Y
(16) 下列DOS命令中,合法的是
A.DISKCOMP A.C B.C
B.TYPE A.C >> B.C
C.COMP A: B:
D.COMP A: A:
(17) 設(shè)當(dāng)前盤(pán)為C盤(pán),所用的所有軟盤(pán)已格式化,且容量相同,則下列DOS命令中錯(cuò)誤的是
A.DISKCOPY A: A:
B.COPY A:*.*
C.COPY *.*
D.COPY A:*.* C:
(18) 下列DOS命令中錯(cuò)誤的是
A.TYPE A.TXT>PRN
B.TYPE A.TXT PRN
C.COPY *.TXT PRN
D.COPY CON PRN
(19) 下列四組DOS命令中,互相等價(jià)的一組是
A.COPY A:*.* B:與DISKCOPY A: B:
B.COPY ABC.TXT+XYZ.TXT與TYPE XYZ.TXT >> ABC.TXT
C.COPY ABC.TXT+XYZ.TXT XYZ.TXT與COPY XYZ.TXT+ABC.TXT
D.TYPE *.FOR>CON與COPY *.FOR CON
(20) 設(shè)C盤(pán)目錄結(jié)構(gòu)如下:
且C盤(pán)根目錄下文件AUTOEXEC.BAT的內(nèi)容為
CD FORTRAN
CD \TC
如果在A驅(qū)動(dòng)器中插入一張根目錄中只有擴(kuò)展名為.C的若干文件(即A盤(pán)中無(wú)DOS系統(tǒng)文件)的軟盤(pán)片,則由C盤(pán)啟動(dòng)DOS系統(tǒng)后,第一次鍵入下列命令中,正確的是
A.COPY A:\*.C
B.COPY A:\*.C TC
C.COPY A:\*.C FORTRAN
D.CD USER
(21) C語(yǔ)言提供的合法的數(shù)據(jù)類(lèi)型關(guān)鍵字是
A.Double
B.short
C.integer
D.Char
(22) 在C語(yǔ)言中,合法的長(zhǎng)整型常數(shù)是
A.0L
B.4962710
C.0.054838743
D.2.1869e10
(23) 表達(dá)式:10!=9的值是
A.true
B.非零值
C.0
D.1
(24) 合法的C語(yǔ)言中,合法的長(zhǎng)整型常數(shù)是
A.’\t’
B."A"
C.65
D.A (25) 若有說(shuō)明和語(yǔ)句:
int a=5;
a++;
此處表達(dá)式a++的值是
A.7
B.6
C.5
D.4
(26) 在下列選項(xiàng)中,不正確的賦值語(yǔ)句是
A.++t;
B.n1=(n2=(n3=0));
C.k=i==j;
D.a=b+c=1;
(27) 若有說(shuō)明:int i,j=7, *p=&i;,則與i=j;等價(jià)的語(yǔ)句是
A.I= *P;
B.*P=*&J;
C.i=&j;
D.i=* *p;
(28) 不能把字符串:Hello!賦給數(shù)組b的語(yǔ)句是
A.char b[10]={’H’,’e’,’l’,’l’,’o’,’!’};
B.char b[10];b="Hello!";
C.char b[10];strcpy(b,"Hello!");
D.char b[10]="Hello!";
(29) 若有以下說(shuō)明:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c=’a’,d,g;
則數(shù)值為4的表達(dá)式是
A.a[g-c]
B.a[4]
C.a[’d’-’c’]
D.a[’d’-c]
(30) 若有以下說(shuō)明:
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
則數(shù)值為6的表達(dá)式是
A.*p+6
B.*(p+6)
C.*p+=5
D.p+5
(31) 若有以下說(shuō)明:
int w[3][4]o={{0,1},{2,4},{5,8}};
int(*p)[4]=w;
則數(shù)值為4的表達(dá)式是
A.*w[1]+1
B.p++,*(p+1)
C.w[2][2]
D.p[1][1]
(32) 若程序中有下面的說(shuō)明和定義
struct abc
{int x;char y;}
struct abc s1,s2;
則會(huì)發(fā)生的情況是
A.編譯進(jìn)錯(cuò)
B.程序?qū)㈨樌幾g`連接`執(zhí)行
C.能順利通過(guò)編譯`連接`但不能執(zhí)行
D.能順利通過(guò)編譯`但連接出錯(cuò)
(33) 能正確表示a≥10或a≤0的關(guān)系表達(dá)式是
A.a>=10 or a<=0
B.a>=10│a<=0
C.a>=10││a<=0
D.a>=10 ││a<=0
(34) 下面程序的輸出是
main()
{ int x=3,y=6,a=0;
while(x++!=(y+=o1))
{ a+o=1;
if(y
#include
main()
{ char ss[10]="12345";
strcat(ss,"6789");
gets(ss);printf("%s\n",ss);
}
A.ABC
B.ABC9
C.123456ABC
D.ABC456789
(35) 下面程序的輸出是
main()
{ char *a="12134211";
int v1=0,v2=0,v3=0,v4=0,k;
for(k=0;s[k];k++)
switch(s[k])
{ default:v4++;
case ’1’: v1++;
case ’3’: v3++;
case ’2’: v2++; }
printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); }
A.v1=4,v2=2,v3=1,v4=1
B.v1=4,v2=9,v3=3,v4=1
C.v1=5,v2=8,v3=6,v4=1
D.v1=8,v2=8,v3=8,v4=8
(36) 下面程序的輸出是
main()
{int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}
A.k=11,k=12,k=11
B.k=11,k=13,k=13
C.k=11,k=013,k=0xb
D.k=11,k=13,k=b
(37) 若有以下程序段,w和k都是整型變量:
┆
w=k;
LB: if(w==0) go to LE;
w--;
printf("*");
goto LB;
LE: ┆
則不能與上面程序段等價(jià)的循環(huán)語(yǔ)句是
A.for(w=k;w!=0;w--) printf("*");
B.for(w=k;w;--w)printf("*");
C.w=k;
D.w=k;
while(w--!=0)printf("*");w++; do{ w--;printf("*");}while(w!=0);(38) 若有說(shuō)明,double *p,a;則能通過(guò)scanf語(yǔ)句正確給輸入項(xiàng)讀入數(shù)據(jù)的程序段是
A.*p=&a; scanf("%lf",p);
B.p=(double *)malloc(8);scanf("%f",p);
C.p=&a;scanf("%lf",a);
D.p=&a; scanf("%le",p);
(39) 當(dāng)執(zhí)行下面程序且輸入:ABC時(shí),輸出的結(jié)果是
#include
#include
main()
{ char ss[10]="12345";
gets(ss);printf("%s\n",ss); }
A.ABC
B.ABC9
C.123456ABC
D.ABC456789
(40) 若有以下的說(shuō)明和語(yǔ)句:
main()
{int t[3][2], *pt[3],k;
fpr(k=o; k<3;k++)pt[k]=t[k];
}
則以一選項(xiàng)中能正確表示t數(shù)組元素地址的表達(dá)式是
A.&t[3][2]
B.*pt[0]
C.*(pt+1)
D.&pt[2]
(41) 下面程序輸出數(shù)組中的最大值,由s指針指向該元素.
main()
{ int a[10]={6,7,2,9,1,10,5,8,4,3,},*p,*s;
flr(p=a, s=a; p-a<10; p++)
if(---?---)s=p;
printf("The max:%d",*s):
}
則在if語(yǔ)句中的判斷表達(dá)式應(yīng)該是
A.p>s
B.*p>*s
C.a[p]>a[s]
D.p-a>p-s
(42) 下面程序的輸出是
#include
main()
{ char*a="abcdefgh";
fun(a);puts(a); }
fun (char * s)
{ int x=0,y;char c;
for(y=strlen(s)-1;x
A.abcdefgh
B.hgfdecba
C.dcbahgfe
D.hgfedcba
(43) 若有以下函數(shù)調(diào)用語(yǔ)句: fun(a+b,(x,y),fun(n+k,d,(a,
B.));在此函數(shù)調(diào)用語(yǔ)句中實(shí)參的個(gè)數(shù)是
A.3
B.4
B.5
D.6
(44) 下面程序的輸出是
main()
{ int t=1; fun(fun(t));}
fun(int h)
{ static int a[3]={1,2,3};
int k;
for(k=0;k<3;k++) a[k]+=a[k]-h;
for(k=1;k<3;k++) printf("%d",a[k]);
printf("\n"); return(a[h]);}
A.1,2,3,
B.1,3,5,
C.1,3,5,
D.1,3,5,
1,5,9, 1,3,5, 0,4,8, -1,3,7,
(45) C語(yǔ)言中,函數(shù)的隱含存儲(chǔ)類(lèi)別是
A.auto
B.static
C.extern
D.無(wú)存儲(chǔ)類(lèi)別
(46) 下面程序的輸出是
int w=3;
main()
{ int w=10; printf("%d\n",fun(5)*w); }
fun(int k)
{ if(k==0) return w;
return(fun(k-1)*k); }
A.360
B.3600
C.1080
D.1200
(47) 要求函數(shù)的功能是交換x和y中的值,且通過(guò)正確調(diào)用返回交換結(jié)果。能正確招待此功能的函數(shù)是
A.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.fund(int x,int y)
{*x=*y;*y=*x;} {*x=*x+*y; *y=*x-*y; *x=*x-*y; }
(48) 要求函數(shù)的功能是在一維數(shù)組中查找值;若找到則返回所在的下標(biāo)值,否則返回0;數(shù)列放在到中。不能正確執(zhí)行的函數(shù)是
A.funa(int *a,int n,int x )
B.funb(int *a,int n,int x)
{ *a=x; {int k;
while(a[n]!=x)n--; for(k=1;k<=n;k++)
return n; if(a[k]==x)return k;
} return 0; }
C.func(int a[],int n,int x )
D.fund(int a[],int n,int x )
{ int *k; { int k=0;
a[0]=x;k=a+n; do
while(*k!=x) k--; k++;
return k-n; while((k } if(a[k]==x)return k; else return 0; }
(49) 若有下面的說(shuō)明和定義,則sizeof(struct aa) 的值是
struct aa
{ int r1;double r2; float r3;
union uu{char u1[5]; long u2[2]; } ua;
} mya;
A.30
B.29
C.24
D.22
(50) 用十進(jìn)制數(shù)表示表達(dá)式:12/012的運(yùn)算結(jié)果是
A.1
B.0
C.14
D.12二、填空題:(每空2分,共40分)
請(qǐng)將每空的正確答案寫(xiě)在答題卡【1】-【20】序號(hào)的橫線(xiàn)上,答在試卷上不得分。
(1) 與八進(jìn)制小數(shù)0.1等值的十六進(jìn)制小數(shù)為 【1】 。
(2) DOS命令分為內(nèi)部命令和外部命令,SYS命令屬于 【2】 。
(3) 要打印輸出當(dāng)前盤(pán)當(dāng)前目錄下的所有擴(kuò)展名為.DAT的文件內(nèi)容,應(yīng)使用的DOS命令為 【3】 。
(4) 設(shè)當(dāng)前系統(tǒng)提示符為"C:\USER>",執(zhí)行命令"PROMPT $p"后,系統(tǒng)提示符變?yōu)?【4】 。
(5) 要建立當(dāng)前盤(pán)當(dāng)前目錄下的全部文件與下一級(jí)子目錄的目錄信息文件MYDIR,應(yīng)使用的DOS命令為 【5】 。
(6) 若想通過(guò)以下輸入語(yǔ)句給a賦于1,給b賦于2,則輸入數(shù)據(jù)的形式應(yīng)該是 【6】 。
int a,b;
scanf("a=%b,b=%d,&a,&b);
(7) 函數(shù)mycmp (char*s,chat *t)的功能是比較字符串s和t的大小,當(dāng)s等于t 時(shí)返回0,否則返回s和t的第一個(gè)不同字符的ASCOII碼的差值,即當(dāng)s>t時(shí)返回正值, 當(dāng)s等于t 時(shí)返回0,否則返回s和t的第一個(gè)不同字符的ASCOII碼的差值,即當(dāng)s>t時(shí)返回正值, 當(dāng)s mycmp(char *s,char *t)
{ while(*s==*t)
{if(*s==’\0’) return 0;
++s; ++t;}
return (【7】); }
(8) 下面程序的輸出是【8】 。
#define MAX 5
int a[MAX],k;
main()
{ fun1();fun3(); fun2(); fun3();
printf("\n"); }
fun1()
{ for(k=0;k fun2()
{ int a[MAX],k;
for(k=0;k<5;k++) a[k]=k; }
fun3()
{ int k;
for(k=0;k (9) 若有以下定義和語(yǔ)句,則使指針p指向值為36的數(shù)組元素的表達(dá)式是【9】 。
int a[10]={19,23,44,17,37,28,49,36},*p;
p=a;
(10) 下面程序的輸出是 【10】 。
main()
{ enum em{ em1=3,em2=1,em3};
char *aa[]={"AA","BB","CC","DD"};
printf("%s%s%s\n",aa[em1],aa[em2],aa[em3]); } (11) 下面函數(shù)要求用來(lái)求出兩個(gè)整數(shù)之和,并通過(guò)形參傳回兩數(shù)相加之和值,請(qǐng)?zhí)羁铡?/p>
int add(int x,int y, 【11】 z)
{【12】 =x+y;}
(12) 有以下說(shuō)明定義和語(yǔ)句,可用a.day引用結(jié)構(gòu)體成員day, 請(qǐng)寫(xiě)出引用結(jié)構(gòu)體成員a.day的其它兩種形式 【13】 、【14】 。
struct{int day;char mouth;int year;}a,*b; b=&a;
(13) 下面fun函數(shù)的功能是將形參x的值轉(zhuǎn)換成二進(jìn)制數(shù),所得二進(jìn)制數(shù)的每一位數(shù)放在一維數(shù)組中返回,二進(jìn)制數(shù)的最低位放在下標(biāo)為0的元素中,其它依此類(lèi)推。請(qǐng)?zhí)羁铡?/p>
fun(int x,int b[])
{ int k=0,r;
do
{ r=x% 【15】;
b[k++]=r;
x/=【16】; } while(x); }
(14) 現(xiàn)有如圖所示的存儲(chǔ)結(jié)構(gòu),每個(gè)結(jié)點(diǎn)含兩個(gè)域,data是指向字符串的指針域,next是指向結(jié)點(diǎn)的指針域。請(qǐng)?zhí)羁胀瓿纱私Y(jié)構(gòu)的類(lèi)型定義和說(shuō)明。
struct link
{【17】 ; 【18】;} *head;
(15) 下面程序把從終端讀入的文本用@作為文本結(jié)束標(biāo)志)復(fù)制到一個(gè)名為bi.dat的新文件中,請(qǐng)?zhí)羁铡?/p>
#include
FILE *fp;
main()
{ char ch;
if((fp=fopen( 【19】))==NULL)exit(0);
while ((ch=getchar())!=’@’)fputc(ch,fp); 【20】
參考答案
一.選擇題((1)~(40)題每題1分,(41)~(50)題每題2分,共60分)
(1)D (2)D (3)A (4)B (5)B (6)A (7)D (8)B (9)C (10)C
(11)D (12)B (13)B (14)D (15)C (16)B (17)C (18)B (19)B (20)A
(21)B (22)A (23)D (24)A (25)C (26)D (27)B (28)B (29)D (30)C
(31)D (32)A (33)D (34)D (35)C (36)D (37)C (38)D (39)A (40)C
(41)B (42)D (43)A (44)D (45)C (46)B (47)D (48)C (49)D (50)C
二.填空題(每空2分,共40分) ((1)至(5)題中所有字母都允許大、小寫(xiě)或大小寫(xiě)混合)
(1) 1 0.2或(0.2)16
(2) 2 外部命令(答外部不扣分)
(3) 3 COPY *.DAT PRN
(4) 4 C:\USER
(5) 5 DIR >MYDIR
(6) 6 a=1,b=2
(7) 7 *s=*t
(8) 8 o246802468
(9) 9 p=p+7或p+=7
(10)10 DDBBCC
(11)11 int * 12 * z
(12)13 (*b).day 14 b->day
說(shuō)明:答案[13]和[14]可以互換
(13)15 2 16 2
(14)17 char *data 18 struct link *next
說(shuō)明:答案[17]和[18]可以互換
(15)19 "bi.dat","w" (說(shuō)明:"w"內(nèi)以w開(kāi)頭的字符串都可以) 20 fclose(fp)
【計(jì)算機(jī)C語(yǔ)言考試題及答案】相關(guān)文章:
2024年C語(yǔ)言考試題及答案05-04
2017計(jì)算機(jī)二級(jí)《C語(yǔ)言》考試題及答案05-17
計(jì)算機(jī)二級(jí)《C語(yǔ)言》備考試題及答案06-18
2017年計(jì)算機(jī)考試C語(yǔ)言考試題及答案02-17
2016計(jì)算機(jī)二級(jí)《C語(yǔ)言》無(wú)紙化考試題及答案01-12
2017全國(guó)計(jì)算機(jī)二級(jí)《C語(yǔ)言》考試題及答案01-28