2022-2023年安徽省蕪湖市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第1頁(yè)
2022-2023年安徽省蕪湖市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第2頁(yè)
2022-2023年安徽省蕪湖市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第3頁(yè)
2022-2023年安徽省蕪湖市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第4頁(yè)
2022-2023年安徽省蕪湖市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩36頁(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)介

2022-2023年安徽省蕪湖市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.已知廣義表:A=(a,b),B=(A,A),C=(a,(b,A),B),tail(head(tail(C)))的運(yùn)算結(jié)果是()。

A.(a)B.AC.aD.(A)

2.

3.若有定義“doublea;floatb;shortc;”,若想把1.2賦給變量a,3.4賦給變量b,5678賦給變量c,程序運(yùn)行時(shí)鍵盤(pán)輸入:1.23.45678<回車(chē)>則以下正確的讀入語(yǔ)句是()。A.scanf("%If%If%d",&a,&b,&c);

B.scanf("%If%If%hd",&a,&b,&c);

C.scanf("%If%f%hd",&a,&b,&c);

D.scanf("%f%f%d",&a,&b,&c);

4.若有定義“charch;inta;doubled;”,當(dāng)輸入為12345678910.36時(shí),以下選項(xiàng)中能給各個(gè)變量正確賦值的是()。

A.scanf(“%d%c%lf”,&a,&ch,&d);

B.scanf(“%5d%2c%7.2lf”,&a,&ch,&d);

C.scanf(“%d%c%lf”,a,ch,d);

D.scanf(“5d%2c%7.2lf%”,&a,&ch,&d);

5.有以下程序:#include<stdio.h>main(){charc;for(;(c=getchar())!=‘#’;){if(c>=‘a(chǎn)’&&c<=‘z’)c=c-‘a(chǎn)’+‘A’;putchar(++c);}}執(zhí)行時(shí)輸入aBcDefG##并按<Enter>鍵,則輸出結(jié)果是()。

A.AbCdEFgB.ABCDEFGC.BCDEFGHD.bcdefgh

6.有以下程序voidf(intn,int*r){intr1=0;if(n%3==0)r1=n/3;elseif(n%5==0)r1=n/5;elsef(--n,&r1);*r=r1;}main(){intm=7,r;f(m,&r);printf("%d",r);}程序運(yùn)行后的輸出結(jié)果是A.2B.1C.3D.0

7.以下程序擬實(shí)現(xiàn)計(jì)算s=1+2*2+3*3+…+n*n+…,直到s>1000為止。#include<stdio.h>main(){ints,n;s=1;n=1;do{n=n+1;s=s+n*n;}while(s>1000);printf(“s=%d\n”,s);}程序運(yùn)行后,不能得到正確結(jié)果,以下修改方案正確的是()。

A.把“while(s>1000);”改為“while(s<=1000);”

B.把“s=1”改為“s=0”

C.把“n=1;”改為“n=0;”

D.把“n=n+1”改為“n=n*n”

8.若有定義:int*p[3];,則以下敘述中正確的是()。

A.定義了一個(gè)基類(lèi)型為int的指針變量p,該變量具有三個(gè)指針

B.定義了一個(gè)指針數(shù)組p,該數(shù)組含有三個(gè)元素,每個(gè)元素都是基類(lèi)型為int的指針

C.定義了一個(gè)名為*p的整型數(shù)組,該數(shù)組含有三個(gè)int類(lèi)型元素

D.定義了一個(gè)可指向一維數(shù)組的指針變量p,所指一維數(shù)組應(yīng)具有三個(gè)int類(lèi)型元素

9.帶有頭節(jié)點(diǎn)的單向鏈表head,其3個(gè)數(shù)據(jù)節(jié)點(diǎn)A、B、C的連接關(guān)系如下圖所示:節(jié)點(diǎn)類(lèi)型的定義為structlink{doubledt;structlink*next;};若指針P指向A節(jié)點(diǎn),在不改變P指向的前提下,以下選項(xiàng)中不能訪(fǎng)問(wèn)C節(jié)點(diǎn)數(shù)據(jù)成員dt的表達(dá)式是()。A.*(*p).next->next->dt

B.p->next->next->dt

C.(*(*(*p).next).next).dt

D.(*(p->next->next)).dt

10.非線(xiàn)性結(jié)構(gòu)是數(shù)據(jù)元素之間存在一種()。

A.一對(duì)多關(guān)系B.多對(duì)多關(guān)系C.多對(duì)一關(guān)系D.一對(duì)一關(guān)系

11.若有以下程序段intm=0xabc,n=0xubc;m-=n;printf("%X\n",m);執(zhí)行后輸出結(jié)果是

A.0X0B.0x0C.0D.0XABC

12.有如下程序:

main

{inta=2,b=-1.c=2;

if(a<b)if(b<0)c=0;

elsec++;

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

}

該程序的輸出結(jié)果是()。A.A.0B.1C.2D.3

13.針對(duì)二分查找算法,假設(shè)一個(gè)有序數(shù)組有136個(gè)元素,那么要查找到第10個(gè)元素,需要比較的元素為()

A.68,34,17,9,13,11,10

B.68,34,17,8,12,10

C.69,35,18,10

D.68,34,18,9,13,11,10

14.下列程序執(zhí)行輸出的結(jié)果是()。#include<stdio.h>f(inta){intb=0;staticc=3;a=c++;b++;return(a);}main(){inta=2,i,k;for(i=0;i<2;i++)k=f(a++);printf("%d\n",k);}

A.3B.4C.5D.6

15.以下不屬于C語(yǔ)言整數(shù)的是()。

A.12fB.25uC.-32D.+20L

16.有以下程序:#include<stdio.h>intf(intx);main(){intn=1,m;m=f(f(f(n)));printf(“%d\n”,m);}intf(intx){returnx*2;}程序的運(yùn)行結(jié)果是()。

A.8B.2C.4D.1

17.下面程序的輸出結(jié)果是______。main(){inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a+4;printf("%d\n",p[3]);}

A.6B.7C.3D.5

18.可以作為Windows外殼程序的是()

A.程序管理器B.文件管理C.程序管理器和文件管理器D.主群組

19.

20.數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)內(nèi)存中的表示是指()。A.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)B.數(shù)據(jù)結(jié)構(gòu)C.數(shù)據(jù)的邏輯結(jié)構(gòu)D.數(shù)據(jù)元素之間的關(guān)系

