2021年陜西省延安市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第1頁(yè)
2021年陜西省延安市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第2頁(yè)
2021年陜西省延安市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第3頁(yè)
2021年陜西省延安市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第4頁(yè)
2021年陜西省延安市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩73頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2021年陜西省延安市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.設(shè)森林F對(duì)應(yīng)的二叉樹(shù)為B,它有m個(gè)結(jié)點(diǎn),B的根為p,p的右子樹(shù)的結(jié)點(diǎn)個(gè)數(shù)為n,森林F中第一棵樹(shù)的結(jié)點(diǎn)的個(gè)數(shù)是()。

A.m-nB.m-n-1C.n+1D.不能確定

2.有以下程序

include<stdio.h>

main()

{chara[30],b[30];

scanf(“%s”,a);

gets(b);

printf(“%s\n%s\n”,a,b);

}

程序運(yùn)行時(shí)若輸入:

howareyou?Iamfine<回車>

則輸出結(jié)果是A.howareyou?Iamfine

B.howareyou?1amfine

C.howareyou?Iamfine

D.howareyou?

3.設(shè)計(jì)一個(gè)判別表達(dá)式中左、右括號(hào)是否配對(duì)出現(xiàn)的算法,采用()數(shù)據(jù)結(jié)構(gòu)最佳。A.線性表的順序存儲(chǔ)結(jié)構(gòu)B.隊(duì)列C.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)D.棧

4.數(shù)據(jù)流圖用于抽象地描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖合法圖符的是()。

A.控制流B.加工C.數(shù)據(jù)存儲(chǔ)D.源和潭

5.有下列程序:程序執(zhí)行后的輸出結(jié)果是()。A.2,14,3,18,4,18

B.1,14,2,18,3,18

C.2,14,3,18,4,22

D.1,14,2,18,3,18,4,18

6.有以下程序:#include<stdio.h>main(){inta=1,b=2,c=3,d=4,r=0;if(a!=1)r=1;if(b==2)r=2;elseif(c!=3)r=3;elseif(d==4)r=4;printf(“%d\n”,r);}程序運(yùn)行后的輸出結(jié)果是()。

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

7.在inta=3,int*p=&a;中,*p的值是()

A.變量a的地址值B.無(wú)意義C.變量p的地址值D.3

8.有以下程序:#include<stdio.h>voidfun(doublex,double*y,double*z){*y=*y-1.0;*z=*z+x;}main(){doublea=2.5,b=9.0,*pa,*pb;pa=&a;pb=&b;fun(b-a,pa,pb);printf(“%f\n”,a);}程序運(yùn)行后的輸出結(jié)果是()。

A.8.000000B.9.000000C.1.500000D.10.500000

9.若有定義:Typedefint*T[10];T*a;則以下與上述定義中a類型完全相同的是()。

A.int*a[10];

B.int**a[10];

C.int*(*a)[10];

D.int*a[][10];

10.人們提出了用______的原理來(lái)設(shè)計(jì)軟件,這就是軟件工程學(xué)誕生的基礎(chǔ)。

A.計(jì)算機(jī)科學(xué)B.數(shù)學(xué)C.工程學(xué)D.運(yùn)籌學(xué)

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

#include<stdio.h>

main()

{intx=5,a=1,b=2,C=5,d=0;

if(a<B)

if(b!=3)

if(!C)

x=1;

else

if(D)x=1;

elsex=-1;

printf("%d",x);

}

A.-1B.0C.1D.不確定的值

12.

13.若有定義intw[3][5];,則以下不能正確表示該數(shù)組元素的表達(dá)式是A.*(*w+3)B.*(*w+1)[4]C.*(*(*w+1))D.*(&w[0][0]+1)

14.有下列程序:

main()

{inty=20;

do{y--;}while(--y);

phntf("%d\n",y--);

}

當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。

A.-1B.1C.4D.0

15.交換兩個(gè)變量的值,不允許用臨時(shí)變量,應(yīng)該使用下列()位運(yùn)算符。

A.&B.^C.‖D.~

16.有以下程序:#include<stdio.h>main(){intb[3][3]=(0,1,2,0,1,2,0,1,2},i,j,t=l;for(i=0;i<3;i++)for(j=1;j<=i;j++)t+=b[i][b[j][i]];printf("%d\n",t);}程序運(yùn)行后的輸出結(jié)果是()。A.1B.3C.4D.0

17.下列敘述中,不正確的是

A.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問(wèn)題

B.數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致

C.數(shù)據(jù)庫(kù)設(shè)計(jì)是指設(shè)計(jì)一個(gè)能滿足用戶要求,性能良好的數(shù)據(jù)庫(kù)

D.數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),但是需要操作系統(tǒng)的支持

18.檢查軟件產(chǎn)品是否符合需求定義的過(guò)程稱為()。

A.確認(rèn)測(cè)試B.集成測(cè)試C.驗(yàn)證測(cè)試D.驗(yàn)收測(cè)試

19.以下程序的功能是()。#include<stdio.h>main(){FILE*fPl;*fp2;fp1:fopen("file1","r");fp2:fopen("file2","w");while(!Feof(fP1))fputc(fgetc(fP1),fp2);fclose(fP1);fclose(fp2);}

A.將磁盤文件的內(nèi)容顯示在屏幕上

B.將兩個(gè)磁盤文件合為一個(gè)

C.將一個(gè)磁盤文件復(fù)制到另一個(gè)磁盤文件中

D.將兩個(gè)磁盤文件合并后送屏幕

20.程序設(shè)計(jì)的任務(wù)包括()。

A.編寫程序代碼并上機(jī)調(diào)試B.確定所用數(shù)據(jù)結(jié)構(gòu)C.確定所用算法D.以上選項(xiàng)均正確

二、2.填空題(20題)21.下列程序的輸出結(jié)果是【】。

#include<stdio.h>

main()

{charb[]="Helloyou";

b[5]=0;

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

}

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

main()

{chara[]="Language",b[]="Programe";

char*p1,*p2;

intk;

p1=a;p2=b;

for(k=0;k<=7;k++)

if(*(p1+k)==*(p2+k))printf("%c,*(p1+k));

}

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

inti=9;

printf("%o\n",i);

24.下列循環(huán)的循環(huán)次數(shù)是______。

ihtk=2;

while(k=0)

printf("%d",k);

k--;

printf("\n");

25.下面程序的輸出是【】。

main()

{enumem{em1=3,em2=1,em3};

char*aa[]={"AA","BB","CC","DD"};

printf("%s%s%s\n",aa[em1],aa[em2],aa[em3]);

}

26.下列程序的運(yùn)行結(jié)果是______。

main()

{inta=1,b=10;

do

{b-=a;a++;}while(b--<0);

printf("%d,%d\n",a,b);

}

27.以下程序用于判斷a、b、c能否構(gòu)成三角形,若能,輸出YES,否則輸出NO。當(dāng)給a、b、c輸入三角形三條邊長(zhǎng)時(shí),確定a、b、c能構(gòu)成三角形的條件是需同時(shí)滿足三個(gè)條件:a+b>c,a+c>b,b+c>a。

請(qǐng)?zhí)羁铡?/p>

main()

{floata,b,c;

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

if(【】)printf("YES\n");/*a、b、c能構(gòu)成三角形*/

elseprintf("NO\n");/*a、b、c不能構(gòu)成三角形*/

}

28.數(shù)據(jù)庫(kù)管理系統(tǒng)常見(jiàn)的數(shù)據(jù)模型有層次模型、網(wǎng)狀模型和【】3種。

29.下列程序的輸出結(jié)果是()。

intt(intx,inty,intcp,intdp)

{cp=x%y+y*y;

dp=x+x-y*y;

}

main()

{ima=4,b=3,c=9,d=8;

t(a,b,c,D);

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

}

30.若變量a,b已定義為int類型并賦值21和55,要求用printf函數(shù)以a=21,b=55的形式輸出,請(qǐng)寫出完整的的輸出語(yǔ)句()。

31.已定義charch='$';inti=1,j;,執(zhí)行j!=ch&&i++以后,i的值為_(kāi)_____。

32.設(shè)變量已正確定義為整型,則表達(dá)式n=i=2,++i,i++的值為【】。

33.將以下程序段寫成三目運(yùn)算表達(dá)式:【】。

if(a>b)max=a;

elsemax=b;

34.若變量n中的值為24,則prnt函數(shù)共輸出【】行。

voidprnt(intn,intaa[])

{inti;

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

{printf("%6d",aa[i]);

if!(i%5))printf("\n");

}

printf("\n");

}

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

unsignedfun6(unsignednum)

{unsignedk=1;

do{k*=hum%10;

num/=10;}while(num);

return(k);}

main()

{unsignedn=26;

printf("%d\n",fun6(n));}

36.數(shù)據(jù)流圖的類型有【】和事務(wù)型。

37.軟件的需求分析階段的工作,可以概括為四個(gè)方面:【】、需求分析、編寫需求規(guī)格說(shuō)明書和需求評(píng)審。

38.設(shè)y為血型變量,請(qǐng)寫出描述“y是偶數(shù)”的表達(dá)式______。

39.下列程序輸出的結(jié)果是______。

intm=17;

intfun(intx,inty)

{intm=3;

return(x*Y-m);

}

main()

{inta=5,b=7;

printf("%d\n",fun(a,B)/m);

}

40.買來(lái)一張新盤后,在存入文件前,必須進(jìn)行【】處理。

三、1.選擇題(20題)41.若變量a是int類型,并執(zhí)行了語(yǔ)句:a='A'+1.6;則正確的敘述是

A.a的值是字符CB.a的值是浮點(diǎn)型C.不允許字符型和浮點(diǎn)型相加D.a的值是字符'A'的ASCII值加上1。

42.以下非法的賦值語(yǔ)句是

A.n=(i=2,++i);B.j++;C.++(i+1);D.x=j>0;

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

A.0B.1C.10D.9

44.在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開(kāi)發(fā)階段是______。

A.可行性分析B.需求分析C.詳細(xì)設(shè)計(jì)D.程序編碼

45.下列關(guān)于C語(yǔ)言的說(shuō)法不正確的是

A.C語(yǔ)言既具有高級(jí)語(yǔ)言的一切功能,也具有低級(jí)語(yǔ)言的一些功能

B.C語(yǔ)言中的每一條執(zhí)行語(yǔ)句都必須用分號(hào)結(jié)束,分號(hào)不是C語(yǔ)言的一部分,是語(yǔ)句之間的分隔符號(hào)

C.注釋可以出現(xiàn)在程序中任意合適的地方

D.命令行后面不能加分號(hào),命令行不是C語(yǔ)言的語(yǔ)句

46.數(shù)據(jù)庫(kù)設(shè)計(jì)包括兩個(gè)方面的設(shè)計(jì)內(nèi)容,它們是()

A.概念設(shè)計(jì)和邏輯設(shè)計(jì)B.模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)C.內(nèi)模式設(shè)計(jì)和物理設(shè)計(jì)D.結(jié)構(gòu)特性設(shè)計(jì)和行為特性設(shè)計(jì)

47.數(shù)據(jù)管理技術(shù)發(fā)展的三個(gè)階段中,()沒(méi)有專門的軟件對(duì)數(shù)據(jù)進(jìn)行管理。Ⅰ.人工管理階段Ⅱ.文件系統(tǒng)階段Ⅲ.數(shù)據(jù)庫(kù)階段()

A.僅ⅠB.僅ⅢC.Ⅰ和ⅡD.Ⅱ和Ⅲ

48.以下敘述中正確的是()。

A.構(gòu)成C程序的基本單位是函數(shù)

B.可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)

C.main()函數(shù)必須放在其他函數(shù)之前

D.所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義

49.需求分析階段的任務(wù)是()

A.軟件開(kāi)發(fā)方法B.軟件開(kāi)發(fā)工具C.軟件開(kāi)發(fā)費(fèi)用D.軟件系統(tǒng)功能

50.以下選項(xiàng)中錯(cuò)誤的是()

A.char*sp;gets(sp);

B.charsp[5]gets(sp);

C.char*sp="12345";gets(sp);

D.charsp[5]="\0"gets(sp)

51.以下不屬于對(duì)象的基本特點(diǎn)的是()

A.分類性B.多態(tài)性C.繼承性D.封裝性

52.有以下程序:#include<stdio.h>voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i+=2)for(j=i+2;j<n;j+=2)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(aa,10);for(i=0;i<10;i++)printf("%d.",aa[i]);printf("\n");}其輸出結(jié)果是()。

A.1,2,3,4,5,6,7,8,9,10,

B.10,9,8,7,6,5,4,3,2,1,

C.9,2,7,4,5,6,3,8,1,10,

D.1,10,3,8,5,6,7,4,9,2,

53.有如下程序:longfib(intn){if(n>2)return(fib(n-1)+fib(n-2));elsereturn(2);}main(){printf("%ld\n",fib(3));}該程序的輸出結(jié)果是______。

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

54.以下程序的輸出結(jié)果是

#include<stdio.h>

intfun(intn,int*s)

{intf1,f2;

if(n==0||n==1)

*s=1;

else

{fun(n-1,&f1);

fun(n-2,&f2);

*s=f1+f2;

}}

voidmain()

{intx;

fun(6,&x);

printf("\n%d",x);}

A.7B.13C.9D.10

55.現(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

56.下列能正確定義且賦初值的語(yǔ)句是()。

A.intn1=n2=10;

B.charc=32;

C.floatf=f+1.1;

D.doublex=12.3E2.5;

57.下面程序的運(yùn)行結(jié)果是()。for(i=3;i<7;i++)printf((i%2)?("**%d\a"):("##%d\n"),i);

A.**3##4**5**6

B.##3**4##5**6

C.##3**4##5##6

D.**3##4**5##6

58.有以下程序:int*f(int*x,int*y){if(*x<*y)returnx;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=f(p,q);printf("%d,%d,%d\n",*p,*q,*r);}程序運(yùn)行后輸出結(jié)果是______。

A.7,8,8B.7,8,7C.8,7,7D.8,7,8

59.設(shè)a、b和c都是int型變量,且a=3、b=4、c=5,則下面的表達(dá)式中,值為0的表達(dá)式是______。

A.'a'&&'b'

B.a<=b

C.a||+c&&b-c

D.!((a<b)&&!c||1)

60.下列不屬于數(shù)據(jù)庫(kù)管理系統(tǒng)提供的數(shù)據(jù)語(yǔ)言的是

A.數(shù)據(jù)定義語(yǔ)言B.數(shù)據(jù)查詢語(yǔ)言C.數(shù)據(jù)操縱語(yǔ)言D.數(shù)據(jù)控制語(yǔ)言

四、選擇題(20題)61.#define能作簡(jiǎn)單的替代,用宏來(lái)替代計(jì)算多項(xiàng)式5*x*x+5*x+5的值的函數(shù)f,正確的宏定義語(yǔ)句為()。

A.#definef(x)5*x*x+5*x+5

B.#definef5*X*x+5*x+5

C.#definef(a)(5*a*a+5*a+5)

D.#define(5*x*x+5*x+5)f(x)

62.

63.有如下程序

#include"stdio.h"

main()

{intj,i,k=0;

for(j=20;j<=30;j++)

{if(!(k%10))printf("\n");

for(i=2;i<j;i++)if(!(j%i))break;

if(i>=j-1)

{printf("%d",j);

k++;}

}

}

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

A.2329B.2923

C.3292D.9232

64.(16)數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名不屬于數(shù)據(jù)流圖合法圖符的是_____。

A.控制流

B.加工

C.數(shù)據(jù)存儲(chǔ)

D.源和潭

65.

66.

以下程序的輸出結(jié)果是()。

main

{charch[3][4]={"123","456","78"),*p[3];inti;

for(i=0;i<3;i++)p[i]=ch[i];

for(i=0;i<3;i++)printf("%s",p[i]);}

A.123456780B.123456780C.12345678D.147

67.

68.在一個(gè)C語(yǔ)言源程序文件中所定義的全局變量,其作用域?yàn)?)。

A.所在文件的全部范圍B.所在程序的全部范圍C.所在函數(shù)的全部范圍D.由具體定義位置和extern說(shuō)明來(lái)決定范圍

69.下列不屬于過(guò)程設(shè)計(jì)工具中圖形工具的是()。

A.N—SB.PADC.程序流程圖D.PDL

70.

71.當(dāng)把以下四個(gè)表達(dá)式用做if語(yǔ)句的控制表達(dá)式時(shí),有一個(gè)選項(xiàng)與其他三個(gè)選項(xiàng)含義不同,這個(gè)選項(xiàng)是()。

A.k%2B.k%2==1C.(K%2)!=0D.!k%2==1

72.若各選項(xiàng)中所用變量已正確定義,函數(shù)fun中通過(guò)return語(yǔ)句返回一個(gè)函數(shù)值,以下選項(xiàng)中錯(cuò)誤的程序是

73.

74.有以下程序#defineF(X,Y)(X)*(Y)main(){inta=3,b=4;printf("%d\n",F(xiàn)(a++,b++));}程序運(yùn)行后的輸出結(jié)果是

A.12B.15C.16D.20

75.?下列程序的輸出結(jié)果是()。#include<stdio.h>main{inta=0,i;for(i=1;i<5;i++){switch(i){case0:case3:a+=1;case1:case2:a=2default:a+=3;}}printf("%d",a);}A.19B.18C.6D.8

76.在軟件開(kāi)發(fā)中,需求分析階段可以使用的工具是()。A.N—s圖B.DFD圖C.PAD圖D.程序流程圖

77.程序運(yùn)行后的輸出結(jié)果是()。A.7B.0C.3D.8