二、2.填空題(20題)21.排序是計(jì)算機(jī)程序設(shè)計(jì)中的一種重要操作,常見(jiàn)的排序方法有插入排序、______和選擇排序。

22.在結(jié)構(gòu)化設(shè)計(jì)方法中,數(shù)據(jù)流圖表達(dá)了問(wèn)題中的數(shù)據(jù)流與加工間的關(guān)系,并且每一個(gè)______實(shí)際上對(duì)應(yīng)一個(gè)處理模塊。

23.以下程序的輸出結(jié)果是【】。

voidfun()

{staticinta;

a+=2;

printf("%d",A);

}

main()

{intcc;

for(cc=1;cc<=4;cc++)fun();

printf("\n");

}

24.以下程序的輸出結(jié)果是【】。

#include<stdio.h>

#defineM5

#defineNM+M

main()

{intk;

k;N*N*5;printf("%d\n"k);

}

25.以下程序的功能是:從鍵盤(pán)輸入一字符串,要求將每個(gè)單詞中的第一個(gè)字母改成小寫(xiě)(如果原來(lái)已是小寫(xiě)字母,則不變),然后輸出轉(zhuǎn)換結(jié)果,補(bǔ)足所缺語(yǔ)句。

main()

{charstr[200];inti=0;

while((______=getchar())!='\n');

str[i-1)='\0';

for(i=0;str[i]!='\0';i++)

if((str[i-1]==''‖i==0)&&str[i]>='A'&&str[i]<='Z')

str[i]+=______;

printf("%s\n",str);

}

26.以下程序的功能是調(diào)用函數(shù)fun計(jì)算:m=1-2+3-4+…+9-10,并輸出結(jié)果。請(qǐng)?zhí)羁铡?/p>

intfun(intn)

{intm=0,f=1,i;

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

m+=i*f;

f=【】;

returnm;

}

main()

{printf("m=%d\n",【】);}

27.有以下定義和語(yǔ)句,則sizeof(a)的值是【】,而sizeof(a.share)的值是【】。

structdate

{intday;

intmouth;

intyear;

union{intshare1;

floatshare2;

}share;

}a;

28.在面向?qū)ο蠓椒ㄖ校?)是具有相似性質(zhì)的對(duì)象的集合。

29.以下程序的運(yùn)行結(jié)果是【】。

intk=0;

voidfun(intm)

{m+=k;k+=m;

printf("m=%dk=%d",m,k++)

}

main()

{inti=4;

fun(i++);

printf("i=%dk=%d\n",i,k);

}

30.下列程序段是從鍵盤(pán)輸入的字符中統(tǒng)計(jì)小寫(xiě)字母的個(gè)數(shù),用換行符結(jié)束循環(huán)。請(qǐng)?zhí)羁铡?/p>

intn=0,c;

c=getchar();

while(c!='\n')

{if(______)

n++;

}

31.以下程序運(yùn)行后的輸出結(jié)果是【】。

fun(ihtx)

{if(x/2>0)fun(x/2);

printf("%d",x);

}

main()

{fun(6);}

32.fun函數(shù)的功能是:首先對(duì)a所指的N行N列的矩陣,找出各行中的最大數(shù),再求這N個(gè)最大值中的最小的那個(gè)數(shù)作為函數(shù)值返回。請(qǐng)?zhí)羁誣_____。

#include<stdio.h>

#defineN100

intfun(int(*a)[N])

{

introw,col,max,min;

for(row=0;row<N;row++)

for(max=a[row][0],col=1;col<N;col++)

if()max=a[row][col];

if(row==0)min=max;

elseif()min=max;

returnmin;

}

33.函數(shù)調(diào)用語(yǔ)句:“fsets(buf,n,fp);”從fp指向的文件中讀入n個(gè)字符放到buf字符數(shù)組中,函數(shù)返回值為_(kāi)_____。

34.以下程序運(yùn)行后的輸出結(jié)果是______。

main()

{

inti,m=0,n=0,k=0;

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

switch(i/10)

{

case0:m++;n++;break;

case10:n++;;break;

default:k++;n++;

}

printf("%d%d%d\n",m,n,k);

}

35.最簡(jiǎn)單的交換排序方法是______。

36.關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)能實(shí)現(xiàn)的專(zhuān)門(mén)關(guān)系運(yùn)算包括選擇、連接和【】。

37.以下程序運(yùn)行后的輸出結(jié)果是【】。

#include<stdio.h>

msin()

{inti,n[]={0,0,0,0,0};

for(i=1;i<=4;i++)

{n[i]=n[i-1]*2+1;

printf("%d",n[i]);

}

}

38.以下程序運(yùn)行后的輸出結(jié)果是【】。

main()

{inti,j,a[][3]={1,2,3,4,5,6,7,8,9};

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

for(j=i+1;j<3;j++)a[j][i]=0;

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

{for(j=0;j<3;j++)printf("%d",a[i][j]);

printf("\n");

}

}

39.以下函數(shù)用來(lái)求出數(shù)組的最大元素在數(shù)組中的下標(biāo)并存放在k所指的存儲(chǔ)單元中。請(qǐng)?zhí)羁铡?/p>

#include<conio.h>

#include<stdio.h>

intfun(int*s,intt,int*k)

{inti;

*k=0;

[8]

if(s[*k]<s[i])*k=i;

return[9];}

main()

{inta[10]:{876,675,896,101,301,401,980,431,451,777},k;

fun(a,10,&k);

pfintf("%d,%d\n"

40.若有定義intm=5,y=2,則執(zhí)行表達(dá)式y(tǒng)+=y-=m*=y后,y的值為【】。

三、1.選擇題(20題)41.下述程序的輸出結(jié)果是()。#include<stdio.h>intfun(inta){intb=0;staticintc=3;b++,c++;returna+b+c;}voidmain(){intx=2,i;for(i=1;i<3;i++)printf("%d",fun(x));}

A.56B.67C.78D.89

42.下列描述中正確的是()。

A.程序就是軟件

B.軟件開(kāi)發(fā)不受計(jì)算機(jī)系統(tǒng)的限制

C.軟件既是邏輯實(shí)體,又是物理實(shí)體

D.軟件是程序、數(shù)據(jù)與相關(guān)文檔的集合

43.設(shè)有數(shù)組定義:chararray[]="China";則數(shù)組array所占的空間是()。

A.4個(gè)字節(jié)B.5個(gè)字節(jié)C.6個(gè)字節(jié)D.7個(gè)字節(jié)

44.若程序執(zhí)行時(shí)的輸入數(shù)據(jù)是"2473",則下述程序的輸出結(jié)果是#include<stdio.h>voidmain(){intcs;while((cs=getchar())!=,'\n'){switch(cs='2'){case0case1:putchar(cs+4);case2:putchar(cs+4);break;case3:putchar(cs+3);default:putchar(cs+2);}}}

A.668977B.668966C.6677877D.6688766

45.下列苯于C語(yǔ)言數(shù)據(jù)文件的敘述中正確的是()。

A.文件由ASCII碼字符序列組成,C語(yǔ)言只能讀寫(xiě)文本文件

B.文件由二進(jìn)制數(shù)據(jù)序列組成,C語(yǔ)言只能讀寫(xiě)二進(jìn)制文件

C.文件由記錄序列組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件

D.文件由數(shù)據(jù)流形式組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件

46.下列合法的聲明語(yǔ)句是()。

A.int_abc=50;

B.doubleint=3+5e2.5;

C.longdo=1L:

D.float3_asd=3e-3;

47.現(xiàn)有如下程序段

#include"stdio.h"

#include"string.h"

main()

{chara[]="acfijk";/*這里是有序的字符序列*/

charb[]="befijklqswz";/*這里是有序的字符序列*/

charc[80],*p;

inti=0,j=0,k=0;

while(a[i]!=′\0′&&b[j]!=′\0′)

{if(a[i]<b[j])c[k++]=a[i++];

elseif(a[i]>b[j])c[k++]=b[j++];

else{c[k++]=b[j++];

i++;}}

while(a[i]==′\0′&&b[j]!=′\0′)

c[k++]=b[j++];

while(a[i]!=′\0′&&b[j]==′\0′)

c[k++]=a[i++];

c[k]=′\0′;

puts(c);}

則輸出結(jié)果是

A.acfijkbefijklqswz

B.abceffiijjkklqswz

C.befijklqswzacfijk

D.abcefijklqswz

48.main(){floatx=123.456;printf("%-5.2f\n",x);}以上程序輸出的結(jié)果是______。

A.123.4B.123.5C.123.45D.123.46

49.以下選項(xiàng)中不屬于字符常量的是

A.′C′B.′′C′′C.′\xCC′D.′\072′

50.設(shè)變量x為float型且已經(jīng)賦值,則以下語(yǔ)句中能夠?qū)中的數(shù)值保留到小數(shù)點(diǎn)后面兩位,并將第三位四舍五入的是_______。

A.x=x*l00+0.5/100.0

B.x=(x*100+O.5)/100

C.x=(int)(x*100+0.5)/100.0

D.x=(x/100+0.5)*100.0

51.以下程序的輸出結(jié)果是_______。#include<stdio.h>main(){inti;for(i=1;i<5;i++){if(i%2)printf("*");elsecontinue;printf("#");}printf("$\n");}

A.*#*#*#$B.#*#*#*$C.*#*#$D.#*#*$

52.以下不能對(duì)二維數(shù)組a進(jìn)行正確初始化的語(yǔ)句是

A.inta[2][3]={0};

B.inta[][3]={{1,2},{0}};

C.inta[2)[3]={{1,2},{3,4},{5,6}};

D.inta[][3]={1,2,3,4,5,6};

53.下列不屬于軟件工程三要素的是

A.工具B.過(guò)程C.方法D.環(huán)境

54.有以下程序:main(){intm,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p);}若想從鍵盤(pán)上輸入數(shù)據(jù),使變量m中的值為123,n中的值為456,p中的值為789,則正確的輸入是______。

A.m=123n=456p=789

B.m=123n=456p=789

C.m=123,n=456,p=789

D.123456789

55.下列說(shuō)法中錯(cuò)誤的是A.A.只能在循環(huán)體內(nèi)使用break語(yǔ)句

B.在循環(huán)體內(nèi)使用break語(yǔ)句可以使流程跳出本層循環(huán)體,從而提前結(jié)束本層循環(huán)

C.在while和do…while循環(huán)中,continue語(yǔ)句并沒(méi)有使整個(gè)循環(huán)終止

D.continue的作用是結(jié)束本次循環(huán),即跳過(guò)本次循環(huán)體中余下尚未執(zhí)行的語(yǔ)句,接著再一次進(jìn)行循環(huán)判斷

56.程序流程圖(PFD)中的箭頭代表的是

A.數(shù)據(jù)流B.控制流C.調(diào)用關(guān)系D.組成關(guān)系

57.下列可用于C語(yǔ)言標(biāo)識(shí)符的一組是_______。

A.voidWORDdefine

B.a6$sysFor

C.2asizeofabc

D.Intdefinesizeof

58.下列敘述中正確的是()。

A.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象之間具有密切的聯(lián)系

B.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象都是公用的

C.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象之間相對(duì)獨(dú)立,相互依賴(lài)性小

D.上述三種說(shuō)法都不對(duì)

59.數(shù)字字符0的ASCII值為48,運(yùn)行下列程序的輸出結(jié)果是()。main(){chara='1',b='2';printf("%c,",b++);printf("%d\n",b-A);}

A.3,2B.50,2C.2,2D.2,50

60.下列表達(dá)式中,可以正確表示的關(guān)系是()。

A.(x>=1)10(x<=0)B.x>1‖x=0C.x>=1ORx<=0D.X>=1&&x<=0

四、選擇題(20題)61.以下關(guān)于簡(jiǎn)單程序設(shè)計(jì)的步驟和順序的說(shuō)法中正確的是()。

A.確定算法后,整理并寫(xiě)出文檔,最后進(jìn)行編碼和上機(jī)調(diào)試

B.首先確定數(shù)據(jù)結(jié)構(gòu),然后確定算法,再編碼,并上機(jī)調(diào)試,最后整理文檔

C.先編碼和上機(jī)調(diào)試,在編碼過(guò)程中確定算法和數(shù)據(jù)結(jié)構(gòu),最后整理文檔

D.先寫(xiě)好文檔,再根據(jù)文檔進(jìn)行編碼和上機(jī)調(diào)試,最后確定算法和數(shù)據(jù)結(jié)構(gòu)

62.若有以下語(yǔ)句

63.有如下程序段

#include"stdio.h"

typedefstructaa

{inta;

structaa*next;

}M;

voidset(M*k,inti,int*b)