78.有以下程序:

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

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

79.以下敘述中正確的是()。

A.c語(yǔ)言程序?qū)脑闯绦蛑械谝粋€(gè)函數(shù)開(kāi)始執(zhí)行

B.可以在程序中由用戶指定任意一個(gè)函數(shù)作為主函數(shù),程序?qū)拇碎_(kāi)始執(zhí)行

C.c語(yǔ)言規(guī)定必須用main作為主函數(shù)名,程序從此開(kāi)始執(zhí)行,在此結(jié)束

D.main作為用戶標(biāo)識(shí)符,用以命名任意一個(gè)函數(shù)作為主函數(shù)

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

A.3,5,3,5B.3,5,5,3C.5,3,3,5D.5,3,5,3

五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc()的功能是:根據(jù)形參m(2≤m≤9)的值,在m行m列的二維數(shù)組中存放如下所示的數(shù)據(jù),由main()函數(shù)輸出。

請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。

注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。

試題程序:

六、程序設(shè)計(jì)題(1題)82.請(qǐng)編寫函數(shù)proc(),該函數(shù)的功能是:刪去一維數(shù)組中所有相同的數(shù),使之只剩一個(gè)。數(shù)組中的數(shù)已按由小到大的順序排列,函數(shù)返回刪除后數(shù)組中數(shù)據(jù)的個(gè)數(shù)。

例如,若一維數(shù)組中的數(shù)據(jù)是:

1122234456666778

9910101010

刪除后,數(shù)組中的內(nèi)容應(yīng)該是:

12345678910

注意:部分源程序給出如下。

請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫的若干語(yǔ)句。

試題程序:

參考答案

1.A

2.B

3.D

4.A解析:數(shù)據(jù)流圖包括四個(gè)方面,即加工(輸入數(shù)據(jù)經(jīng)加工變換產(chǎn)生輸出)、數(shù)據(jù)流(沿箭頭方向傳送數(shù)據(jù)的通道,一般在旁邊標(biāo)注數(shù)據(jù)流名)、存儲(chǔ)文件(數(shù)據(jù)源)(表示處理過(guò)程中存放各種數(shù)據(jù)的文件)、源和潭(表示系統(tǒng)和環(huán)境的接口,屬系統(tǒng)之外的實(shí)體),不包括選項(xiàng)中的控制流。

5.A程序定義整型變量a和i,其中a的初值為7。for循環(huán)中,循環(huán)變量i的取值為1,2,3。循環(huán)體中判斷a的取值,當(dāng)a>14時(shí),執(zhí)行break跳出循環(huán);當(dāng)a取值為奇數(shù)時(shí),a%2==1,a自增3,執(zhí)行continue繼續(xù)執(zhí)行循環(huán)體;當(dāng)a取值為偶數(shù)時(shí),a%2==0,a自增4,輸出i和a的值。i取值為1時(shí),a取值為7,自增3后a的值為10,執(zhí)行下一個(gè)循環(huán)。i取值為2時(shí),a取值為10,自增4后a的值為14,輸出2,14。i取值為3時(shí),a取值為14,自增4后a的值為18,輸出3,18。i取值為4時(shí),a取值為18,循環(huán)終止,輸出4,18。綜上,程序輸出:2,14,3,18,4,18。本題答案為A選項(xiàng)。

6.D第1個(gè)if語(yǔ)句是單獨(dú)的一條語(yǔ)句,所以執(zhí)行完第1個(gè)if語(yǔ)句后,r的值仍為初值0。第2個(gè)if語(yǔ)句與后續(xù)的兩個(gè)elseif都是嵌套的,所以只會(huì)執(zhí)行其中的一個(gè)語(yǔ)句,即“if(b==2)r=2;”這條語(yǔ)句。故本題答案為D選項(xiàng)。

7.D

8.Cmain函數(shù)定義兩個(gè)double類型的變量a、b,分別賦初值為2.5、9.0。另外定義兩個(gè)double類型的指針變量pa、pb,其中pa指向a,pb指向b。然后將b-a、pa、pb傳給函數(shù)fun,此時(shí)x的值為6.5,y指向a,z指向b。“*y=*y-1.0;”是將變量a的值減去1.0賦給a,a的值為1.5;“*z=*z+x;”是將變量b的值加上6.5賦給b,b的值為15.5。fun函數(shù)執(zhí)行完畢后,輸出a的值為1.5。故本題答案為C選項(xiàng)。

9.B由題意可知,T是一個(gè)數(shù)組指針,即int*[],所以使用T*a定義,可知a屬于int**[\n]類型。本題答案為B選項(xiàng)。

10.C

11.A解析:本題考查ifelse語(yǔ)句。第1個(gè)if語(yǔ)句,先判斷條件,發(fā)現(xiàn)a<b條件成立,執(zhí)行下列的語(yǔ)句;第2個(gè)if語(yǔ)句,先判斷條件,發(fā)現(xiàn)b!=3條件成立,執(zhí)行下列的語(yǔ)句:第3個(gè)if語(yǔ)句,先判斷條件,c=5,則!c條件不成立,執(zhí)行與其配對(duì)的else語(yǔ)句:第4個(gè)if語(yǔ)句,先判斷條件,d=0,條件不成立,則x=-1,結(jié)束循環(huán)。

12.A

13.C在C語(yǔ)言中,二維數(shù)組的名字表示的是二維數(shù)組的地址,表達(dá)式*(W+1)表示的是二維數(shù)組的第一行的第二個(gè)元素。在其前面再加上*(*(w+1))就是錯(cuò)誤的表達(dá)式。

14.D解析:本題考查do…while循環(huán)。當(dāng)--寸是0(即y是0)時(shí)結(jié)束循環(huán),輸出y--是先輸出y的值再將y的值減1。

15.B按邏輯位運(yùn)算特點(diǎn):①用按位與運(yùn)算將特定位清為0或保留特定位;②用按位或運(yùn)算將特定的位置為1;③用按位異或運(yùn)算將某個(gè)變量的特定位翻轉(zhuǎn)或交換兩個(gè)變量的值。

16.C本題考查了兩層for循環(huán)。外層循環(huán)增量i的值作為內(nèi)層循環(huán)執(zhí)行次數(shù)的值使用。

17.B解析:B選項(xiàng)錯(cuò)誤,原因是,數(shù)據(jù)庫(kù)應(yīng)該具有物理獨(dú)立性和邏輯獨(dú)立性,改變其一而不影響另一個(gè)。

18.A本題主要考查軟件測(cè)試的基本知識(shí)。軟件測(cè)試的步驟可分為單元測(cè)試(模塊測(cè)試)、集成測(cè)試、確認(rèn)測(cè)試和系統(tǒng)測(cè)試。

(1)單元測(cè)試是針對(duì)每個(gè)模塊進(jìn)行的測(cè)試,它可從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計(jì)測(cè)試用例,多個(gè)模塊可以平行、對(duì)立地測(cè)試。單元測(cè)試主要用于發(fā)現(xiàn)詳細(xì)設(shè)計(jì)和編程時(shí)犯下的錯(cuò)誤。單元測(cè)試多采用白盒測(cè)試,輔之以黑盒測(cè)試。

(2)集成測(cè)試是在單元測(cè)試的基礎(chǔ)上,根據(jù)模塊結(jié)構(gòu)圖將各個(gè)模塊連接起來(lái),必須精心計(jì)劃,應(yīng)提交集成測(cè)試計(jì)劃、集成測(cè)試規(guī)格說(shuō)明和集成測(cè)試分析報(bào)告。主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問(wèn)題。集成測(cè)試可以發(fā)現(xiàn)概要設(shè)計(jì)時(shí)犯的錯(cuò)誤。

(3)確認(rèn)測(cè)試用于驗(yàn)證軟件的功能和性能及其他特性是否與用戶的要求一致。確認(rèn)測(cè)試主要用于發(fā)現(xiàn)需求分析時(shí)犯下的錯(cuò)誤,一般使用黑盒法測(cè)試,以表明軟件符合需求說(shuō)明書的要求,應(yīng)該仔細(xì)設(shè)計(jì)測(cè)試用例和測(cè)試過(guò)程。確認(rèn)測(cè)試必須有用戶參加,或以用戶為主,用戶應(yīng)參與設(shè)計(jì)測(cè)試用例,通常情況下,主要使用生產(chǎn)中的實(shí)際數(shù)據(jù)進(jìn)行測(cè)試,測(cè)試數(shù)據(jù)通過(guò)用戶接口輸入。

(4)系統(tǒng)測(cè)試是將已經(jīng)通過(guò)確認(rèn)測(cè)試的軟件,作為整個(gè)計(jì)算機(jī)系統(tǒng)的元素與計(jì)算機(jī)硬件、外設(shè)和網(wǎng)絡(luò)等其他因素結(jié)合在一起,進(jìn)行一系列的組裝測(cè)試和確認(rèn)測(cè)試。系統(tǒng)測(cè)試的目的是通過(guò)與系統(tǒng)的需求定義做比較,發(fā)現(xiàn)軟件與系統(tǒng)的定義不符合的地方。系統(tǒng)測(cè)試可以發(fā)現(xiàn)問(wèn)題定義時(shí)犯下的錯(cuò)誤。

19.C解析:程序首先定義了兩個(gè)文件類型的指針fp1、fp2。為讀打開(kāi)文件filel,并讓指針fp1指向該文件;為寫打開(kāi)文件file2,并讓指針fp2指向該文件。循環(huán)執(zhí)行從文件file1中讀取一個(gè)字符,輸出到文件file2中,直到文件file1結(jié)束。因此程序的功能是將文件file1中的內(nèi)容復(fù)制到文件file2中。

20.D程序設(shè)計(jì)是一門技術(shù),需要相應(yīng)的理論、技術(shù)、方法和工具來(lái)支持。程序設(shè)計(jì)的任務(wù)包括選項(xiàng)A)、B)、c)等方面。

21.HelloHello解析:語(yǔ)句b[5]=0;相當(dāng)于語(yǔ)句b[5]='\\0';且'\\0'為字符串結(jié)束標(biāo)志,輸出時(shí)遇到'\\0'就停止輸出。

22.gae

23.1111解析:本題考核的知識(shí)點(diǎn)是printf()函數(shù)的輸出格式。本題中定義了一個(gè)整型變量i并賦初值為9,然后要求以八進(jìn)制輸出i的值,9的八進(jìn)制數(shù)的表示為11。

24.00解析:解答本題需要注意表達(dá)式“k=0”,它是賦值表達(dá)式而不是關(guān)系表達(dá)式,不論k為何值,表達(dá)式k=0總會(huì)使k為0,所以不能進(jìn)入循環(huán)。

25.DDBBCCDDBBCC解析:C語(yǔ)言對(duì)枚舉的定義規(guī)定:在枚舉中聲明的各個(gè)枚舉元素,如果沒(méi)有明確指出某個(gè)枚舉元素的值,它的上一個(gè)元素存在并有明確值的情況下,這個(gè)枚舉元素的值為其上一個(gè)元素的值+1。在本題中,沒(méi)有明確說(shuō)明枚舉元素em3的值,則em3=em2+1=1+1=2,進(jìn)而可知,在printf()打印函數(shù)中,要打印的數(shù)組元素是aa[3]、aa[1]、aa[2],因此最后的打印結(jié)果應(yīng)當(dāng)為“DDBBCC”。

26.282,8解析:do…while語(yǔ)句的功能是:首先執(zhí)行循環(huán)體語(yǔ)句,然后檢測(cè)循環(huán)控制條件表達(dá)式的值,若為真,則重復(fù)執(zhí)行循環(huán)體語(yǔ)句,否則退出循環(huán)。這里程序初始時(shí)a=1,b=10,經(jīng)過(guò)操作b-=a;a++后b=9,a=2,判斷條件b--<O不成立,退出循環(huán),但b的值被減1,因此結(jié)果為:a=2,b=8。

27.a+b>c&&a+c>b&&b+c>aa+b>c&&a+c>b&&b+c>a解析:在邏輯表達(dá)式中,如果要同時(shí)滿足幾個(gè)條件可以使用邏輯與運(yùn)算符“&&”,故本題的答案應(yīng)該為:a+b>c&&a+c>b&&b+c>a或其他等價(jià)形式。

28.關(guān)系模型關(guān)系模型解析:數(shù)據(jù)庫(kù)管理系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層系統(tǒng)管理軟件,是一種系統(tǒng)軟件,是用戶與數(shù)據(jù)庫(kù)之間的一個(gè)標(biāo)準(zhǔn)接口。其總是基于某種數(shù)據(jù)模型,可以分為層次模型、網(wǎng)狀模型和關(guān)系模型。

29.9898解析:本題的考查點(diǎn)是函數(shù)的調(diào)用。本題中a,b,c,d是實(shí)參,x,y,cp,dp是形參。C語(yǔ)言規(guī)定,實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只由實(shí)參傳給形參,而不能由形參傳回來(lái)給實(shí)參。在內(nèi)存中,實(shí)參單元與形參單元是不同的單元。在調(diào)用函數(shù)時(shí),給形參分配存儲(chǔ)單元,并將實(shí)參對(duì)應(yīng)的值傳遞給形參,調(diào)用結(jié)束后,形參單元被釋放,實(shí)參單元仍保留并維持原值。因此,程序的輸出結(jié)果是98。

30.printf(“a=%db=%d”aB);printf(“a=%d,b=%d”,a,B);解析:printf函數(shù)的一般格式為:“printf(格式控制,輸出表列)”。

31.11解析:在執(zhí)行邏輯表達(dá)式“j=!ch&&i++”時(shí),首先判斷j=!ch的值,因?yàn)椤癱h='$'”不為0,所以“j=!ch=0”,編譯系統(tǒng)便不再計(jì)算表達(dá)式“i++”的值,i的值不變,仍為1。

32.33解析:本題考查的是C語(yǔ)言逗號(hào)表達(dá)式的相關(guān)知識(shí)。程序在計(jì)算逗號(hào)表達(dá)式時(shí),從左到右計(jì)算由逗號(hào)分隔各表達(dá)式的值,整個(gè)逗號(hào)表達(dá)式的值等于其中最后一個(gè)表達(dá)式的值。本題中,首先i被賦值為2,再自加1,最后i++的值計(jì)算為3。

33.max=(a>b)?a:bmax=(a>b)?a:b解析:本題考查三目運(yùn)算符的用法,條件表達(dá)式的一般形式為:

表達(dá)式1?表達(dá)式2:表達(dá)式3

所以,本題可以寫成(a>b)?a:b,它是一個(gè)條件表達(dá)式,執(zhí)行順序是:如果條件(a>b)為真,則條件表達(dá)式取值a,否則取值b。