{intj,d=0;

for(j=1;j<i;j++)

{k[j-1].next=&k[j];

k[j-1].a=b[d++];

}

k[j].a=b[d];

}

main()

{Mk[5],*p;

intd[5]={23,34,45,56,67};

set(k,5,d);

p=k+1;

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

}

要輸出45,則在下畫(huà)線(xiàn)處應(yīng)填入的選項(xiàng)是

A.p->next->aB.++p->a

C.(*p).a(chǎn)++D.p++->a

64.

65.

有以下程序

#include<stdio.h>

structtt

(intx;structtt*y;)*P;

structtta[4]={20,a+1,15,a+2,30,a+3,17,a};

main

{inti;

p=a;

for(i=l;i<=2;i++){printf("%d,",p->x);P=p->y;}

}

程序的運(yùn)行結(jié)果是()。

A.20,30,B.30,17,C.15,30,D.20,15,

66.若有定義語(yǔ)句:inta[4][10],*P,*q[4];且0<=i<4,則錯(cuò)誤的賦值是()。

A.P=aB.q[i]=a[i]C.p=a[i]D.p=&a[2][1]

67.設(shè)有以下函數(shù):

68.

69.棧和隊(duì)列的共同特點(diǎn)是()。

A.都是先進(jìn)先出B.都是先進(jìn)后出C.只允許在端點(diǎn)處插入和刪除元素D.沒(méi)有共同點(diǎn)

70.有以下程序程序的運(yùn)行結(jié)果是()。

A.4332B.2344C.1234D.1123

71.

72.

73.有以下程序:main{union{charch[2];intd;}s;d=0x4321;printf("%x,%x\n",S.ch[0],S.ch[l]);}在16位編譯系統(tǒng)上,程序執(zhí)行后的輸出結(jié)果是()A.21,43B.43,21C.43,00D.21,00

74.

75.設(shè)有以下說(shuō)明語(yǔ)句:

則下面敘述中正確的是()。

A.PER是結(jié)構(gòu)體變量名

B.PER是結(jié)構(gòu)體類(lèi)型名

C.typedefstruct是結(jié)構(gòu)體類(lèi)型

D.struct是結(jié)構(gòu)體類(lèi)型名

76.

77.

78.

79.下列排序方法中,最壞情況下比較次數(shù)最少的是()。

A.冒泡排序B.簡(jiǎn)單選擇排序C.直接插入排序D.堆排序

80.

五、程序改錯(cuò)題(1題)81.下列給定程序中,proc()函數(shù)的功能是:根據(jù)形參n。計(jì)算下列公式的值:t=1-1/2+1/3-1/4+…+(-1)(n+1)/n例如,若輸入6,則應(yīng)輸出0.616667。請(qǐng)修改程序中的錯(cuò)誤,使它能得到正確結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:

六、程序設(shè)計(jì)題(1題)82.請(qǐng)編寫(xiě)函數(shù)proc(),它的功能是:求出1~1000中能被5或13整除,但不能同時(shí)被5和13整除的所有整數(shù),并將它們放在arr所指的數(shù)組中,通過(guò)n返回這些數(shù)。注意:部分源程序給H{如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫(xiě)的若干語(yǔ)句。試題程序:

參考答案

1.D

2.A

3.Cscanf函數(shù)用于輸入數(shù)據(jù)。第1個(gè)參數(shù)表示輸入格式控制。本題變量a是double類(lèi)型,使用格式控制符%If;變量b是float類(lèi)型,使用%If;變量c是short類(lèi)型,使用%hd,選項(xiàng)C正確。本題答案為C選項(xiàng)。

4.Ascanf是格式輸入函數(shù),其中雙引號(hào)之間的內(nèi)容是格式控制字符串,后面是輸入?yún)?shù)列表。輸入?yún)?shù)列表中各項(xiàng)都必須是變量地址,所以選項(xiàng)C錯(cuò)誤;在scanf函數(shù)的格式字符前,可以加入一個(gè)正整數(shù)指定輸入數(shù)據(jù)所占的寬度,但不可以對(duì)實(shí)數(shù)指定小數(shù)位的寬度,所以選項(xiàng)B、D錯(cuò)誤。選項(xiàng)A是正確的,按照A的輸入格式,12345賦值給變量a,空格賦值給變量ch,678910.36賦值給變量d。故本題答案為A選項(xiàng)。

5.C題干中,循環(huán)的作用是將輸入的字符串轉(zhuǎn)化為大寫(xiě),getchar函數(shù)讀入一個(gè)字符,putchar函數(shù)輸出一個(gè)字符,當(dāng)遇到‘#’字符結(jié)束。“putcha(++C);”,表示將字符變量c加1后輸出。當(dāng)輸入“aBcDefG##”時(shí),得到的結(jié)果是BCDEFGH。故本題答案為C選項(xiàng)。

6.A解析:本題考查了函數(shù)的遞歸調(diào)用。在f函數(shù)中,當(dāng)m=7時(shí),程序執(zhí)行“f(--n,&r1);”語(yǔ)句,遞歸調(diào)用f(6,&r1),程序執(zhí)行“r1=n/3;”語(yǔ)句,即r1=\u30006/3=2,然后執(zhí)行“*r=r1;”語(yǔ)句,所以輸出結(jié)果為2。

7.A題目中程序不能實(shí)現(xiàn)預(yù)期功能是因?yàn)閣hile的循環(huán)條件錯(cuò)誤。選項(xiàng)B中把“s=1;”改為s=0;”,最終的結(jié)果“s=4”,與題目原意不同。選項(xiàng)C中把“n=1;”,改為“n=0;”最終的結(jié)果“s=2”,與題目原意不同。選項(xiàng)D中把“n=n+1;”改為“n=n*n;”,最終的結(jié)果“s=2”,與題目原意不同。選項(xiàng)A正確地修改了while循環(huán)條件,可以得到正確結(jié)果。故本題答案為A選項(xiàng)。

8.B解析:當(dāng)一個(gè)數(shù)組中的元素均為指針類(lèi)型數(shù)據(jù)時(shí),該數(shù)組就稱(chēng)為指針數(shù)組。int*p[3]表示此數(shù)組是指針類(lèi)型的,每個(gè)數(shù)組元素(指針變量)都是指向一個(gè)整型的指針變量。

9.Alink結(jié)構(gòu)體中的next是鏈表中下一個(gè)節(jié)點(diǎn)的地址。由于p當(dāng)前指向節(jié)點(diǎn)A,因此p->next是B的地址。p->next->next是C的地址,訪(fǎng)問(wèn)C的節(jié)點(diǎn)數(shù)據(jù)成員dt可以使用C的地址訪(fǎng)問(wèn),即p->next->next->dt,選項(xiàng)B正確?;蛘呤褂媒庖谩?”運(yùn)算符:(*p)表示節(jié)點(diǎn)A,(*p).next表示B的地址,*((*p).next)表示節(jié)點(diǎn)B,(*((*p).next)).next表示C的地址,*((*((*p).next)).next)表示節(jié)點(diǎn)C,所以C的數(shù)據(jù)成員dt可以表示為(*((*(*p).next).next)).dt,因?yàn)椤?”運(yùn)算符優(yōu)先級(jí)高于“*”運(yùn)算符,所以也可以寫(xiě)為(*(*(*p).next).next).dt,選項(xiàng)C正確。同理,也可以既使用指針運(yùn)算符,又使用解引用運(yùn)算符來(lái)訪(fǎng)問(wèn)C的節(jié)點(diǎn)數(shù)據(jù)成員dt,即(*(p->next->next)).dt,選項(xiàng)D正確。選項(xiàng)A中,*p表示A節(jié)點(diǎn),(*p).next表示節(jié)點(diǎn)B的地址,由于“->”運(yùn)算符的優(yōu)先級(jí)高于“*”運(yùn)算符,因此先執(zhí)行“->”,即表達(dá)式(*p).next->next->dt引用了C節(jié)點(diǎn)的數(shù)據(jù)成員dt,然后再執(zhí)行解引用運(yùn)算“*”,這是錯(cuò)誤的。故本題答案為A選項(xiàng)。

10.B

11.C解析:C語(yǔ)言中的自反賦值運(yùn)算符。“m-=n”相當(dāng)于“m=m-n”,兩個(gè)相等的數(shù)相減,其值為0。

12.Celse與離它最近的if構(gòu)成if…else語(yǔ)句,而當(dāng)a為2時(shí),第一個(gè)if語(yǔ)句不成立,因此什么也不做,即c的值仍然為2,故選擇C選項(xiàng)。

13.B

14.B解析:本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。在函數(shù)調(diào)用時(shí),static變量在函數(shù)調(diào)用結(jié)束后所做的所有變化均保持(即上次調(diào)用結(jié)束時(shí)的值)。

在主函數(shù)中,第一次循環(huán),i=0,調(diào)用k-f(a++)=f(2),調(diào)用完之后才將a加1,a變?yōu)?,在f(2)中,先將c=3賦值給a返回,然后將c加1,得到k=a=3,c=4。

第二次循環(huán),i=1,調(diào)用k=f(a++)=f(3),調(diào)用完之后才將a加1,a變?yōu)?,在f(3)中,先將c=4賦值給a返回,然后將c加1,得到k=a=4,c=5。

15.AC語(yǔ)言中整型常量,從表示形式來(lái)看,有十進(jìn)制、八進(jìn)制或十六進(jìn)制;從符號(hào)位來(lái)看,有有符號(hào)整數(shù)和無(wú)符號(hào)整數(shù)兩類(lèi)。選項(xiàng)A的“12f”是float類(lèi)型的實(shí)數(shù),不是整數(shù);選項(xiàng)B的“25u”屬于無(wú)符號(hào)整數(shù);選項(xiàng)C的“-32”是十進(jìn)制形式的有符號(hào)整數(shù);選項(xiàng)D的“+20L”是十進(jìn)制形式的長(zhǎng)整數(shù)。故本題答案為A選項(xiàng)。

16.A第1次調(diào)用為m=f(f(f(1))),第2次調(diào)用為m=f(f(2)),第3次調(diào)用為m=f(4),即返回值為8。故本題答案為A選項(xiàng)。

17.B解析:指針變量p指向數(shù)組a的第5個(gè)元素,p[3]在原指向基礎(chǔ)上移3個(gè)單位,指針變量p將指向第8個(gè)元素(下標(biāo)為7的元素),值為7。

18.C

19.B本題考查標(biāo)準(zhǔn)輸入輸出函數(shù)和循環(huán)語(yǔ)句。gets(s)函數(shù)的作用是將輸入的字符讀入字符串s,直到遇到回車(chē)。而scanf函數(shù)接收字符串時(shí)的結(jié)束標(biāo)志為回車(chē)或者空格。因此選項(xiàng)B)不能,選項(xiàng)C)和選項(xiàng)D)中按字符逐個(gè)讀入字符串s中,直到讀入的字符是換行符為止,因此B正確。

20.A數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)內(nèi)存中的表示指的是數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)。數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示。數(shù)據(jù)元素之間的關(guān)系有兩種不同的表示方法:順序映象和非順序映象,并由此得到兩種不同的存儲(chǔ)結(jié)構(gòu):順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。

21.交換排序交換排序解析:所謂排序是指將一個(gè)無(wú)序序列整理成按值非遞減順序排列成的有序序列,常用的排序方法有:交換排序、插入排序和選擇排序。其中交換排序包括冒泡排序和快速排序,插入排序包括簡(jiǎn)單插入排序和希爾排序,選擇排序包括直接選擇排序和堆排序。

22.加工加工解析:數(shù)據(jù)流圖是從數(shù)據(jù)傳遞和加工的角度,來(lái)刻畫(huà)數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過(guò)程。其中的每一個(gè)加工對(duì)應(yīng)一個(gè)處理模塊。

23.2468

24.5555解析:宏替換不是函數(shù)調(diào)用,所以不能因?yàn)镸被定義為5,而N被定義為M+M而武斷地認(rèn)為N的值就是5+5=10。宏替換就是簡(jiǎn)單的字符串替換,以本題為例:因?yàn)镹被定義為M+M,所以k=N*N*5;語(yǔ)句展開(kāi)后為k=M+M*M+M*5;。又因?yàn)镸被定義為5,所以再展開(kāi)后為k=5+5*5+5*5;?,F(xiàn)在不難計(jì)算出,這個(gè)表達(dá)式的結(jié)果為k=55。故最終輸出結(jié)果是55。

25.str[i++]32。str[i++]32。解析:while語(yǔ)句的循環(huán)控制條件既要將相應(yīng)元素賦予從鍵盤(pán)輸入的字符,又要改變?cè)氐南聵?biāo)值,以便接受下一個(gè)字符,可用下標(biāo)變量的后置加實(shí)現(xiàn);小寫(xiě)字母的ASCII碼值比相對(duì)應(yīng)的大寫(xiě)形式大32。