34.55解析:本題的關(guān)鍵在于if(!(i%5))printf('\\n),這句,即如果i可被5整除時(shí),則換行。i值為24,可以被5整除4次,并余4,因此,prnt函數(shù)共輸出5行,最后一行有4個(gè)數(shù)。

35.1212解析:do…while循環(huán)的一個(gè)比較顯著的特點(diǎn)是:先執(zhí)行一次循環(huán)體然后再判斷循環(huán)的條件是否滿足,若滿足則接著進(jìn)入下一次循環(huán),否則就退出循環(huán)。注意:3種循環(huán)結(jié)構(gòu)的比較。

36.變換型典型的數(shù)據(jù)流類型有兩種:變換型和事務(wù)型。變換型是指信息沿輸入通路進(jìn)入系統(tǒng),同時(shí)由外部形式變換成內(nèi)部形式,進(jìn)入系統(tǒng)的信息通過(guò)變換中心,經(jīng)加工處理以后再沿輸出通路變換成外部形式離開(kāi)軟件系統(tǒng);在很多軟件應(yīng)用中,存在某種作業(yè)數(shù)據(jù)流,它可以引發(fā)一個(gè)或多個(gè)處理,這些處理能夠完成該作業(yè)要求的功能,這種數(shù)據(jù)流就叫做事務(wù)。

37.需求獲取需求獲取解析:軟件的需求分析階段的工作,可以概括為四個(gè)方面:需求獲取、需求分析、編寫需求規(guī)格說(shuō)明書和需求評(píng)審。需求獲取的目的是確定對(duì)目標(biāo)系統(tǒng)的各方面需求;需求分析是對(duì)獲取的需求進(jìn)行分析和綜合,最終給出系統(tǒng)的解決方案和目標(biāo)系統(tǒng)的邏輯模型;編寫需求規(guī)格說(shuō)明書作為需求分析的階段成果,可以為用戶、分析人員和設(shè)計(jì)人員之間的交流提供方便,可以直接支持目標(biāo)軟件系統(tǒng)的確認(rèn),又可以作為控制軟件開(kāi)發(fā)進(jìn)度的依據(jù);需求評(píng)審是對(duì)需求分析階段的工作進(jìn)行的復(fù)審,驗(yàn)證需求文檔的一致性、可行性、完整性和有效性。

38.(y%2)==0(y%2)==0解析:因符合偶數(shù)的條件是對(duì)2取余為0,所以要描述y是偶數(shù)的表達(dá)式是(y%2)==0。

39.11解析:本題考查局部變量和全局變量的區(qū)別:局部變量是指作用域在函數(shù)級(jí)和塊級(jí)的變量,全局變量是指作用域在程序級(jí)和文件級(jí)的變量。本程序首先定義了一個(gè)全局變量m=17,m=17的作用域在整個(gè)程序內(nèi)。在fun函數(shù)內(nèi)部定義了一個(gè)局部變量m=3,m=3的作用域僅在fun函數(shù)內(nèi)部,通過(guò)fun函數(shù)返回兩個(gè)形參的積再減m。在主函數(shù)中,輸出fun(a,b)/m=(5*7-3)/17=1。

40.格式化(或初始化、FORMAT)格式化(或初始化、FORMAT)

41.D解析:在C語(yǔ)言中規(guī)定允許不同類型的量進(jìn)行運(yùn)算,但在運(yùn)算時(shí)需轉(zhuǎn)換成高級(jí)的類型進(jìn)行運(yùn)算。在表達(dá)式中有字符型和實(shí)型參加運(yùn)算時(shí),統(tǒng)一轉(zhuǎn)換為實(shí)型再運(yùn)算,當(dāng)運(yùn)算結(jié)果存入變量時(shí)再轉(zhuǎn)換為該變量的類型。

42.C解析:本題考查的知識(shí)點(diǎn)是賦值語(yǔ)句的基本知識(shí)。在表達(dá)式的運(yùn)算中,雙目賦值運(yùn)算符的格式為“變量二表達(dá)式”,單目運(yùn)算符一般形式為“運(yùn)算符表達(dá)式”或“表達(dá)式運(yùn)算符”。常量和表達(dá)式是不能被賦值的。選項(xiàng)A為復(fù)合表達(dá)式,首先計(jì)算(i=2,++i)的值,然后賦值給n,故選項(xiàng)A正確;選項(xiàng)B為簡(jiǎn)單自加運(yùn)算,故選項(xiàng)B正確;選項(xiàng)C在表達(dá)式++(i+1);中,(i+1)不是變量,該表達(dá)式的值為常量,而在++運(yùn)算中,其運(yùn)算對(duì)象必須為變量,故選項(xiàng)C錯(cuò)誤;選項(xiàng)D中為復(fù)合賦值表達(dá)式,正確.所以應(yīng)當(dāng)選擇C。

43.C解析:p是一個(gè)指向整型數(shù)據(jù)的指針,執(zhí)行p=a后,p指向a[0]。指針運(yùn)算比算術(shù)運(yùn)算的級(jí)別高,先運(yùn)算*p,得到1,然后執(zhí)行加9,結(jié)果等于10。

44.B[答案]B

[考點(diǎn)]軟件工程基礎(chǔ)

[評(píng)析]

分析員對(duì)用戶的要求作出分析,并畫出數(shù)據(jù)流程圖,該圖通俗易懂,不涉及到如何在計(jì)算機(jī)上實(shí)現(xiàn),這是需求分析階段。

軟件工程中的瀑布模型:

問(wèn)題定義,可行性研究,需求分析,概要設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼,測(cè)試,運(yùn)行和維護(hù)

相關(guān)鏈點(diǎn):

層次圖和HIPO圖是概要設(shè)計(jì)中的工具圖;程序流程圖、N-S圖、問(wèn)題分析PAD圖、設(shè)計(jì)程序語(yǔ)言PDL是詳細(xì)設(shè)計(jì)中的工具圖

45.B解析:分號(hào)是C語(yǔ)言的一部分,不是語(yǔ)句之間的分隔符號(hào)。C語(yǔ)言中的每一條執(zhí)行語(yǔ)句都必須用分號(hào)“;”結(jié)束,分號(hào)是C語(yǔ)言的一部分,不是語(yǔ)句之間的分隔符號(hào)。

46.A解析:模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)是概念設(shè)計(jì)的兩種方法。物理設(shè)計(jì)是根據(jù)特定的計(jì)算機(jī)系統(tǒng),對(duì)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)和存取方法進(jìn)行設(shè)計(jì),從而實(shí)現(xiàn)從邏輯結(jié)構(gòu)到物理結(jié)構(gòu)的轉(zhuǎn)換。從系統(tǒng)開(kāi)發(fā)的角度來(lái)看,結(jié)構(gòu)特性設(shè)計(jì)和行為特性-設(shè)計(jì)是數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)所具有的兩個(gè)特性。結(jié)構(gòu)特性的設(shè)計(jì),設(shè)計(jì)各級(jí)數(shù)據(jù)庫(kù)模式(靜態(tài)特性):行為特性的設(shè)計(jì),改變實(shí)體及其特性,決定數(shù)據(jù)庫(kù)系統(tǒng)的功能(動(dòng)態(tài)特性)。

47.A解析:數(shù)據(jù)管理技術(shù)發(fā)展的三個(gè)階段中,只有人工管理階段,沒(méi)有操作系統(tǒng),沒(méi)有管理數(shù)據(jù)的軟件,數(shù)據(jù)處理方式是批處理。在文件系統(tǒng)階段,操作系統(tǒng)中已經(jīng)有了專門數(shù)據(jù)管理軟件,一般稱為文件系統(tǒng)。在數(shù)據(jù)庫(kù)系統(tǒng)階段,出現(xiàn)了統(tǒng)一管理數(shù)據(jù)的專門軟件系統(tǒng),即數(shù)據(jù)庫(kù)管理系統(tǒng)。

48.A解析:本題綜合考查C語(yǔ)言的概念部分,關(guān)于C語(yǔ)言,我們應(yīng)該了解以下必須要掌握的基礎(chǔ)知識(shí):

①C程序是由函數(shù)構(gòu)成的。

②一個(gè)函數(shù)由兩部分組成:函數(shù)的首部和函數(shù)體。

③一個(gè)C程序總是從main函數(shù)開(kāi)始執(zhí)行的,而不論main函數(shù)的整個(gè)程序中的位置如何(main函數(shù)可以放在程序最開(kāi)始,也可以放在程序最后,或?qū)懺谝恍┖瘮?shù)之前,在另一些函數(shù)之后)。

④C程序在書寫上,表現(xiàn)形式比較自由,一行內(nèi)可以寫幾個(gè)語(yǔ)句,一個(gè)語(yǔ)句可以分寫在幾行上。每個(gè)語(yǔ)句和數(shù)據(jù)定義的最后必須有一個(gè)分號(hào)。

⑤C程序本身沒(méi)有輸入輸出語(yǔ)句。輸入和輸出的操作是由庫(kù)函數(shù)scanf和printf等函數(shù)來(lái)完成。

⑥可以用/*……*/對(duì)C語(yǔ)言的程序的任何部分作注釋。

49.DD)【解析】需求分析是軟件定義時(shí)期的最后一個(gè)階

\n段,它的基本任務(wù)就是詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對(duì)象,充分了解原系統(tǒng)的工作概況,明確用戶的各種需求,然后在這些基礎(chǔ)上確定新系統(tǒng)的功能。

50.A

51.C解析:對(duì)象的基本特點(diǎn)包括;標(biāo)識(shí)惟一性、分類性、多態(tài)性、封裝性和獨(dú)立性等。繼承性不屬于對(duì)象的基本特點(diǎn)。

52.C解析:sort函數(shù)的功能實(shí)際上是對(duì)數(shù)組中奇數(shù)位置上的數(shù)進(jìn)行從大到小排序。排序后的結(jié)果應(yīng)該為9,2,7,4,5,6,3,8,1,10。

53.B解析:函數(shù)fib內(nèi)部有兩個(gè)遞歸調(diào)用,當(dāng)n=3時(shí),fib(n-1)返回2,fib(n-2)也返回2,所以fib(n-1)+fib(n-2)的值為4。

54.B解析:考查函數(shù)的遞歸調(diào)用。n=0或n=1是遞歸的終止條件,然后利用已知值逐步遞推求出未知值。通過(guò)傳送地址值,在被調(diào)用函數(shù)中直接改變調(diào)用函數(shù)中的變量的值。

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

56.B解析:C語(yǔ)言規(guī)定,可以在定義變量的同時(shí)給變量賦初值,稱為變量初始化。在選項(xiàng)A)中在給n1和n2進(jìn)行賦初值,但變量02沒(méi)有定義;在選項(xiàng)C)中定義變量f時(shí),不能在賦值表達(dá)式的右邊出現(xiàn)變量f自身,所以選項(xiàng)C)錯(cuò)誤:在選項(xiàng)D)用指數(shù)表達(dá)式的常量中,字母E后面的數(shù)應(yīng)該為整數(shù),而不應(yīng)該為小數(shù)形式。因此,選項(xiàng)B)正確。

57.D解析:本題考查printf函數(shù)的輸出格式和條件表達(dá)式“?:”的使用。①printf函數(shù)輸出時(shí)“**%d\\n”和“##%d\\n”中的“##”和“**”都是直接輸出。②條件表達(dá)式的基本格式為:“a?b:c”。它的運(yùn)算規(guī)則為:當(dāng)a為非0時(shí),整個(gè)表達(dá)式的值取b的值,當(dāng)a為0時(shí),整個(gè)表達(dá)式取c的值。

58.B解析:f函數(shù)的功能是返回地址為x,y的兩個(gè)數(shù)中值鉸的數(shù)的地址,本題輸出結(jié)果是7,8,7。