26.-f或f*-1或-1*f或f*(-1)或(-1)*ffun(10)-f或f*-1或-1*f或f*(-1)或(-1)*f\r\nfun(10)解析:調(diào)用fun()函數(shù)計(jì)算m的值,在主函數(shù)中的空格處應(yīng)該填調(diào)用fun()函數(shù)的語(yǔ)句。fun()函數(shù)有一個(gè)形參n,為每次參加計(jì)算的值的個(gè)數(shù),故在主函數(shù)中的空格處應(yīng)該填fun(10),回到fun()函數(shù),函數(shù)用到了一個(gè)for循環(huán),共循環(huán)n次,當(dāng)循環(huán)第i次的時(shí)候,m的值等于m=1-2+……+[(-1)的i-1次方]*i,所以在fun()函數(shù)的空格處應(yīng)該填使f改變符號(hào)的語(yǔ)句,故應(yīng)填-f或f*-1或-1*f或f*(-1)或(-1)*f。

27.10410\r\n4解析:結(jié)構(gòu)體變量所占內(nèi)存長(zhǎng)度是各成員占的內(nèi)存長(zhǎng)度之和。每個(gè)成員分別占有其自己的內(nèi)存單元。int占2個(gè)字節(jié),float占4個(gè)字節(jié),共用體變量所占的內(nèi)存長(zhǎng)度等于最長(zhǎng)的成員的長(zhǎng)度。所以,sizeof(a.share)的值是4,sizeof(a)的值是2+2+2+4=10。

28.類(lèi)類(lèi)解析:將屬性、操作相似的對(duì)象歸為類(lèi),也就是說(shuō),類(lèi)是具有共同屬性、共同操作性質(zhì)的對(duì)象的集合,是已經(jīng)定義了的關(guān)于對(duì)象的特征、外觀(guān)和行為的模板。所以類(lèi)是對(duì)象的抽象,它描述了屬于該對(duì)象類(lèi)型的所有對(duì)象的性質(zhì),而一個(gè)對(duì)象則是其劃應(yīng)類(lèi)的一個(gè)實(shí)例。

29.m=4k=4i=5k=5m=4k=4i=5k=5解析:main()函數(shù)首先定義了1個(gè)變量i,并初始化為4。然后用表達(dá)式i++的值為實(shí)參調(diào)用函數(shù)fun(),因?yàn)楹缶Y”表達(dá)式的值為增1之前的值,故此時(shí)傳遞給函數(shù)的參數(shù)m值為4。fun()函數(shù)中,首先讓形參m自增k,由于此時(shí)k還是0,所以m不變,然后讓k自增m,執(zhí)行后k的值和m相同為4。最后fun()函數(shù)輸出m和k廿的值,兩個(gè)值都是4,故首先輸出了“m=4k=4”,輸出完后,k自增1(k變?yōu)?)。fun()函數(shù)執(zhí)行完畢,返回main()函數(shù)中,此時(shí)i會(huì)被自增1變?yōu)?,故接著又輸出的i和k的值都是5。故最終輸出結(jié)果是“m=4k=4i=5k=5”。

30.c>='a'&&c<='z'c>='a'&&c<='z'解析:小寫(xiě)字母在內(nèi)存中以ASCII的形式存入,且從a到z依次遞增,所以可以直接用c>='a'&&c<='z'判斷是不是小寫(xiě)字母;c!='\\n'判斷是用換行符結(jié)束循環(huán)。

31.136136解析:本題考查函數(shù)的遞歸調(diào)用。函數(shù)fun是遞歸函數(shù),語(yǔ)句fun(6)的調(diào)用過(guò)程如下:

第1次:調(diào)用fun(6),6/2=3>0成立,調(diào)用fun(3);

第2次:調(diào)用fun(3),3/2=1>0成立,調(diào)用fun(1);

第3次:調(diào)用fun(1),1/2=0>0不成立,執(zhí)行語(yǔ)句printf('%d',x);,輸出1。

推出fun(3)輸出3,fun(6)輸出為6。

32.a[iow][col]>max或a[row][col]>=max或max<=a[row][col]或max<a[iow][col]max<min或min>maX或max<=min或min>=maxa[iow][col]>max或a[row][col]>=max或max<=a[row][col]或max<a[iow][col]\r\nmax<min或min>maX或max<=min或min>=max解析:本題有兩層for循環(huán),主函數(shù)中定義了整型變量iow、col、max和min,其中row用來(lái)存放外循環(huán)中的循環(huán)次數(shù),col用來(lái)存放內(nèi)循環(huán)中的次數(shù),max記錄每行中的最大值;min記錄所有行中最大值中的最小值。在內(nèi)循環(huán)中,首先給max賦初值為每行的第0列元素值,然后從第一列開(kāi)始依次與max進(jìn)行比較。如果大于max則將其值賦給max,當(dāng)每一行循環(huán)結(jié)束,max記錄了每一行的最大值。所以第一個(gè)空應(yīng)該填a[row][col]>max或a[row][col]=max.退出內(nèi)循環(huán),在第一次退出內(nèi)循環(huán)時(shí),將min賦初值為第0行的max,然后在每次退出內(nèi)循環(huán)時(shí),將min和每行的max比較,如果大于max,則將max值賦min,所以第二個(gè)空應(yīng)該填max<min或min>max,當(dāng)退出外循環(huán)時(shí),min為所有行中的最大值的最小值。

33.buf的首地址buf的首地址解析:考查fgets()函數(shù)的功能,fgets()函數(shù)用來(lái)從文件中讀入字符串。調(diào)用格式為:fgets(buf,n,fp)。此處,fp是文件指針,buf是存放字符串的起始地址,n是一個(gè)int型變量。調(diào)用函數(shù)fgets()時(shí),最多能讀入n-1個(gè)字符,系統(tǒng)自動(dòng)在最后加字符串結(jié)束標(biāo)志,并以buf作為函數(shù)值返回。

34.132132解析:本題考核的知識(shí)點(diǎn)是for循環(huán)與switch語(yǔ)句的綜合運(yùn)用。主函數(shù)中用了一個(gè)for循環(huán),for循環(huán)里嵌套了一個(gè)switch語(yǔ)句,for循環(huán)了三次,當(dāng)i=9時(shí),i/10=0,執(zhí)行switch語(yǔ)句中case0分支,m和n的值各加1,變?yōu)?和1,然后遇到breake語(yǔ)句,退出switch語(yǔ)句;當(dāng)i=10,i/10=1,執(zhí)行switch語(yǔ)句中default分支,使k和n的值各加1,變?yōu)?和1,退出switch語(yǔ)句:當(dāng)i=11時(shí),i/10=1,執(zhí)行switch語(yǔ)句中default分支,k和n的值各加1變,為2和3,退出switch語(yǔ)句,循環(huán)結(jié)束。故該空格處應(yīng)該填132。

35.冒泡排序冒泡排序解析:交換排序是指借助數(shù)據(jù)元素之間的互相交換進(jìn)行排序的一種方法。冒泡排序是一種最簡(jiǎn)單的交換排序方法,它是通過(guò)相鄰元素之間的相互交換逐步將線(xiàn)性表變成有序。

36.投影專(zhuān)門(mén)關(guān)系運(yùn)算包括對(duì)單個(gè)關(guān)系進(jìn)行垂直分解(投影操作)或水平分解(選擇操作)和對(duì)多個(gè)關(guān)系的結(jié)合(連接操作)等。

37.1371513715解析:程序中n是一個(gè)有5個(gè)元素,且元素值全為0的數(shù)組。在for循環(huán)中,當(dāng)i=1時(shí),n[1]=n[0]*2+1,此時(shí)n[1]=1;i=2時(shí),n[2]=n[1]*2+1,此時(shí)n[2]=3;i=3時(shí),n[3]=n[2]*2+1,此時(shí)n[3]=7;i=4時(shí),n[4]=n[3]*2+1,此時(shí)n[4]=15,循環(huán)結(jié)束。輸出函數(shù)中%d后有空格,因此輸出結(jié)果為13715。

38.123056009123\r\n056\r\n009解析:數(shù)組a中元素的初值為:a[0][0]=1、a[0][1]=2、a[0][2]=3、a[1][0]=4、a[1][1]=5、a[1][2]=6、a[12][0]=7、a[2][1]=8、a[2][2]=9。執(zhí)行第1個(gè)for循環(huán)后a[1][0]=0、a[2][0]=0、a[2][1)=0;第2個(gè)for循環(huán)的功能是將數(shù)組元素按照3行3列的格式輸出。

39.本題中直接使用指針變量k,但在使用時(shí)要注意對(duì)k的指針運(yùn)算,此外,一開(kāi)始應(yīng)使*k的值為數(shù)組中的某一下標(biāo)值,即*k=0。

40.-16-16解析:將賦值運(yùn)算符右側(cè)的“表達(dá)式”的值賦給左側(cè)的變量,并且賦值運(yùn)算符按照“自右而左”的結(jié)合順序,本題表達(dá)式應(yīng)先算m的值為10,再運(yùn)算y的值為8,最后計(jì)算y=y+(-8)=-8+(-8)=-16。

41.C解析:本題主函數(shù)中的for循環(huán)會(huì)循環(huán)兩次,即輸出連續(xù)兩次調(diào)用fun(2)的返回值。在fun()函數(shù)中定義了一個(gè)靜態(tài)變量c,第一次調(diào)用fun()時(shí)c被初始化為3,然后自增為4,最后輸出a+b+c為2+1+4=7。由于靜態(tài)變量的生存周期為整個(gè)程序執(zhí)行周期,所以第二次調(diào)用fun()時(shí)c的值為4,然后自增為5,故最后輸出a+b+c為2+1+5=8。所以程序的輸出結(jié)果是78,應(yīng)該選擇C。

42.D\r\n軟件是與計(jì)算機(jī)操作相關(guān)的計(jì)算機(jī)程序、規(guī)程、規(guī)則,以及可能有的文件、文檔及數(shù)據(jù);軟件開(kāi)發(fā)要受到計(jì)算機(jī)系統(tǒng)的限制;軟件是一個(gè)邏輯實(shí)體,不是物理實(shí)體,軟件具有抽象性。因此選項(xiàng)D正確。

43.C解析:在定義字符數(shù)組時(shí),可以用一個(gè)字符串作為初值,對(duì)數(shù)組進(jìn)行初始化。要注意的是,數(shù)組array的長(zhǎng)度不是5,而是6,因?yàn)橄到y(tǒng)將自動(dòng)在字符串常量的后面加上一個(gè)'\\0',因此,題干中的初始化語(yǔ)句與chararray[]={'C','h','i','n','9','\\0'};等價(jià)。

44.A解析:本題主要考查switch語(yǔ)句的使用方法。switch語(yǔ)句的執(zhí)行過(guò)程為:進(jìn)入switch結(jié)構(gòu)后,對(duì)條件表達(dá)式進(jìn)行運(yùn)算,然后從上至下去找與條件表達(dá)式值相匹配的case,以此作為入口,執(zhí)行switch結(jié)構(gòu)中后面的各語(yǔ)句,直到遇到break語(yǔ)句,則跳出switch語(yǔ)句,如果各case都不匹配時(shí),則執(zhí)行default后面的語(yǔ)句。

45.D解析:C語(yǔ)言數(shù)據(jù)文件由數(shù)據(jù)流形式組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件,選項(xiàng)A)、B)、C)錯(cuò)誤。ASCII文件又稱(chēng)文本文件,它的每一個(gè)字節(jié)代表一個(gè)字符。二進(jìn)制文件是把內(nèi)存中的數(shù)據(jù)按其在內(nèi)存中的存儲(chǔ)形式原樣輸出到磁盤(pán)上存放。

46.A解析:C語(yǔ)言規(guī)定,標(biāo)識(shí)符是由字母、數(shù)字或下劃線(xiàn)組成,并且它的第一個(gè)字符必須是字母或者下劃線(xiàn)。另外C語(yǔ)言規(guī)定了一些專(zhuān)用的標(biāo)識(shí)符,它們有著固定的含義,不能更改。int就是表達(dá)變量類(lèi)型的標(biāo)識(shí)符,它不能再用做變量名和函數(shù)名,所以選項(xiàng)B)不正確。do是C語(yǔ)言的一個(gè)關(guān)鍵字,也不能再用做變量名和函數(shù)名,所以選項(xiàng)C)不正確。

47.D解析:這個(gè)題目的功能是實(shí)現(xiàn)兩個(gè)有序字符串,合并成一個(gè)新的有序的字符串。