59.D解析:選項(xiàng)A:'a'&&'b'是字符a與b的相與,不為0:選項(xiàng)B:a<=b,由題中變量賦值可知,結(jié)果為1。選項(xiàng)C:a||+c&&b-c,結(jié)果為1;選項(xiàng)D:!((a<B)&&!c||1),運(yùn)算結(jié)果為0。

60.B解析:通常數(shù)據(jù)庫(kù)管理系統(tǒng)提供的數(shù)據(jù)語(yǔ)言有數(shù)據(jù)定義語(yǔ)言、數(shù)據(jù)操縱語(yǔ)言和數(shù)據(jù)控制語(yǔ)言。其中數(shù)據(jù)操縱語(yǔ)言負(fù)責(zé)數(shù)據(jù)的操縱,包括查詢及增、刪、改等操作。所以查詢語(yǔ)言屬于數(shù)據(jù)操縱語(yǔ)言的一部分。

61.C解析:帶參數(shù)宏的格式為:#define標(biāo)識(shí)符(形參表)形參表達(dá)式。其功能是:在預(yù)處理程序中將程序中出現(xiàn)的所有帶實(shí)參的宏名,展開(kāi)成由實(shí)參組成的表達(dá)式。

62.C

63.A在本題中,程序首先定義了三個(gè)整型變量,并將變量k賦值為0,然后開(kāi)始循環(huán),循環(huán)開(kāi)始時(shí),變量j的值為20,結(jié)束時(shí),變量j的值為30,每循環(huán)一次,變量j自加1,即循環(huán)10。

當(dāng)j=20,k=0時(shí),“!(k%10)”為真,輸出換行,即循環(huán)開(kāi)始時(shí),輸出從新的一行開(kāi)始,執(zhí)行第二重循環(huán),此時(shí)的i=2,“!(j%i)”為真,運(yùn)行break語(yǔ)句,即跳出本層循環(huán)(從這里我們可以看出,j如果可以被i整除,則跳出本層循環(huán)),然后判斷i是否不小于j-1,如果是,則輸出此時(shí)j的值,否則k自加1。

從程序執(zhí)行的過(guò)程來(lái)看,這個(gè)題目確實(shí)非常復(fù)雜,循環(huán)的次數(shù)太多,但經(jīng)過(guò)上面一次循環(huán)過(guò)程的分析,我們可以發(fā)現(xiàn),其實(shí)這個(gè)程序的作用是找出20~30之間除1和本身外,不能被其他小于本身的數(shù)據(jù)整除的數(shù),并從小到大輸出這樣的數(shù)。這樣就能很容易地得到答案是2329。

64.A

65.D

66.B

\n第一個(gè)for循環(huán)的作用是讓p指向每行的首地址,第二個(gè)for循環(huán)的作用是把它指向的字符串輸出,故選擇B選項(xiàng)。

\n

67.C

68.D

\n全局變量是在函數(shù)外部任意位置上定義的變量,它的作用域是從變量定義的位置開(kāi)始,到整個(gè)源文件結(jié)束止。當(dāng)全局變量定義在后,引用它的函數(shù)在前時(shí),應(yīng)該在引用它的函數(shù)中用extern對(duì)此全局變量進(jìn)行說(shuō)明,以便通知編譯程序該變量是一個(gè)已在外部定義了的全局變量,這時(shí)全局變量的作用域從extern說(shuō)明處起,延伸到該函數(shù)末尾。

\n

69.D\n常用的過(guò)程設(shè)計(jì)工具有圖形工具(程序流程圖、N-S圖、PAD圖、HIPO)、表格工具(判定表)、語(yǔ)言工具(PDL)。

\n

70.B

71.D本題主要考查if語(yǔ)句的條件表達(dá)式。在本題的四個(gè)選項(xiàng)中給出了四個(gè)不同的條件表達(dá)式,題目要求找出其中一個(gè)意思與其他三個(gè)不同的表達(dá)式。

選項(xiàng)A的表達(dá)式k%2的功能是對(duì)變量k進(jìn)行取余運(yùn)算,如果運(yùn)算結(jié)果為假,表示變量k能被2整除,如果運(yùn)算結(jié)果為真,表示k不能被2整除。

選項(xiàng)B的表達(dá)式k%2==1的功能是對(duì)變量k進(jìn)行取余運(yùn)算,并判斷結(jié)果等于1,如果運(yùn)算結(jié)果為假,表示k%2的運(yùn)算結(jié)果為0,即k能被2整除;如果運(yùn)算結(jié)果為真,表示k%2的運(yùn)算結(jié)果為1,即k不能被2整除。

選項(xiàng)C的表達(dá)式(k%2)!=0的功能是對(duì)變量k進(jìn)行取余運(yùn)算,并判斷結(jié)果不等于0,如果運(yùn)算結(jié)果為假,表示k%2的運(yùn)算結(jié)果0,即k能被2整除;如果運(yùn)算結(jié)果為真,表示k%2的運(yùn)算結(jié)果為1,即k不能被2整除。

選項(xiàng)D的表達(dá)式!k%2==1等價(jià)于(!k)%2==1,其功能是先對(duì)變量k進(jìn)行邏輯非運(yùn)算,然后將運(yùn)算結(jié)果對(duì)2進(jìn)行取余運(yùn)算,再判斷其結(jié)果是否等于1。這與前面三個(gè)選項(xiàng)的意思完全不同,因此本題的正確答案選D。

72.A在函數(shù)調(diào)用前,需要定義或聲明,A)選項(xiàng)錯(cuò)誤。

73.A

74.A解析:此題考查的是編譯預(yù)處理命令以及自加運(yùn)算符。F(a++,b++)先取a和b的值,參加運(yùn)算,再把a(bǔ)和b的值分別加1,所以F(a++,b++)=F(3,4)=3*4=12。

75.A本題考查switchcase開(kāi)關(guān)語(yǔ)句,default退出繼續(xù)循環(huán)。當(dāng)i=1時(shí),執(zhí)行case1,因?yàn)闆](méi)有break語(yǔ)句,所以依次往下運(yùn)行,a=a+2=2,a=a+3=5;當(dāng)i=2時(shí),執(zhí)行CaSe2,沒(méi)有break語(yǔ)句,所以依次往下運(yùn)行,a=a+2=7,a=a+3=10;當(dāng)i=3時(shí),執(zhí)行case3,當(dāng)a=a+1=11,沒(méi)有break語(yǔ)句,所以依次往下運(yùn)行,a=a+2=13,a=a+3=16;當(dāng)i=4時(shí),沒(méi)有case語(yǔ)句,則執(zhí)行default,a=a+3=19,i=5不成立,循環(huán)結(jié)束。

76.B在需求分析階段可以使用的工具有數(shù)據(jù)流圖(DFD),數(shù)據(jù)字典(DD),判定樹(shù)與判定表,因此本題答案為B)。

77.C題意統(tǒng)計(jì)字符s中阿拉伯?dāng)?shù)字的個(gè)數(shù)。chars[]=’012xy\08s34f4w2’;元素是字符型?!?=48;而’\0’=0;因此可以計(jì)算出’、0’之前阿拉伯?dāng)?shù)字的個(gè)數(shù),由字符串s可知,有3個(gè)阿拉伯?dāng)?shù)字。答案為C選項(xiàng)。

78.D該題目中首先區(qū)別++n和n++,第一次調(diào)用f函數(shù)時(shí),將++n(n自增l后再參與運(yùn)算)作為參數(shù)進(jìn)行傳遞,此時(shí)變量m的值為1,執(zhí)行n+=m;后,n=1,將l返回主函數(shù),并輸出。第二次調(diào)用f函數(shù)時(shí),將n++(n參與運(yùn)算后再自增1)作為參數(shù)進(jìn)行傳遞,此時(shí)變量m的值為1,執(zhí)行語(yǔ)句n+=m;,由于n是靜態(tài)存儲(chǔ)變量,因此n=2,將2返回主函數(shù)并輸出。因此D選項(xiàng)正確。

79.C\n一個(gè)c語(yǔ)言源程序至少包含一個(gè)main函數(shù)。無(wú)論main函數(shù)在程序中的位置如何,它都是C語(yǔ)言程序的主函數(shù),是程序執(zhí)行的入口和出口。

\n

80.Af函數(shù)交換局部變量a和b指針變量里的值,main調(diào)用并不改變參數(shù)的值,所以答案選擇A)。

81.(1)錯(cuò)誤:proc(int**a,intm)

正確:voidproc(int(*a)[N],intm)

(2)錯(cuò)誤:aEj][k]=k*J;

正確:a[j][k]=(k+1)*(j+1);

【解析】從主函數(shù)的調(diào)用可知,函數(shù)proc()沒(méi)有返回值,因此應(yīng)該定義為void類型。形參a應(yīng)該是一個(gè)整型的指針數(shù)組。因此,“proe(int**a,intm)”應(yīng)改為“voidproc(int(*a)[N],intm)”。數(shù)組下標(biāo)從0開(kāi)始,由事例數(shù)組可知,其元素從l開(kāi)始遞增,因此“a[j][k]=k*J;”應(yīng)改為“a[j][k]=(k+1)*(j+1);”。