48.D解析:f格式符,用來(lái)輸出實(shí)數(shù),以小數(shù)形式式輸出?!?-m.nf”的含義是:輸出數(shù)據(jù)共占m列,其中n位小數(shù),如果輸出位數(shù)小于m,則右端補(bǔ)空恪。如果總長(zhǎng)度大于列數(shù),則按實(shí)際情況四舍五入輸出。

49.B解析:在C語(yǔ)言程序中,用單引號(hào)把一個(gè)字符或反斜線(xiàn)后跟一個(gè)特定的字符括起來(lái)表示一個(gè)字符常量。選項(xiàng)A)、C)和D)為正確的字符常量,而選項(xiàng)B)是用雙引號(hào)括起來(lái)的字符,表示一個(gè)字符串常量。

50.C解析:本題通過(guò)算術(shù)表達(dá)式的運(yùn)算實(shí)現(xiàn)小數(shù)保保留兩位并四舍五入的操作,其中(int)(x*100+0.5)是指將(x*100+0.5)的值強(qiáng)制轉(zhuǎn)換成整型。

51.C解析:當(dāng)i不可以整除2時(shí)打印“*”然后打印“#”,不能整除2則執(zhí)行continue,跳撾printf('#');語(yǔ)句,結(jié)束本次循環(huán),返回到循環(huán)的起始點(diǎn)。當(dāng)循環(huán)結(jié)束后,打印“$”。

52.C解析:關(guān)于二維數(shù)組的初始化,我們需要掌握如下方法:①所賦初值個(gè)數(shù)與數(shù)組元素的個(gè)數(shù)相同;②所賦初值行數(shù)少于數(shù)組行數(shù)時(shí),系統(tǒng)將自動(dòng)給后面各行的元素補(bǔ)初值0;③在給二維數(shù)組賦初值時(shí)可以不用行花括號(hào)對(duì)。選項(xiàng)C)應(yīng)該是inta[3][2]={{1,2},{3,4},{5,6,}};

53.D解析:軟件工程三要素是方法、工具和過(guò)程。

54.A解析:正確輸入各變量的值,輸入的格式應(yīng)該和輸入語(yǔ)句中的“格式控制”字符串的格式對(duì)應(yīng)一致。

55.A解析:只能在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)使用break語(yǔ)句,當(dāng)break出現(xiàn)在循環(huán)體中的switch語(yǔ)句體時(shí),其作用是跳出該switch語(yǔ)句體。當(dāng)break出現(xiàn)在循環(huán)體中,但不在switch語(yǔ)句體中時(shí),則在執(zhí)行break后,跳出本層循環(huán)體。continue語(yǔ)句的作用是,跳過(guò)本次循環(huán)體中余下尚未執(zhí)行的語(yǔ)句,接著再一次進(jìn)行循環(huán)的條件判定。

56.B解析:程序流程圖(PFD)是一種傳統(tǒng)的、應(yīng)用廣泛的軟件過(guò)程設(shè)計(jì)表示工具,通常也稱(chēng)為程序框圖,其箭頭代表的是控制流。

57.D解析:C語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線(xiàn)三種字符組成,且第一個(gè)字符必須為字母或下劃線(xiàn)。注意,大寫(xiě)字母和小寫(xiě)字母被認(rèn)為是兩個(gè)不同的字符。C語(yǔ)言中的關(guān)鍵字不能用作標(biāo)識(shí)符。

58.C解析:在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,對(duì)象是面向?qū)ο蟮能浖幕灸K,它是由數(shù)據(jù)及可以對(duì)這些數(shù)據(jù)施加的操作所組成的統(tǒng)一體,而且對(duì)象是以數(shù)據(jù)為中心的,操作圍繞對(duì)其數(shù)據(jù)所需做的處理來(lái)設(shè)置,沒(méi)有無(wú)關(guān)的操作。從模塊的獨(dú)立性考慮,對(duì)象內(nèi)部各種元素彼此結(jié)合得很緊密,內(nèi)聚性強(qiáng)。由于完成對(duì)象功能所需要的元素(數(shù)據(jù)和方法)基本上都被封裝在對(duì)象內(nèi)部,它與外界的聯(lián)系自然就比較少,所以,對(duì)象之間的耦合通常比較松。所以,選項(xiàng)A與B錯(cuò)誤,選項(xiàng)C正確。

59.C解析:自增運(yùn)算符“++”,出現(xiàn)在變量之前,表示先使變量的值加1,再使用變量的值進(jìn)行運(yùn)算;出現(xiàn)在變量之后,表示先使用變量的值進(jìn)行運(yùn)算,冉使變量的值加1。例如題中的“b++”,題中第一條語(yǔ)句先輸出字符b的值,此時(shí)變量b='2',因此輸出值為2;再使b的值加1,b='3',因此第二條語(yǔ)句輸出:b-a='3'-'1'=2。

60.A解析:題中要求x的取值是小于等于0或者大于等于1,這說(shuō)明表達(dá)式是或的關(guān)系,所以在寫(xiě)成C語(yǔ)言表達(dá)式應(yīng)是邏輯或的關(guān)系,邏輯或運(yùn)算符是'‖'。

61.B\n選項(xiàng)C和D可直接排除,程序是數(shù)據(jù)結(jié)構(gòu)和算法的組合體,所以是先選擇數(shù)據(jù)結(jié)構(gòu),然后繼而選擇相對(duì)應(yīng)的算法,編碼并上機(jī)調(diào)試,最后整理文檔。

\n

62.A本題考核的知識(shí)點(diǎn)是結(jié)構(gòu)體類(lèi)型定義和結(jié)構(gòu)體的基本概念。結(jié)構(gòu)體類(lèi)型的定義格式為:slxuct結(jié)構(gòu)體名{成員說(shuō)明列表};結(jié)構(gòu)體變量的定義有3種形式。第一種:定義結(jié)構(gòu)體類(lèi)型的同時(shí)定義結(jié)構(gòu)體變量,如struct結(jié)構(gòu)體名{成員說(shuō)明列表)變量;第二種:先定義一個(gè)結(jié)構(gòu)體類(lèi)型,然后使用該類(lèi)型來(lái)定義結(jié)構(gòu)體變量,如structstudent{成員說(shuō)明列表l;student變量;第三種:定義一個(gè)無(wú)名稱(chēng)的結(jié)構(gòu)體類(lèi)型的同時(shí)定義結(jié)構(gòu)體變量,如truct§tudent{成員說(shuō)明列表l變量。

溫馨提示

  • 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)論