82.

【解析】題目中要求刪去一維數(shù)組中所有相同的數(shù),使之只剩一個(gè)。首先需要將字符串中的每一個(gè)字符與其后的一個(gè)字符相比較,相同則不做任何操作,不相同則將其放入新的字符串中。最后將新的字符串中的字符個(gè)數(shù)返回給主函數(shù)。

2021年陜西省延安市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.設(shè)森林F對(duì)應(yīng)的二叉樹(shù)為B,它有m個(gè)結(jié)點(diǎn),B的根為p,p的右子樹(shù)的結(jié)點(diǎn)個(gè)數(shù)為n,森林F中第一棵樹(shù)的結(jié)點(diǎn)的個(gè)數(shù)是()。

A.m-nB.m-n-1C.n+1D.不能確定

2.有以下程序

include<stdio.h>

main()

{chara[30],b[30];

scanf(“%s”,a);

gets(b);

printf(“%s\n%s\n”,a,b);

}

程序運(yùn)行時(shí)若輸入:

howareyou?Iamfine<回車>

則輸出結(jié)果是A.howareyou?Iamfine

B.howareyou?1amfine

C.howareyou?Iamfine

D.howareyou?

3.設(shè)計(jì)一個(gè)判別表達(dá)式中左、右括號(hào)是否配對(duì)出現(xiàn)的算法,采用()數(shù)據(jù)結(jié)構(gòu)最佳。A.線性表的順序存儲(chǔ)結(jié)構(gòu)B.隊(duì)列C.線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)D.棧

4.數(shù)據(jù)流圖用于抽象地描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖合法圖符的是()。

A.控制流B.加工C.數(shù)據(jù)存儲(chǔ)D.源和潭

5.有下列程序:程序執(zhí)行后的輸出結(jié)果是()。A.2,14,3,18,4,18

B.1,14,2,18,3,18

C.2,14,3,18,4,22

D.1,14,2,18,3,18,4,18

6.有以下程序:#include<stdio.h>main(){inta=1,b=2,c=3,d=4,r=0;if(a!=1)r=1;if(b==2)r=2;elseif(c!=3)r=3;elseif(d==4)r=4;printf(“%d\n”,r);}程序運(yùn)行后的輸出結(jié)果是()。

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

7.在inta=3,int*p=&a;中,*p的值是()

A.變量a的地址值B.無(wú)意義C.變量p的地址值D.3

8.有以下程序:#include<stdio.h>voidfun(doublex,double*y,double*z){*y=*y-1.0;*z=*z+x;}main(){doublea=2.5,b=9.0,*pa,*pb;pa=&a;pb=&b;fun(b-a,pa,pb);printf(“%f\n”,a);}程序運(yùn)行后的輸出結(jié)果是()。

A.8.000000B.9.000000C.1.500000D.10.500000

9.若有定義:Typedefint*T[10];T*a;則以下與上述定義中a類型完全相同的是()。

A.int*a[10];

B.int**a[10];

C.int*(*a)[10];

D.int*a[][10];

10.人們提出了用______的原理來(lái)設(shè)計(jì)軟件,這就是軟件工程學(xué)誕生的基礎(chǔ)。

A.計(jì)算機(jī)科學(xué)B.數(shù)學(xué)C.工程學(xué)D.運(yùn)籌學(xué)

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

#include<stdio.h>

main()

{intx=5,a=1,b=2,C=5,d=0;

if(a<B)

if(b!=3)

if(!C)

x=1;

else

if(D)x=1;

elsex=-1;

printf("%d",x);

}

A.-1B.0C.1D.不確定的值

12.

13.若有定義intw[3][5];,則以下不能正確表示該數(shù)組元素的表達(dá)式是A.*(*w+3)B.*(*w+1)[4]C.*(*(*w+1))D.*(&w[0][0]+1)

14.有下列程序:

main()

{inty=20;

do{y--;}while(--y);

phntf("%d\n",y--);

}

當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。

A.-1B.1C.4D.0

15.交換兩個(gè)變量的值,不允許用臨時(shí)變量,應(yīng)該使用下列()位運(yùn)算符。

A.&B.^C.‖D.~

16.有以下程序:#include<stdio.h>main(){intb[3][3]=(0,1,2,0,1,2,0,1,2},i,j,t=l;for(i=0;i<3;i++)for(j=1;j<=i;j++)t+=b[i][b[j][i]];printf("%d\n",t);}程序運(yùn)行后的輸出結(jié)果是()。A.1B.3C.4D.0

17.下列敘述中,不正確的是

A.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問(wèn)題

B.數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致

C.數(shù)據(jù)庫(kù)設(shè)計(jì)是指設(shè)計(jì)一個(gè)能滿足用戶要求,性能良好的數(shù)據(jù)庫(kù)

D.數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),但是需要操作系統(tǒng)的支持

18.檢查軟件產(chǎn)品是否符合需求定義的過(guò)程稱為()。

A.確認(rèn)測(cè)試B.集成測(cè)試C.驗(yàn)證測(cè)試D.驗(yàn)收測(cè)試

19.以下程序的功能是()。#include<stdio.h>main(){FILE*fPl;*fp2;fp1:fopen("file1","r");fp2:fopen("file2","w");while(!Feof(fP1))fputc(fgetc(fP1),fp2);fclose(fP1);fclose(fp2);}

A.將磁盤文件的內(nèi)容顯示在屏幕上

B.將兩個(gè)磁盤文件合為一個(gè)

C.將一個(gè)磁盤文件復(fù)制到另一個(gè)磁盤文件中

D.將兩個(gè)磁盤文件合并后送屏幕

20.程序設(shè)計(jì)的任務(wù)包括()。

A.編寫程序代碼并上機(jī)調(diào)試B.確定所用數(shù)據(jù)結(jié)構(gòu)C.確定所用算法D.以上選項(xiàng)均正確

二、2.填空題(20題)21.下列程序的輸出結(jié)果是【】。

#include<stdio.h>

main()

{charb[]="Helloyou";

b[5]=0;

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

}

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

main()

{chara[]="Language",b[]="Programe";

char*p1,*p2;

intk;

p1=a;p2=b;

for(k=0;k<=7;k++)

if(*(p1+k)==*(p2+k))printf("%c,*(p1+k));

}

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

inti=9;

printf("%o\n",i);

24.下列循環(huán)的循環(huán)次數(shù)是______。

ihtk=2;

while(k=0)

printf("%d",k);

k--;

printf("\n");

25.下面程序的輸出是【】。

main()

{enumem{em1=3,em2=1,em3};

char*aa[]={"AA","BB","CC","DD"};

printf("%s%s%s\n",aa[em1],aa[em2],aa[em3]);

}

26.下列程序的運(yùn)行結(jié)果是______。

main()

{inta=1,b=10;

do

{b-=a;a++;}while(b--<0);

printf("%d,%d\n",a,b);

}

27.以下程序用于判斷a、b、c能否構(gòu)成三角形,若能,輸出YES,否則輸出NO。當(dāng)給a、b、c輸入三角形三條邊長(zhǎng)時(shí),確定a、b、c能構(gòu)成三角形的條件是需同時(shí)滿足三個(gè)條件:a+b>c,a+c>b,b+c>a。

請(qǐng)?zhí)羁铡?/p>

main()

{floata,b,c;

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

if(【】)printf("YES\n");/*a、b、c能構(gòu)成三角形*/

elseprintf("NO\n");/*a、b、c不能構(gòu)成三角形*/

}

28.數(shù)據(jù)庫(kù)管理系統(tǒng)常見(jiàn)的數(shù)據(jù)模型有層次模型、網(wǎng)狀模型和【】3種。

29.下列程序的輸出結(jié)果是()。

intt(intx,inty,intcp,intdp)

{cp=x%y+y*y;

dp=x+x-y*y;

}

main()

{ima=4,b=3,c=9,d=8;

t(a,b,c,D);

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

}

30.若變量a,b已定義為int類型并賦值21和55,要求用printf函數(shù)以a=21,b=55的形式輸出,請(qǐng)寫出完整的的輸出語(yǔ)句()。

31.已定義charch='$';inti=1,j;,執(zhí)行j!=ch&&i++以后,i的值為_(kāi)_____。

32.設(shè)變量已正確定義為整型,則表達(dá)式n=i=2,++i,i++的值為【】。

33.將以下程序段寫成三目運(yùn)算表達(dá)式:【】。

if(a>b)max=a;

elsemax=b;

34.若變量n中的值為24,則prnt函數(shù)共輸出【】行。

voidprnt(intn,intaa[])

{inti;

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

{printf("%6d",aa[i]);

if!(i%5))printf("\n");

}

printf("\n");

}

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

unsignedfun6(unsignednum)

{unsignedk=1;

do{k*=hum%10;

num/=10;}while(num);

return(k);}

main()

{unsignedn=26;

printf("%d\n",fun6(n));}

36.數(shù)據(jù)流圖的類型有【】和事務(wù)型。

37.軟件的需求分析階段的工作,可以概括為四個(gè)方面:【】、需求分析、編寫需求規(guī)格說(shuō)明書和需求評(píng)審。

38.設(shè)y為血型變量,請(qǐng)寫出描述“y是偶數(shù)”的表達(dá)式______。

39.下列程序輸出的結(jié)果是______。

intm=17;

intfun(intx,inty)

{intm=3;

return(x*Y-m);

}

main()

{inta=5,b=7;

printf("%d\n",fun(a,B)/m);

}

40.買來(lái)一張新盤后,在存入文件前,必須進(jìn)行【】處理。

三、1.選擇題(20題)41.若變量a是int類型,并執(zhí)行了語(yǔ)句:a='A'+1.6;則正確的敘述是

A.a的值是字符CB.a的值是浮點(diǎn)型C.不允許字符型和浮點(diǎn)型相加D.a的值是字符'A'的ASCII值加上1。

42.以下非法的賦值語(yǔ)句是

A.n=(i=2,++i);B.j++;C.++(i+1);D.x=j>0;

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

A.0B.1C.10D.9

44.在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開(kāi)發(fā)階段是______。

A.可行性分析B.需求分析C.詳細(xì)設(shè)計(jì)D.程序編碼

45.下列關(guān)于C語(yǔ)言的說(shuō)法不正確的是

A.C語(yǔ)言既具有高級(jí)語(yǔ)言的一切功能,也具有低級(jí)語(yǔ)言的一些功能

B.C語(yǔ)言中的每一條執(zhí)行語(yǔ)句都必須用分號(hào)結(jié)束,分號(hào)不是C語(yǔ)言的一部分,是語(yǔ)句之間的分隔符號(hào)

C.注釋可以出現(xiàn)在程序中任意合適的地方

D.命令行后面不能加分號(hào),命令行不是C語(yǔ)言的語(yǔ)句

46.數(shù)據(jù)庫(kù)設(shè)計(jì)包括兩個(gè)方面的設(shè)計(jì)內(nèi)容,它們是()

A.概念設(shè)計(jì)和邏輯設(shè)計(jì)B.模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)C.內(nèi)模式設(shè)計(jì)和物理設(shè)計(jì)D.結(jié)構(gòu)特性設(shè)計(jì)和行為特性設(shè)計(jì)

47.數(shù)據(jù)管理技術(shù)發(fā)展的三個(gè)階段中,()沒(méi)有專門的軟件對(duì)數(shù)據(jù)進(jìn)行管理。Ⅰ.人工管理階段Ⅱ.文件系統(tǒng)階段Ⅲ.數(shù)據(jù)庫(kù)階段()

A.僅ⅠB.僅ⅢC.Ⅰ和ⅡD.Ⅱ和Ⅲ

48.以下敘述中正確的是()。

A.構(gòu)成C程序的基本單位是函數(shù)

B.可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)

C.main()函數(shù)必須放在其他函數(shù)之前

D.所有被調(diào)用的函數(shù)一定要在調(diào)用之前進(jìn)行定義

49.需求分析階段的任務(wù)是()

A.軟件開(kāi)發(fā)方法B.軟件開(kāi)發(fā)工具C.軟件開(kāi)發(fā)費(fèi)用D.軟件系統(tǒng)功能

50.以下選項(xiàng)中錯(cuò)誤的是()

A.char*sp;gets(sp);

B.charsp[5]gets(sp);

C.char*sp="12345";gets(sp);

D.charsp[5]="\0"gets(sp)

51.以下不屬于對(duì)象的基本特點(diǎn)的是()

A.分類性B.多態(tài)性C.繼承性D.封裝性

52.有以下程序:#include<stdio.h>voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i+=2)for(j=i+2;j<n;j+=2)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(aa,10);for(i=0;i<10;i++)printf("%d.",aa[i]);printf("\n");}其輸出結(jié)果是()。

A.1,2,3,4,5,6,7,8,9,10,

B.10,9,8,7,6,5,4,3,2,1,

C.9,2,7,4,5,6,3,8,1,10,

D.1,10,3,8,5,6,7,4,9,2,

53.有如下程序:longfib(intn){if(n>2)return(fib(n-1)+fib(n-2));elsereturn(2);}main(){printf("%ld\n",fib(3));}該程序的輸出結(jié)果是______。

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

54.以下程序的輸出結(jié)果是

#include<stdio.h>

intfun(intn,int*s)

{intf1,f2;

if(n==0||n==1)

*s=1;

else

{fun(n-1,&f1);

fun(n-2,&f2);

*s=f1+f2;

}}

voidmain()

{intx;

fun(6,&x);

printf("\n%d",x);}

A.7B.13C.9D.10

55.現(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

56.下列能正確定義且賦初值的語(yǔ)句是()。

A.intn1=n2=10;

B.charc=32;

C.floatf=f+1.1;

D.doublex=12.3E2.5;

57.下面程序的運(yùn)行結(jié)果是()。for(i=3;i<7;i++)printf((i%2)?("**%d\a"):("##%d\n"),i);

A.**3##4**5**6

B.##3**4##5**6

C.##3**4##5##6

D.**3##4**5##6

58.有以下程序:int*f(int*x,int*y){if(*x<*y)returnx;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=f(p,q);printf("%d,%d,%d\n",*p,*q,*r);}程序運(yùn)行后輸出結(jié)果是______。

A.7,8,8B.7,8,7C.8,7,7D.8,7,8

59.設(shè)a、b和c都是int型變量,且a=3、b=4、c=5,則下面的表達(dá)式中,值為0的表達(dá)式是______。

A.'a'&&'b'

B.a<=b

C.a||+c&&b-c

D.!((a<b)&&!c||1)

60.下列不屬于數(shù)據(jù)庫(kù)管理系統(tǒng)提供的數(shù)據(jù)語(yǔ)言的是

A.數(shù)據(jù)定義語(yǔ)言B.數(shù)據(jù)查詢語(yǔ)言C.數(shù)據(jù)操縱語(yǔ)言D.數(shù)據(jù)控制語(yǔ)言

四、選擇題(20題)61.#define能作簡(jiǎn)單的替代,用宏來(lái)替代計(jì)算多項(xiàng)式5*x*x+5*x+5的值的函數(shù)f,正確的宏定義語(yǔ)句為()。

A.#definef(x)5*x*x+5*x+5

B.#definef5*X*x+5*x+5

C.#definef(a)(5*a*a+5*a+5)

D.#define(5*x*x+5*x+5)f(x)

62.

63.有如下程序

#include"stdio.h"

main()

{intj,i,k=0;

for(j=20;j<=30;j++)

{if(!(k%10))printf("\n");

for(i=2;i<j;i++)if(!(j%i))break;

if(i>=j-1)

{printf("%d",j);

k++;}

}

}

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

A.2329B.2923

C.3292D.9232

64.(16)數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名不屬于數(shù)據(jù)流圖合法圖符的是_____。

A.控制流

B.加工

C.數(shù)據(jù)存儲(chǔ)

D.源和潭

65.

66.

以下程序的輸出結(jié)果是()。

main

{charch[3][4]={"123","456","78"),*p[3];inti;

for(i=0;i<3;i++)p[i]=ch[i];

for(i=0;i<3;i++)printf("%s",p[i]);}

A.123456780B.123456780C.12345678D.147

67.

68.在一個(gè)C語(yǔ)言源程序文件中所定義的全局變量,其作用域?yàn)?)。

A.所在文件的全部范圍B.所在程序的全部范圍C.所在函數(shù)的全部范圍D.由具體定義位置和extern說(shuō)明來(lái)決定范圍

69.下列不屬于過(guò)程設(shè)計(jì)工具中圖形工具的是()。

A.N—SB.PADC.程序流程圖D.PDL

70.

71.當(dāng)把以下四個(gè)表達(dá)式用做if語(yǔ)句的控制表達(dá)式時(shí),有一個(gè)選項(xiàng)與其他三個(gè)選項(xiàng)含義不同,這個(gè)選項(xiàng)是()。

A.k%2B.k%2==1C.(K%2)!=0D.!k%2==1

72.若各選項(xiàng)中所用變量已正確定義,函數(shù)fun中通過(guò)return語(yǔ)句返回一個(gè)函數(shù)值,以下選項(xiàng)中錯(cuò)誤的程序是

73.

74.有以下程序#defineF(X,Y)(X)*(Y)main(){inta=3,b=4;printf("%d\n",F(xiàn)(a++,b++));}程序運(yùn)行后的輸出結(jié)果是

A.12B.15C.16D.20

75.?下列程序的輸出結(jié)果是()。#include<stdio.h>main{

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論