2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第1頁
2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第2頁
2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第3頁
2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第4頁
2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩96頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(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語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.若希望下列的程序運(yùn)行后輸出25,程序空白處的正確選項(xiàng)是()。

main()

{inti,j=50,a[]={7,4,10,5,8};

for()

j+=a[i];

primf("%d,j-40);

}

A.i=1;i<4;++iB.i=1;i<3;++iC.i=4;i>2;i--D.i=2;i<4;++i

2.在一個(gè)有頭結(jié)點(diǎn)的鏈隊(duì)列中,假設(shè)f和r分別為隊(duì)首和隊(duì)尾指針,則插入s所指的結(jié)點(diǎn)的運(yùn)算是()。

A.f->next=s;f=s;

B.r->next=s;r=s;

C.s->next=r;r=s;

D.s->next=f;f=s;

3.若x,i,j和k都是int型變量,則執(zhí)行下面表達(dá)式后x的值為()。x=(i=4,j=16,k=32)

A.4B.16C.32D.52

4.下列敘述中錯(cuò)誤的是()。

A.用戶定義的函數(shù)中可以沒有return語句

B.用戶定義的函數(shù)中可以有多個(gè)return語句,以便調(diào)用一次返回多個(gè)函數(shù)值

C.用戶定義的函數(shù)中若沒有return語句,則應(yīng)當(dāng)定義函數(shù)為void類型

D.函數(shù)的return語句中可以沒有表達(dá)式

5.

6.相對(duì)于數(shù)據(jù)庫系統(tǒng),文件系統(tǒng)的主要缺陷有數(shù)據(jù)關(guān)聯(lián)差、數(shù)據(jù)不一致性和()。

A.可重用性差B.安全性差C.非持久性D.冗余性

7.若用一個(gè)大小為6的數(shù)組來實(shí)現(xiàn)循環(huán)隊(duì)列,且當(dāng)前rear和front的值分別為0和3,當(dāng)從隊(duì)列中刪除一個(gè)元素,再加入兩個(gè)元素后,rear和front的值分別為()

A.2和4B.1和5C.4和2D.5和1

8.下列程序的輸出結(jié)果是()。#include<stdio.h>voidp(int*x){printf("%d¨,++*x);}voidmain(){inty=3;p(&y);}A.3B.4C.2D.5

9.有下列程序:

main()

{inty=20;

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

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

}

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

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

10.面向?qū)ο蠓椒ㄖ?,繼承是指()。

A.一組對(duì)象所具有的相似性質(zhì)B.一個(gè)對(duì)象具有另一個(gè)對(duì)象的性質(zhì)C.各對(duì)象之間的共同性質(zhì)D.類之間共享屬性和操作的機(jī)制

11.在結(jié)構(gòu)化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是______。

A.詳細(xì)設(shè)計(jì)B.需求分析C.總體設(shè)計(jì)D.編程調(diào)試

12.

13.線處應(yīng)填入().A.b[i++]B.b[i]++C.b[i+=2]D.b[i]+=2

14.若有定義語句“char*s1=“OK”,*s2=“ok”;”,以下選項(xiàng)中,能夠輸出“OK”的語句是()。

A.if(strcmp(s1,s2)!=0)puts(s2);

B.if(strcmp(s1,s2)!=0)puts(s1);

C.if(strcmp(s1,s2)==1)puts(s1);

D.if(strcmp(s1,s2)==0)puts(s1);

15.設(shè)ch是char型變量,值為'A',則表達(dá)式ch=(ch>='A'&&ch<='Z')?ch+32:ch的值是()。

A.ZB.aC.zD.A

16.在以下給出的表達(dá)式中,與“while(E)”中的“(E)”不等價(jià)的表達(dá)式是()。

A.(E>0||E<0)B.(E==0)C.(!E==0)D.(E!=0)

17.有以下程序:voidswap(char*x,char*y){chart;t=*x;*x=*y;*y=t;}main{char*s1="abe",*s2="123":swap(s1,s2);printf("%s,%s\n",s1,s2);}程序執(zhí)行后的輸出結(jié)果是()。A.123,abeB.abc.123C.1bc,a23D.321,cba

18.對(duì)初始狀態(tài)為遞增序列的數(shù)組按遞增順序排序,最省時(shí)間的是插入排序算法,最費(fèi)時(shí)間的算法是()

A.堆排序B.快速排序C.插入排序D.歸并排序

19.下列描述錯(cuò)誤的是()。

A.繼承分為多重繼承和單繼承

B.對(duì)象之問的通信靠傳遞消息來實(shí)現(xiàn)

C.在外面看不到對(duì)象的內(nèi)部特征是基于對(duì)象的“模塊獨(dú)立性好”這個(gè)特征

D.類是具有共同屬性、共同方法的對(duì)象的集合

20.針對(duì)簡(jiǎn)單程序設(shè)計(jì),以下敘述的實(shí)施步驟順序正確的是()。

A.確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試、整理文檔

B.編碼、確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、整理文檔

C.整理文檔、確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試

D.確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、編碼、整理文檔

二、2.填空題(20題)21.Jackson結(jié)構(gòu)化程序設(shè)計(jì)方法是英國(guó)的M.Jackson提出的,它是一種面向______的設(shè)計(jì)方法。

22.按照邏輯結(jié)構(gòu)分類,數(shù)據(jù)結(jié)構(gòu)可分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),二叉樹屬于______。

23.對(duì)長(zhǎng)度為10的線性表進(jìn)行冒泡排序,最壞情況下需要比較的次數(shù)為【】。

24.以下程序中,fun函數(shù)的功能是求3行4列二維數(shù)組每行元素中的最大值。請(qǐng)?zhí)羁铡?/p>

#include<stdio,h>

voidfun(int,int,int(*)[4],int*);

main()

{inta[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;

fun(3,4,a,b);

for(i=0;i<3;i++)printf("%4d",b[i]);

prinff("\n");

}

voidfun(intm,intn,intar[][4],int*br)

{inti,j,x;

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

{x=ar[i][0];'

for(j=0;j<n;j++)if(x<ar[i][j])x=ar[i][j];

【】=x;

}

}

25.問題處理方案的正確而完整的描述稱為______。

26.#define命令出現(xiàn)在程序中函數(shù)的外面,宏名的有效范圍為______。

27.下列程序執(zhí)行輸出的結(jié)果是______。

#include<stdio.h>

f(intA)

{intb=0;

staticc=7;

a=c++;b++;

return(A);

}

main()

{inta=2,i,k;

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

k=f(a++);

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

}

28.棧中允許進(jìn)行插入和刪除的一端叫做______。

29.函數(shù)delete(s,i,n)的作用是從字符串s中刪除從第i個(gè)字符開始的n個(gè)字符,請(qǐng)?zhí)羁铡?/p>

voiddelete(chars[],inti,intn)

{intj,k,length=0;

whiles(length])

【】;

-i;

j=i;

}

if(【】)

{k=i+n;

if(i+n<=length)

while(k<length)

s[j++]=s[k++];

s[j]='\0';

}

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

#include<stdio.h>

main()

{inta=5,b=4,c=3,d;

d=(a>b>c);

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

}

31.數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括五個(gè)部分,即數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、【】和處理過程。

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

main()

(inta=2,b=7,c=5;

switch(a>0)

{case1:switch(b<0)

{case1:switch(");break;

case2:printf("!");break;

}

case0:switch(c==5)

{case0:printf("*");break;

case1:printf("#");break;

case2:printf("$");break;

}

default:printf("&");

}

printf("\n");

}

33.設(shè)a,b,c為整型數(shù),且a=2,b=3,c=4,則執(zhí)行完以下語句后,a的值是【】。

a*=16+(b++)-(++c);

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

main()

{

inta,b,c;

a=25;

b=025;

c=0x25;

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

}

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

main()

{intarr[10],i,k=0;

for(i=0;i<10;i++)arr[i]=i;

for(i=0;i<4;i++)k+=arr[i]=i;

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

}

36.以下程序的功能是計(jì)算:s=1+12+123+1234+12345。請(qǐng)?zhí)羁铡?/p>

main()

{intt=0,s=0,i;

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

{t=i+______;s=s+t;}

printf("s=%d\n",s);

}

37.設(shè)有以下定義和語句:

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

p[0]=a[1];

則*(p[0]+1)所代表的數(shù)組元素是【】。

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

main()

{inta=1,b=2,c=3,t=0;

if(a<B){t=a;a=b;b=t;}

if(a<C){t=a;a=c;c=t;}

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

}

39.若a是血型變量,且a的初值為4,則計(jì)算a+=a-=a*a表達(dá)式后a的值為______。

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

charstr口="ABCD",*p=str;

printf("%d\n",*(p+3));

三、1.選擇題(20題)41.下列敘述中,不屬于測(cè)試的特征的是

A.測(cè)試的挑剔性B.完全測(cè)試的不可能性C.測(cè)試的可靠性D.測(cè)試的經(jīng)濟(jì)性

42.若有以下程序:#include<stdio.h>voidf(intn);main(){voidf(intn);f(5);}voidf(intn){printf("%d\n",n);}則以下敘述中不正確的是()。

A.若只在主函數(shù)中對(duì)函數(shù)f進(jìn)行說明,則只能在主函數(shù)中正確調(diào)用函數(shù)f

B.若在主函數(shù)前對(duì)函數(shù)f進(jìn)行說明,則在主函數(shù)和其后的其他函數(shù)中都可以正確調(diào)用函數(shù)f

C.對(duì)于以上程序,編譯時(shí)系統(tǒng)會(huì)提示出錯(cuò)信息:對(duì)f函數(shù)重復(fù)說明

D.函數(shù)f無返回值,所以可用void將其類型定義為無返回值型

43.下列選項(xiàng)中錯(cuò)誤的說明語句是

A.chara[]={'t','o','y','o','u','\0'};

B.chara[]={"toyou\0"};

C.chara[]="toyou\0";

D.chara[]='toyou\0';

44.以下程序的功能是進(jìn)行位運(yùn)算:main(){unsignedchara,b;a=7^3;b=~4&3;printf("%d%d\n",a,B);}程序運(yùn)行后的輸出結(jié)果是()。

A.43B.73C.70D.40

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

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

B.花括號(hào)"{"和"}"只能作為函數(shù)體的定界符

C.構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名

D.分號(hào)是C語句之間的分隔符,不是語句的一部分

46.有以下程序:#include<stdio.h>main(){inta[3][3],*p,i;p=&a[0][0];for(i=0;i<9;i++)p[i]=i+1;printf("%d\n",a[1][2]);}程序運(yùn)行后的輸出結(jié)果是()。

A.3B.6C.9D.2

47.若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是______。

A.'a'<=c<='z'

B.(c>='a')||(c<='z')

C.('a'<=c)and('z'>=c)

D.(c>='a')&&(c<='z')

48.設(shè)有說明:inta=1,b=0;,則執(zhí)行以下語句的輸出結(jié)果是______。switch(a){case1:switch(b){case0:printf("**0**\n");break;case1:printf("**1*\n");break;}case2:printf("**2**\n");break;}

A.**0**B.**0****2**C.**0****1****2**D.switch語句中存在語法錯(cuò)誤

49.下面程序的輸出結(jié)果是()。#include<stdio.h>main(){chara[]={'a','b','c','d','f','g'},*p;p=a;printf("%c\n",*p+4);}

A.aB.bC.eD.f

50.設(shè)a和b均為int型變量,且a=6,b=11,則能使值為3的表達(dá)式是()。

A.b%(a%4)B.b%(a-a%5)C.b%a-a%5D.(b%B)-(a%4)

51.下列循環(huán)體的執(zhí)行次數(shù)是()。#include<stdio.h>main(){inti,j;for(i=0j=1;i<j+1;i+=1,j--)printf("%d\n",j);}

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

52.若在以下定義和賦值語句,則才s數(shù)組的第i行第j列(假設(shè)i,j已正確說明并賦值)元素地址的合法引用為ints[2][3]={0},(*p)[3];p=s;

A.*(*(p+i)+j)B.*(p[i]+j)C.(p+i)+jD.(*(p+i))[j]

53.下面一組中都是C語言關(guān)鍵字的是______。

A.doubleIntfor

B.mainwhilegoto

C.volatilebreakstatic

D.mallocsizeofnew

54.以下程序中函數(shù)f的功能是將n個(gè)字符串按由大到小的順序進(jìn)行排序。#include<string.h>voidf(charp[][10],intn){chart[20];inti,j;for(i=0;i<n-1;i++)for(j=i+l;j<n;j++)if(strcmp(p[i],p[j])<0){strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[j],t);}}main(){charp[][lO]-{"abc","aabdfg","abbd","dcdbe","cd"};inti;f(p,5);printf("%dkn",strlen(p[0]));}程序運(yùn){亍后的輸出結(jié)果是

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

55.a、b、c、d變量均為float類型且已正確賦值,下列選項(xiàng)中與數(shù)學(xué)式子“2ab/(5cd)”等價(jià)的C語言表達(dá)式是()。

A.2/5*a/c*d/b

B.a/(5*c*d)*(2*b)

C.2*a*b/5*c*d

D.2/5*a*d*(1/c*d)

56.在C語言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是()。

A.%B.\C.%和\D.**

57.下列程序的輸出結(jié)果,是______。main(){inta=0,b=0,c=0;if(++a>0||++b>0)++c;printf("\na=%d,b=%d,c=%d",a,b,c);}

A.a=0,b=0,c=0B.a=1,b=1,c=1C.a=1,b=0,c=1D.a=0,b=1,c=1

58.可以在C語言中用做用戶標(biāo)識(shí)符的是______。

A.voiddefineWORDB.as_b3_123IfC.for-abccasD.2cDoSIG

59.下列對(duì)于線性鏈表的描述中正確的是()

A.存儲(chǔ)空間不一定是連續(xù),且各元素的存儲(chǔ)順序是任意的

B.存儲(chǔ)空間不一定是連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面

C.存儲(chǔ)空間必須連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面

D.存儲(chǔ)空間必須連續(xù),且各元素的存儲(chǔ)順序是任意的

60.設(shè)有如下的程序段:inta[]=(1,2,3,4,5),*t;t=a;則下列說法正確的是()

A.a和t的內(nèi)容相同B.a數(shù)組的長(zhǎng)度和t所指的字符串長(zhǎng)度相等C.a和t完全相同D.指針變量t指向數(shù)組a的第一個(gè)元素

四、選擇題(20題)61.若二維數(shù)組a有m列,則在a[i][j]前的元素個(gè)數(shù)為()。

A.i*m+j-1B.i*m+jC.J*m+iD.i*m+j+1

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

A.zB.0C.元素Ch[5]地址D.字符y的地址

63.有以下程序:

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

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

64.

65.有以下程序

66.若有以下說明和定義,以下敘述中錯(cuò)誤的是(

)。uniondt{

int

a;char

b;double

c;}data;A.兩個(gè)共用體變量之間可以相互賦值B.變量data所占內(nèi)存字節(jié)數(shù)與成員c所占字節(jié)數(shù)相等C.程序段:data.a=5;printf("%f\n",data.c);輸出結(jié)果為5.000000D.共用體在初始化時(shí)只能用第一個(gè)成員的類型進(jìn)行初始化

67.已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為了節(jié)省時(shí)間,應(yīng)采用的算法是()。

A.堆排序B.直接插入排序C.快速排序D.直接選擇排序

68.

69.

70.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。

A.順序存儲(chǔ)的有序線性表B.線性鏈表C.二叉鏈表D.有序線性鏈表

71.

72.

73.

74.

75.有三個(gè)關(guān)系R、S和T如下:

則由關(guān)系R和S得到關(guān)系T的操作是()。

A.自然連接B.交C.投影D.并

76.

77.

78.

79.有下列二叉樹.對(duì)此二叉樹前序遍歷的結(jié)果為()。

A.ACFXDBEYZB.ABEFXYZCDC.ABCDEFXY7D.ABDYECFXZ

80.

五、程序改錯(cuò)題(1題)81.下列給定程序中函數(shù)fun的功能是:將tt所指字符串中的小寫字母全部改為對(duì)應(yīng)的大寫字母,其他字符不變。

例如,若輸入“Ab,cD”,則輸出“AB,CD”。

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

注意:部分源程序在文件MODIl.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!

六、程序設(shè)計(jì)題(1題)82.規(guī)定輸入的字符串中只包含字母和。號(hào)。請(qǐng)編寫函數(shù)fun,其功能是:將字符串尾部的。號(hào)全部刪除,前面和中間的*號(hào)不動(dòng)。

參考答案

1.D解析:要想使程序輸出是25,則j-40=25,j=65,而j初值是50,所以填入for循環(huán)中的語句,使引用的數(shù)組元素累加為65-50=15即可。

2.B

3.C

4.B函數(shù)的值只能通過return語句返回主調(diào)函數(shù)。函數(shù)中允許有多個(gè)return語句,但每次只能調(diào)用一個(gè)return語句,因此只能返回一個(gè)函數(shù)值。不返回函數(shù)值的函數(shù),可以明確定義為“空類型”,類型說明符為void。故本題答案為B選項(xiàng)。

5.D

6.D解析:文件系統(tǒng)所管理的數(shù)據(jù)文件基本上是分散的、相互獨(dú)立的,因此相對(duì)于數(shù)據(jù)庫系統(tǒng),以此為基礎(chǔ)的數(shù)據(jù)處理存在3個(gè)缺點(diǎn),數(shù)據(jù)冗余大、數(shù)據(jù)的不一致性、程序與數(shù)據(jù)的相互依賴(簡(jiǎn)稱為數(shù)據(jù)依賴)。注意:文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)各自的特點(diǎn),人工管理階段及數(shù)據(jù)庫系統(tǒng)三代的特點(diǎn)。

7.A

8.B本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。在函數(shù)調(diào)用時(shí),形參是指向?qū)崊⒌闹羔樧兞?,則printf的執(zhí)行結(jié)果為++x;x=3,則3+1=4。

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

10.D繼承是面向?qū)ο蟮姆椒ǖ囊粋€(gè)主要特征,是使用已有的類的定義作為基礎(chǔ)建立新類的定義技術(shù)。廣義的說,繼承是指能夠直接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們,所以說繼承是指類之間共享屬性和操作的機(jī)制。

11.C解析:軟件系統(tǒng)結(jié)構(gòu)的總體設(shè)計(jì)包括:基于功能層次結(jié)構(gòu)建立系統(tǒng)、按功能劃分成模塊的層次結(jié)構(gòu)、確定每個(gè)模塊的功能、建立與已確定的軟件需求的對(duì)應(yīng)關(guān)系、確定模塊間的調(diào)用關(guān)系和模塊間的接口、評(píng)估模塊劃分的質(zhì)量等方面。詳細(xì)設(shè)計(jì)的任務(wù)是:在使用程序設(shè)計(jì)語言編制程序以前,對(duì)所采用算法的邏輯關(guān)系進(jìn)行分析,設(shè)計(jì)出全部必要的過程細(xì)節(jié),并給予清晰的表達(dá)。需求分析是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。需求分析的任務(wù)是發(fā)現(xiàn)需求、求精、建模和定義需求,通常包括:功能需求、性能需求、環(huán)境需求、可靠性需求、安全保密要求、用戶界面需求、資源使用需求、成本消耗需求、開發(fā)進(jìn)度需求等。編程調(diào)試的任務(wù)是診斷和改正程序中潛在的錯(cuò)誤。綜上所述。軟件功能分解只能發(fā)生在總體設(shè)計(jì)階段。

12.D

13.D

14.B“strcmp(S1,S2)”是字符串比較函數(shù),比較規(guī)則是兩個(gè)字符串自左向右逐個(gè)字符相比較(按照ASCII值大?。R?yàn)椤癘K”<“ok”,所以“strcmp(S1,S2)”為負(fù)值。故本題答案為B選項(xiàng)。

15.B

16.Bwhile語句中條件表達(dá)式E的值不為0即真,認(rèn)為滿足條件。這與B選項(xiàng)中表達(dá)式的含義正好相反。故本題答案為B選項(xiàng)。

17.C本題考查swap函數(shù),它的作用是把x、Y所指的內(nèi)容互換,其他的不變,因此當(dāng)執(zhí)行完調(diào)用函數(shù)后,僅僅a與1互換,其他的沒有變。

18.B

19.C對(duì)象的封裝性是指從外面看只能看到對(duì)象的外部特性,而對(duì)象的內(nèi)部,其處理能力的實(shí)行和內(nèi)部狀態(tài)對(duì)外是不可見的,是隱蔽的。

20.A\nC語言中程序中的步驟實(shí)現(xiàn)為:先確定程序中的算法和數(shù)據(jù)結(jié)構(gòu),然后進(jìn)行程序的編碼,再進(jìn)行對(duì)程序的調(diào)試,最后進(jìn)行文檔的整理和記錄。使用這種步驟可以方便程序的編寫以及在完成后提高代碼的重用性。

\n

21.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)

22.非線性結(jié)構(gòu)非線性結(jié)構(gòu)解析:對(duì)于一個(gè)非空的數(shù)據(jù)結(jié)構(gòu),如果同時(shí)滿足下列兩個(gè)條件,即1)有且只有一個(gè)根結(jié)點(diǎn);2)每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件;即為線性結(jié)構(gòu),而二叉樹的結(jié)點(diǎn)可能存在兩個(gè)后件,所以是非線性結(jié)構(gòu)。

23.4545解析:假設(shè)線性表的長(zhǎng)度為n,則在最壞情況下,冒泡排序需要經(jīng)過遍的從前往后掃描和遍的從后往前掃描,需要比較次數(shù)為。

24.br[i]或*(br+i)br[i]或*(br+i)解析:程序中的數(shù)組a是一個(gè)3行4列的二維數(shù)組,一維數(shù)組b用于存放每行的最大數(shù)。在函數(shù)fun中,通過二重for循環(huán)求每行的最大數(shù),外層for循環(huán)用于控制行數(shù),內(nèi)層for循環(huán)用于控制列數(shù),當(dāng)外層循環(huán)執(zhí)行一次時(shí),內(nèi)層循環(huán)則從一行的4個(gè)數(shù)中找出最大數(shù)x,然后將最大值x賦給數(shù)組br,故空格處應(yīng)填br[i]或*(br+i)。

25.算法或程序或流程圖算法或程序或流程圖解析:算法是問題處理方案正確而完整的描述。

26.從定義到本源文件結(jié)束從定義到本源文件結(jié)束解析:C語言規(guī)定,宏名的有效范圍為從定義宏到本源程序結(jié)束。

27.88解析:第1次for循環(huán),i=0,調(diào)用函數(shù)f(2),然后將a的值加1,在f()函數(shù)中,變量c為static類型,所以c=8:第2次for循環(huán),i=1,調(diào)用函數(shù)f(3),然后將a的值加1,調(diào)用函數(shù)f(3)時(shí),a=c++=8,所以k=8。

28.棧頂棧頂解析:棧是限定在表的一端進(jìn)行插入和刪除操作的線性表。在表中,允許插入和刪除的一端叫做“棧頂”,不允許插入和刪除的一端叫做“棧底”。

29.length++i<lengthlength++\r\ni<length解析:第—個(gè)循環(huán)極有可能是計(jì)算串的長(zhǎng)度,在i<=length時(shí)字符才被刪除,被刪除的是從第i個(gè)到笫i+n或最后—個(gè)間的所有字符。刪除前,應(yīng)判斷i<=length。由于已經(jīng)進(jìn)行了-i運(yùn)算,故實(shí)際應(yīng)填入i<length。

30.00解析:在本題中,d=(a>b>c);相當(dāng)于d=(5>4>3);其計(jì)算過程為:先算5>4,結(jié)果為真,得1,即d=(1>3);然后計(jì)算1>3,結(jié)果為假,得0。

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

32.#&#&解析:剛開始時(shí),switch后面的表達(dá)式a>0為真(1),與case1匹配,然后執(zhí)行case1后面的switch語句,表達(dá)式b<0值為0,沒有與其匹配的語句,返回外層,因?yàn)橥鈱記]有break語句,順序執(zhí)行case0后面的switch語句,表達(dá)式“c==5”值為1,與其后面的case1匹配,因此輸出#,遇到break返回外層,又因?yàn)橥鈱記]有break語句,順序執(zhí)行default后的語句,輸出&。

33.28

34.252137252137解析:本題中先定義了整型變量a、b和c,然后分別給賦值a為25,b為八進(jìn)制的025,c為十六進(jìn)制0x25。然后調(diào)用pruntf()函數(shù)將a、b和c分別用十進(jìn)制輸出,且中間用空格隔開,八進(jìn)制025轉(zhuǎn)換為十進(jìn)制的值為21,十六進(jìn)制的0x25轉(zhuǎn)換為十進(jìn)制的值為37,故最后的輸出結(jié)果為252137。

35.66解析:本題第1個(gè)for循環(huán)是為數(shù)組arr元素賦初值。第2個(gè)for循環(huán)是分別用i=0,1,2,3給數(shù)組元素arr[0]、arr[1]、arr[2]、arr[3]賦值,再累加到變量k中,k=0+1+2+3=6。

36.t*10或10*tt*10或10*t解析:本題要求累加一系列有規(guī)律的數(shù),從輸出結(jié)果來看,s保存的是最終結(jié)果,而s在循環(huán)體中,每次累加一個(gè)t,則說明t在5次循環(huán)中分別等于1.12、123、1234、12345;而t每次循環(huán)等于“填空內(nèi)容”加上循環(huán)變量i,又因?yàn)閕在5次循環(huán)中分別等于1、2、3、4,5,所以t每次循環(huán)要加的“填空內(nèi)容”應(yīng)分別為0、10、120,1230,12340,這一系列值正好是前一次t的值的10倍.所以“填空內(nèi)容”應(yīng)是t*10。

37.a[1][1]a[1][1]解析:p是一個(gè)指針數(shù)組,p[0]指向數(shù)組a[1][0]。*(p[0]+1)代表數(shù)組a[1][1]。

38.3123,1,2解析:分析程序,第一個(gè)if語句,a=1,b=2,控制條件a<b成立,則交換a、b的值,此時(shí)a=2,b=1。第二個(gè)if語句,a=2,c=3,控制條件a<c成立,則交換a、c的值,此時(shí)a=3,c=2。

39.-24-24解析:本題考查賦值運(yùn)算符a+=b等價(jià)于a=a+b;a-=a*a等價(jià)于a-a-a*a=4-4*4=-12:a+=a,即a=a+a=-24。

40.6868解析:本題考查如何用指針引用數(shù)組元素。本題先定義了一個(gè)指向字符型數(shù)組str的指針p,指針p指向數(shù)組str的首地址,p+3將指針指向str[3],*(p+3)指的是字符“D”,輸出時(shí)是以“%d,格式輸出的,即輸出其相應(yīng)ASCII碼值68。

41.C解析:軟件測(cè)試的目標(biāo)是在精心控制的環(huán)境下執(zhí)行程序,以發(fā)現(xiàn)程序中的錯(cuò)誤,給出程序可靠性的鑒定。它有3個(gè)方面的重要特征,即測(cè)試的挑剔性、完全測(cè)試的不可能性及測(cè)試的經(jīng)濟(jì)性。其中沒有測(cè)試的可靠性這一說法。注意:軟件測(cè)試與軟件調(diào)試的概念,以及相應(yīng)的方法。

42.C解析:f函數(shù)沒有重復(fù)說明,在main函數(shù)中是對(duì)f函數(shù)聲明,在main函數(shù)外則是對(duì)f函數(shù)的定義。

43.D解析:通過賦初值的方式給一維數(shù)組賦字符串,可以用給一般數(shù)組賦初值的相同方式給一維字符數(shù)組賦字符串,也可以在賦值時(shí)直接賦字符串常量。選項(xiàng)B)和C)后面的'\\0'是多余的,不過也不錯(cuò),在C語言中,系統(tǒng)會(huì)自動(dòng)在字符串的結(jié)尾處加上一個(gè)字符'\\0'作為串的結(jié)束標(biāo)記。

44.A解析:本題考查位運(yùn)算。位運(yùn)算的對(duì)象應(yīng)為二進(jìn)制的形式。7的二進(jìn)制表示為00000111,3的二進(jìn)制表示為00000011,7與3相異或得00000100,即十進(jìn)制數(shù)4,表達(dá)式“~4&3”先進(jìn)行位反操作,再進(jìn)行位與,即11111011&00000011=00000011,即十進(jìn)制數(shù)3。所以應(yīng)輸出為4和3。

45.A解析:/*與*/之間的信息稱為注釋信息,在C語言中,允許在任何能夠插入空格符的位置插入注釋,但C語言的注釋不能進(jìn)行嵌套,故選項(xiàng)A正確:在C語言中,函數(shù)體是從花括號(hào){開始,到花括號(hào)}結(jié)束。但沒有規(guī)定花括號(hào){和}只能作為函數(shù)體定界符,故選項(xiàng)B錯(cuò)誤;選項(xiàng)C中前半句是正確的,C程序由一個(gè)或多個(gè)函數(shù)所組成,但不是所有的函數(shù)都由用戶自己命名,有些函數(shù),比如主函數(shù)main()就不能由用戶來命名,故選C不正確;在C語言中明確規(guī)定每條語句以分號(hào);結(jié)束,分號(hào)是語句不可缺少的一部分,故選項(xiàng)D不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。

46.B解析:本題考查指向數(shù)組元素的指針變量。p=&a[0][0]是把該數(shù)組的第一個(gè)元素a[0][0]的地址賦給指針變量p,a[1][2]是數(shù)組中的第6個(gè)元素,根據(jù)for循環(huán)中的賦值可知,輸出結(jié)果是6。

47.D解析:字符型數(shù)據(jù)在計(jì)算機(jī)內(nèi)部是以ASCII碼存儲(chǔ)的,英文大寫字母和小寫字母在ASCII碼表中都是連續(xù)的,大寫字母A到Z是從65到90,小寫字母a到z是97到122,所以只要變量c大于a并且小于z就能保證其為小寫字母。

48.B解析:本題是switch-case語句的嵌套使用,外層switch語句的第一個(gè)分支(嵌套switch語句)執(zhí)行完后,沒有break;語句,將繼續(xù)執(zhí)行第二個(gè)分支。

49.C解析:“*”號(hào)的優(yōu)先級(jí)比“+”的優(yōu)先級(jí)高,所以先執(zhí)行“*p”;指針p指向的是數(shù)組的首地址,因此*p=a,再加4得'e'。

50.D

51.C解析:本題考查for循環(huán)。第一次循環(huán)前先判斷循環(huán)條件,此時(shí)i=0,j=1,i<j+1成立,循環(huán)第一次;第二次循環(huán)前先判斷循環(huán)條件,此時(shí)i=1,j=0,(j--是先使用j的值再減1),i<j+1不成立,結(jié)束循環(huán)。

52.A解析:p+i是數(shù)組s的第i+1行的首地址,而*(p+i)則是數(shù)組第i+1行第1列的元素的地址,*(p+i)+j則是第i+1行的第j+1列的地址,*(*(p+i)+j)引用的是數(shù)組元素s[i][j]的值。注意:通過建立一個(gè)指針數(shù)組來引用二維數(shù)組元素。

53.C解析:C語言中的關(guān)鍵字有32個(gè)關(guān)鍵字(參見C語言教程),本題中只有C符合題意。

54.C解析:函數(shù)strcmp(字符串1,字符串2)作用是將”字符串1”和”字符串2”進(jìn)行比較,如果“字符串1”》”字符串2”,返回一個(gè)大于0的整數(shù)值;如果“字符串1”<“字符串2”,返回一個(gè)小于0的整數(shù)值;如果”字符串1”=“字符串2”,返回0。函數(shù)strcpy(字符串?dāng)?shù)組名,字符串,[整型表達(dá)式])的作用是將“字符串”的前“整型表達(dá)式”個(gè)字符有入到指定的“字符數(shù)組”中,若省略“整型表達(dá)式”,則將整個(gè)“字符串”存入,字符數(shù)組”中.函數(shù)f()的功能是利用選擇法把一個(gè)具有n行的二維數(shù)組中按行存放的n個(gè)字符串由大到小排序。在主函數(shù)中定義了一個(gè)二維字符數(shù)組p并給它按行賦初值,然后調(diào)用f()函數(shù);把它按行從大到小排列。字符串比較大小的標(biāo)準(zhǔn)是從第一個(gè)字符開始依次向右比較,遇到某一個(gè)字符大,該字符所在的字符串就是較大的字符串。由此可知最大的字符串為“dcdbe”,排序后存放在第一行,其首地址為P[0],在輸出語句輸出的p[0]指向的字符串長(zhǎng)度是5。所以4個(gè)選項(xiàng)中C正確。

55.B解析:選項(xiàng)A和選項(xiàng)D中首先計(jì)算2/5,因?yàn)閮蓚€(gè)計(jì)算分量都是整型,所以結(jié)果為2,與實(shí)際運(yùn)算不符;選項(xiàng)B中因?yàn)槌顺M足交換律,所以2*b放前面和放后面都是一樣的,所以滿足題目要求;選項(xiàng)C中的表達(dá)式等價(jià)于2abcd/5,所以不滿足題目要求。故應(yīng)該選擇B。

56.A解析:在C語言中,“%”運(yùn)算符兩側(cè)的運(yùn)算數(shù)必須是整型。

57.C解析:“||”是或運(yùn)算,它有個(gè)“短路”的特點(diǎn)需特別注意,當(dāng)“||”運(yùn)算符左邊的表達(dá)式的值為真時(shí),則程序就不再對(duì)“||”右邊的表達(dá)式的值進(jìn)行運(yùn)算,而是使得整個(gè)表達(dá)式的值直接為真。

58.B解析:C語言規(guī)定,標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種符號(hào)組成,而且第一個(gè)字符必須是字母或下劃線。另外還需要注意的是關(guān)鍵字不能作標(biāo)識(shí)符。選項(xiàng)A中void,C中for都為關(guān)鍵字,D中2c以字母開頭。

59.A本題考查的是線性單鏈表、雙向鏈表與循環(huán)鏈表的結(jié)構(gòu)及其基本運(yùn)算。\n在鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,存儲(chǔ)數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)空間可以不連續(xù),各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與數(shù)據(jù)元素之間的邏輯關(guān)系可以不一致,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來確定的。故本題答案為A。

60.D

61.B解析:二維數(shù)組的元素可以看成是按矩陣形式存放的,總是先存放第一行的元素,再存放第二行的元素。數(shù)組第一維的下標(biāo)是i,說明它前面還有i行,有i*m個(gè)元素,數(shù)組第二維的下標(biāo)是j,說明它前面還有j列,有j個(gè)元素,所以共有i*m+j個(gè)元素。

62.A表達(dá)式*(pc+5)先將指針向后移動(dòng)5

63.Cm函數(shù)中的X為靜態(tài)局部變量,占用固定的內(nèi)存單元,下一次調(diào)用時(shí)仍可保留上次調(diào)用時(shí)的值。也就是說,如果多次調(diào)用fun函數(shù),x的定義只在第一次調(diào)用時(shí)有效,從第二次調(diào)用開始,x的定義相當(dāng)于不存在,直接使用X的值。主函數(shù)中調(diào)用兩次fun函數(shù)t第一次調(diào)用:X=1,X=x}2=2,s=2;第二次調(diào)用:(直接用上次X的值)x=X·2=4,s=4。因此C選項(xiàng)正確。

64.A

65.Afun函數(shù)將字符串?dāng)?shù)組里字符串從大到小排序,所以結(jié)果為A)。

66.C浮點(diǎn)型占8個(gè)字節(jié),整型占4個(gè)字節(jié),當(dāng)把整型數(shù)據(jù)用浮點(diǎn)型格式輸出時(shí),結(jié)果為0.000000

67.B當(dāng)數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),說明數(shù)據(jù)A按關(guān)鍵字值基本有序。在待排序數(shù)據(jù)基本有序的情況下,采用插入排序所用的時(shí)間最少。

68.B

69.C

70.A\r\n二分法又叫折半(對(duì)分)查找法,只適合于順序存儲(chǔ)的有序表(是指線性表中的元素按值非遞減排列)。二分法的基本思想是:設(shè)有序線性表的長(zhǎng)度為n,被查元素為X,則二分查找的方法如下:

將X與線性表的中間項(xiàng)進(jìn)行比較:若中間項(xiàng)的值等于x,則說明找到,查找結(jié)束;若x小于中間項(xiàng)的值,則在線性表的前半部分(即中間項(xiàng)以前的部分)以相同的方法進(jìn)行查找;若X大于中間項(xiàng)的值,則在線性表的后半部分(即中間項(xiàng)以后的部分)以相同的方法進(jìn)行查找、這個(gè)過程-直進(jìn)行到查找成功或于表長(zhǎng)度為0,(說明線性表中沒有這個(gè)元素為止)順序存儲(chǔ)的線性袁在計(jì)算機(jī)中-般用一個(gè)-維數(shù)組來表示,在數(shù)組中我們可以通過數(shù)組名和下標(biāo)來對(duì)數(shù)組中的任意一個(gè)元素進(jìn)行訪問,而在鏈表(不管是有序還是無序)中,要對(duì)元素進(jìn)行訪問必須從表頭結(jié)點(diǎn)開始,順著鏈條一個(gè)一個(gè)結(jié)點(diǎn)進(jìn)行搜索,因此選項(xiàng)A正確

71.B

72.C

73.C

74.B

75.A解析:結(jié)構(gòu)化程序的概念首先是從以往編程過程中無限制地使用轉(zhuǎn)移語句而提出的。轉(zhuǎn)移語句可以使程序的控制流程強(qiáng)制性地轉(zhuǎn)向程序的任一處,在傳統(tǒng)流程圖中,就是用上節(jié)我們提到的“很隨意”的流程線來描述這種轉(zhuǎn)移功能。如果一個(gè)程序中多處出現(xiàn)這種轉(zhuǎn)移情況,將會(huì)導(dǎo)致程序流程無序可尋,程序結(jié)構(gòu)雜亂無章,這樣的程序是令人難以理解和接受的,并且容易出錯(cuò)。尤其是在實(shí)際軟件產(chǎn)品的開發(fā)中,更多的追求軟件的可讀性和可修改性,象這種結(jié)構(gòu)和風(fēng)格的程序是不允許出現(xiàn)的。

76.D

77.B

78.B

79.D

\n所謂二叉樹的前序遍歷是指先訪問根結(jié)點(diǎn),訪問左子樹,最后訪問右子樹,本題中序?yàn)镈YBEAFCZX,后序?yàn)閅DEBFZXCA。

\n

80.C

81.

(1)if((tt[i]>=’a’)&&(tt[i]<=‘z’))

(2)tt[i]一=32;

【考點(diǎn)分析】

本題考查:if語句條件表達(dá)式;小寫字母轉(zhuǎn)大寫字母的方法。

【解題思路】

(1)分析本題可知,要判斷字符是否為小寫字母,即判斷其是否在a—z之間,所以這里需要進(jìn)行連續(xù)的比較,用&&。(2)從ASCIl碼表中可以看出,小寫字母的ASCIl碼值比對(duì)應(yīng)大寫字母的ASCIl值大32。將字符串中的小寫字母改為大寫字母的方法是:從字符串第一個(gè)字符開始,根據(jù)ASCIl碼值判斷該字母是不是小寫字母,若是,則ASCIl碼值減32即可。

82.

voidfun(char*a){

while(*a!=’、0。)

a++:

a一一;/*指針a指向字符串的尾部*/while(}a==’*。)

a一一;/·指針a指向最后一個(gè)字母*/

*(a+1)=’、0’;/*在字符串最后加上結(jié)束標(biāo)志符·/

【考點(diǎn)分析】

本題考查:刪除字符串尾部*號(hào);刪除的主要思想是把不刪除的字符保留起來。

【解題思路】

對(duì)于一個(gè)字符串要?jiǎng)h除其尾部的*號(hào),只需要在最后一個(gè)不是*號(hào)的字符后面加上結(jié)束符號(hào)‘、0’。具體操作為:首先找到字符串的結(jié)尾,然后從最后一個(gè)字符開始往前逐個(gè)判斷是否為*號(hào),直到找到非·號(hào)字符為止。最后在該字符后面加上結(jié)束符號(hào)’\0。2022-2023年江西省新余市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.若希望下列的程序運(yùn)行后輸出25,程序空白處的正確選項(xiàng)是()。

main()

{inti,j=50,a[]={7,4,10,5,8};

for()

j+=a[i];

primf("%d,j-40);

}

A.i=1;i<4;++iB.i=1;i<3;++iC.i=4;i>2;i--D.i=2;i<4;++i

2.在一個(gè)有頭結(jié)點(diǎn)的鏈隊(duì)列中,假設(shè)f和r分別為隊(duì)首和隊(duì)尾指針,則插入s所指的結(jié)點(diǎn)的運(yùn)算是()。

A.f->next=s;f=s;

B.r->next=s;r=s;

C.s->next=r;r=s;

D.s->next=f;f=s;

3.若x,i,j和k都是int型變量,則執(zhí)行下面表達(dá)式后x的值為()。x=(i=4,j=16,k=32)

A.4B.16C.32D.52

4.下列敘述中錯(cuò)誤的是()。

A.用戶定義的函數(shù)中可以沒有return語句

B.用戶定義的函數(shù)中可以有多個(gè)return語句,以便調(diào)用一次返回多個(gè)函數(shù)值

C.用戶定義的函數(shù)中若沒有return語句,則應(yīng)當(dāng)定義函數(shù)為void類型

D.函數(shù)的return語句中可以沒有表達(dá)式

5.

6.相對(duì)于數(shù)據(jù)庫系統(tǒng),文件系統(tǒng)的主要缺陷有數(shù)據(jù)關(guān)聯(lián)差、數(shù)據(jù)不一致性和()。

A.可重用性差B.安全性差C.非持久性D.冗余性

7.若用一個(gè)大小為6的數(shù)組來實(shí)現(xiàn)循環(huán)隊(duì)列,且當(dāng)前rear和front的值分別為0和3,當(dāng)從隊(duì)列中刪除一個(gè)元素,再加入兩個(gè)元素后,rear和front的值分別為()

A.2和4B.1和5C.4和2D.5和1

8.下列程序的輸出結(jié)果是()。#include<stdio.h>voidp(int*x){printf("%d¨,++*x);}voidmain(){inty=3;p(&y);}A.3B.4C.2D.5

9.有下列程序:

main()

{inty=20;

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

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

}

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

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

10.面向?qū)ο蠓椒ㄖ?,繼承是指()。

A.一組對(duì)象所具有的相似性質(zhì)B.一個(gè)對(duì)象具有另一個(gè)對(duì)象的性質(zhì)C.各對(duì)象之間的共同性質(zhì)D.類之間共享屬性和操作的機(jī)制

11.在結(jié)構(gòu)化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是______。

A.詳細(xì)設(shè)計(jì)B.需求分析C.總體設(shè)計(jì)D.編程調(diào)試

12.

13.線處應(yīng)填入().A.b[i++]B.b[i]++C.b[i+=2]D.b[i]+=2

14.若有定義語句“char*s1=“OK”,*s2=“ok”;”,以下選項(xiàng)中,能夠輸出“OK”的語句是()。

A.if(strcmp(s1,s2)!=0)puts(s2);

B.if(strcmp(s1,s2)!=0)puts(s1);

C.if(strcmp(s1,s2)==1)puts(s1);

D.if(strcmp(s1,s2)==0)puts(s1);

15.設(shè)ch是char型變量,值為'A',則表達(dá)式ch=(ch>='A'&&ch<='Z')?ch+32:ch的值是()。

A.ZB.aC.zD.A

16.在以下給出的表達(dá)式中,與“while(E)”中的“(E)”不等價(jià)的表達(dá)式是()。

A.(E>0||E<0)B.(E==0)C.(!E==0)D.(E!=0)

17.有以下程序:voidswap(char*x,char*y){chart;t=*x;*x=*y;*y=t;}main{char*s1="abe",*s2="123":swap(s1,s2);printf("%s,%s\n",s1,s2);}程序執(zhí)行后的輸出結(jié)果是()。A.123,abeB.abc.123C.1bc,a23D.321,cba

18.對(duì)初始狀態(tài)為遞增序列的數(shù)組按遞增順序排序,最省時(shí)間的是插入排序算法,最費(fèi)時(shí)間的算法是()

A.堆排序B.快速排序C.插入排序D.歸并排序

19.下列描述錯(cuò)誤的是()。

A.繼承分為多重繼承和單繼承

B.對(duì)象之問的通信靠傳遞消息來實(shí)現(xiàn)

C.在外面看不到對(duì)象的內(nèi)部特征是基于對(duì)象的“模塊獨(dú)立性好”這個(gè)特征

D.類是具有共同屬性、共同方法的對(duì)象的集合

20.針對(duì)簡(jiǎn)單程序設(shè)計(jì),以下敘述的實(shí)施步驟順序正確的是()。

A.確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試、整理文檔

B.編碼、確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、整理文檔

C.整理文檔、確定算法和數(shù)據(jù)結(jié)構(gòu)、編碼、調(diào)試

D.確定算法和數(shù)據(jù)結(jié)構(gòu)、調(diào)試、編碼、整理文檔

二、2.填空題(20題)21.Jackson結(jié)構(gòu)化程序設(shè)計(jì)方法是英國(guó)的M.Jackson提出的,它是一種面向______的設(shè)計(jì)方法。

22.按照邏輯結(jié)構(gòu)分類,數(shù)據(jù)結(jié)構(gòu)可分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),二叉樹屬于______。

23.對(duì)長(zhǎng)度為10的線性表進(jìn)行冒泡排序,最壞情況下需要比較的次數(shù)為【】。

24.以下程序中,fun函數(shù)的功能是求3行4列二維數(shù)組每行元素中的最大值。請(qǐng)?zhí)羁铡?/p>

#include<stdio,h>

voidfun(int,int,int(*)[4],int*);

main()

{inta[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;

fun(3,4,a,b);

for(i=0;i<3;i++)printf("%4d",b[i]);

prinff("\n");

}

voidfun(intm,intn,intar[][4],int*br)

{inti,j,x;

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

{x=ar[i][0];'

for(j=0;j<n;j++)if(x<ar[i][j])x=ar[i][j];

【】=x;

}

}

25.問題處理方案的正確而完整的描述稱為______。

26.#define命令出現(xiàn)在程序中函數(shù)的外面,宏名的有效范圍為______。

27.下列程序執(zhí)行輸出的結(jié)果是______。

#include<stdio.h>

f(intA)

{intb=0;

staticc=7;

a=c++;b++;

return(A);

}

main()

{inta=2,i,k;

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

k=f(a++);

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

}

28.棧中允許進(jìn)行插入和刪除的一端叫做______。

29.函數(shù)delete(s,i,n)的作用是從字符串s中刪除從第i個(gè)字符開始的n個(gè)字符,請(qǐng)?zhí)羁铡?/p>

voiddelete(chars[],inti,intn)

{intj,k,length=0;

whiles(length])

【】;

-i;

j=i;

}

if(【】)

{k=i+n;

if(i+n<=length)

while(k<length)

s[j++]=s[k++];

s[j]='\0';

}

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

#include<stdio.h>

main()

{inta=5,b=4,c=3,d;

d=(a>b>c);

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

}

31.數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括五個(gè)部分,即數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、【】和處理過程。

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

main()

(inta=2,b=7,c=5;

switch(a>0)

{case1:switch(b<0)

{case1:switch(");break;

case2:printf("!");break;

}

case0:switch(c==5)

{case0:printf("*");break;

case1:printf("#");break;

case2:printf("$");break;

}

default:printf("&");

}

printf("\n");

}

33.設(shè)a,b,c為整型數(shù),且a=2,b=3,c=4,則執(zhí)行完以下語句后,a的值是【】。

a*=16+(b++)-(++c);

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

main()

{

inta,b,c;

a=25;

b=025;

c=0x25;

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

}

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

main()

{intarr[10],i,k=0;

for(i=0;i<10;i++)arr[i]=i;

for(i=0;i<4;i++)k+=arr[i]=i;

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

}

36.以下程序的功能是計(jì)算:s=1+12+123+1234+12345。請(qǐng)?zhí)羁铡?/p>

main()

{intt=0,s=0,i;

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

{t=i+______;s=s+t;}

printf("s=%d\n",s);

}

37.設(shè)有以下定義和語句:

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

p[0]=a[1];

則*(p[0]+1)所代表的數(shù)組元素是【】。

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

main()

{inta=1,b=2,c=3,t=0;

if(a<B){t=a;a=b;b=t;}

if(a<C){t=a;a=c;c=t;}

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

}

39.若a是血型變量,且a的初值為4,則計(jì)算a+=a-=a*a表達(dá)式后a的值為______。

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

charstr口="ABCD",*p=str;

printf("%d\n",*(p+3));

三、1.選擇題(20題)41.下列敘述中,不屬于測(cè)試的特征的是

A.測(cè)試的挑剔性B.完全測(cè)試的不可能性C.測(cè)試的可靠性D.測(cè)試的經(jīng)濟(jì)性

42.若有以下程序:#include<stdio.h>voidf(intn);main(){voidf(intn);f(5);}voidf(intn){printf("%d\n",n);}則以下敘述中不正確的是()。

A.若只在主函數(shù)中對(duì)函數(shù)f進(jìn)行說明,則只能在主函數(shù)中正確調(diào)用函數(shù)f

B.若在主函數(shù)前對(duì)函數(shù)f進(jìn)行說明,則在主函數(shù)和其后的其他函數(shù)中都可以正確調(diào)用函數(shù)f

C.對(duì)于以上程序,編譯時(shí)系統(tǒng)會(huì)提示出錯(cuò)信息:對(duì)f函數(shù)重復(fù)說明

D.函數(shù)f無返回值,所以可用void將其類型定義為無返回值型

43.下列選項(xiàng)中錯(cuò)誤的說明語句是

A.chara[]={'t','o','y','o','u','\0'};

B.chara[]={"toyou\0"};

C.chara[]="toyou\0";

D.chara[]='toyou\0';

44.以下程序的功能是進(jìn)行位運(yùn)算:main(){unsignedchara,b;a=7^3;b=~4&3;printf("%d%d\n",a,B);}程序運(yùn)行后的輸出結(jié)果是()。

A.43B.73C.70D.40

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

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

B.花括號(hào)"{"和"}"只能作為函數(shù)體的定界符

C.構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名

D.分號(hào)是C語句之間的分隔符,不是語句的一部分

46.有以下程序:#include<stdio.h>main(){inta[3][3],*p,i;p=&a[0][0];for(i=0;i<9;i++)p[i]=i+1;printf("%d\n",a[1][2]);}程序運(yùn)行后的輸出結(jié)果是()。

A.3B.6C.9D.2

47.若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是______。

A.'a'<=c<='z'

B.(c>='a')||(c<='z')

C.('a'<=c)and('z'>=c)

D.(c>='a')&&(c<='z')

48.設(shè)有說明:inta=1,b=0;,則執(zhí)行以下語句的輸出結(jié)果是______。switch(a){case1:switch(b){case0:printf("**0**\n");break;case1:printf("**1*\n");break;}case2:printf("**2**\n");break;}

A.**0**B.**0****2**C.**0****1****2**D.switch語句中存在語法錯(cuò)誤

49.下面程序的輸出結(jié)果是()。#include<stdio.h>main(){chara[]={'a','b','c','d','f','g'},*p;p=a;printf("%c\n",*p+4);}

A.aB.bC.eD.f

50.設(shè)a和b均為int型變量,且a=6,b=11,則能使值為3的表達(dá)式是()。

A.b%(a%4)B.b%(a-a%5)C.b%a-a%5D.(b%B)-(a%4)

51.下列循環(huán)體的執(zhí)行次數(shù)是()。#include<stdio.h>main(){inti,j;for(i=0j=1;i<j+1;i+=1,j--)printf("%d\n",j);}

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

52.若在以下定義和賦值語句,則才s數(shù)組的第i行第j列(假設(shè)i,j已正確說明并賦值)元素地址的合法引用為ints[2][3]={0},(*p)[3];p=s;

A.*(*(p+i)+j)B.*(p[i]+j)C.(p+i)+jD.(*(p+i))[j]

53.下面一組中都是C語言關(guān)鍵字的是______。

A.doubleIntfor

B.mainwhilegoto

C.volatilebreakstatic

D.mallocsizeofnew

54.以下程序中函數(shù)f的功能是將n個(gè)字符串按由大到小的順序進(jìn)行排序。#include<string.h>voidf(charp[][10],intn){chart[20];inti,j;for(i=0;i<n-1;i++)for(j=i+l;j<n;j++)if(strcmp(p[i],p[j])<0){strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[j],t);}}main(){charp[][lO]-{"abc","aabdfg","abbd","dcdbe","cd"};inti;f(p,5);printf("%dkn",strlen(p[0]));}程序運(yùn){亍后的輸出結(jié)果是

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

55.a、b、c、d變量均為float類型且已正確賦值,下列選項(xiàng)中與數(shù)學(xué)式子“2ab/(5cd)”等價(jià)的C語言表達(dá)式是()。

A.2/5*a/c*d/b

B.a/(5*c*d)*(2*b)

C.2*a*b/5*c*d

D.2/5*a*d*(1/c*d)

56.在C語言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是()。

A.%B.\C.%和\D.**

57.下列程序的輸出結(jié)果,是______。main(){inta=0,b=0,c=0;if(++a>0||++b>0)++c;printf("\na=%d,b=%d,c=%d",a,b,c);}

A.a=0,b=0,c=0B.a=1,b=1,c=1C.a=1,b=0,c=1D.a=0,b=1,c=1

58.可以在C語言中用做用戶標(biāo)識(shí)符的是______。

A.voiddefineWORDB.as_b3_123IfC.for-abccasD.2cDoSIG

59.下列對(duì)于線性鏈表的描述中正確的是()

A.存儲(chǔ)空間不一定是連續(xù),且各元素的存儲(chǔ)順序是任意的

B.存儲(chǔ)空間不一定是連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面

C.存儲(chǔ)空間必須連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面

D.存儲(chǔ)空間必須連續(xù),且各元素的存儲(chǔ)順序是任意的

60.設(shè)有如下的程序段:inta[]=(1,2,3,4,5),*t;t=a;則下列說法正確的是()

A.a和t的內(nèi)容相同B.a數(shù)組的長(zhǎng)度和t所指的字符串長(zhǎng)度相等C.a和t完全相同D.指針變量t指向數(shù)組a的第一個(gè)元素

四、選擇題(20題)61.若二維數(shù)組a有m列,則在a[i][j]前的元素個(gè)數(shù)為()。

A.i*m+j-1B.i*m+jC.J*m+iD.i*m+j+1

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

A.zB.0C.元素Ch[5]地址D.字符y的地址

63.有以下程序:

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

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

64.

65.有以下程序

66.若有以下說明和定義,以下敘述中錯(cuò)誤的是(

)。uniondt{

int

a;char

b;double

c;}data;A.兩個(gè)共用體變量之間可以相互賦值B.變量data所占內(nèi)存字節(jié)數(shù)與成員c所占字節(jié)數(shù)相等C.程序段:data.a=5;printf("%f\n",data.c);輸出結(jié)果為5.000000D.共用體在初始化時(shí)只能用第一個(gè)成員的類型進(jìn)行初始化

67.已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為了節(jié)省時(shí)間,應(yīng)采用的算法是()。

A.堆排序B.直接插入排序C.快速排序D.直接選擇排序

68.

69.

70.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()。

A.順序存儲(chǔ)的有序線性表B.線性鏈表C.二叉鏈表D.有序線性鏈表

71.

72.

73.

74.

75.有三個(gè)關(guān)系R、S和T如下:

則由關(guān)系R和S得到關(guān)系T的操作是()。

A.自然連接B.交C.投影D.并

76.

77.

78.

79.有下列二叉樹.對(duì)此二叉樹前序遍歷的結(jié)果為()。

A.ACFXDBEYZB.ABEFXYZCDC.ABCDEFXY7D.ABDYECFXZ

80.

五、程序改錯(cuò)題(1題)81.下列給定程序中函數(shù)fun的功能是:將tt所指字符串中的小寫字母全部改為對(duì)應(yīng)的大寫字母,其他字符不變。

例如,若輸入“Ab,cD”,則輸出“AB,CD”。

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

注意:部分源程序在文件MODIl.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!

六、程序設(shè)計(jì)題(1題)82.規(guī)定輸入的字符串中只包含字母和。號(hào)。請(qǐng)編寫函數(shù)fun,其功能是:將字符串尾部的。號(hào)全部刪除,前面和中間的*號(hào)不動(dòng)。

參考答案

1.D解析:要想使程序輸出是25,則j-40=25,j=65,而j初值是50,所以填入for循環(huán)中的語句,使引用的數(shù)組元素累加為65-50=15即可。

2.B

3.C

4.B函數(shù)的值只能通過return語句返回主調(diào)函數(shù)。函數(shù)中允許有多個(gè)return語句,但每次只能調(diào)用一個(gè)return語句,因此只能返回一個(gè)函數(shù)值。不返回函數(shù)值的函數(shù),可以明確定義為“空類型”,類型說明符為void。故本題答案為B選項(xiàng)。

5.D

6.D解析:文件系統(tǒng)所管理的數(shù)據(jù)文件基本上是分散的、相互獨(dú)立的,因此相對(duì)于數(shù)據(jù)庫系統(tǒng),以此為基礎(chǔ)的數(shù)據(jù)處理存在3個(gè)缺點(diǎn),數(shù)據(jù)冗余大、數(shù)據(jù)的不一致性、程序與數(shù)據(jù)的相互依賴(簡(jiǎn)稱為數(shù)據(jù)依賴)。注意:文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)各自的特點(diǎn),人工管理階段及數(shù)據(jù)庫系統(tǒng)三代的特點(diǎn)。

7.A

8.B本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。在函數(shù)調(diào)用時(shí),形參是指向?qū)崊⒌闹羔樧兞?,則printf的執(zhí)行結(jié)果為++x;x=3,則3+1=4。

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

10.D繼承是面向?qū)ο蟮姆椒ǖ囊粋€(gè)主要特征,是使用已有的類的定義作為基礎(chǔ)建立新類的定義技術(shù)。廣義的說,繼承是指能夠直接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們,所以說繼承是指類之間共享屬性和操作的機(jī)制。

11.C解析:軟件系統(tǒng)結(jié)構(gòu)的總體設(shè)計(jì)包括:基于功能層次結(jié)構(gòu)建立系統(tǒng)、按功能劃分成模塊的層次結(jié)構(gòu)、確定每個(gè)模塊的功能、建立與已確定的軟件需求的對(duì)應(yīng)關(guān)系、確定模塊間的調(diào)用關(guān)系和模塊間的接口、評(píng)估模塊劃分的質(zhì)量等方面。詳細(xì)設(shè)計(jì)的任務(wù)是:在使用程序設(shè)計(jì)語言編制程序以前,對(duì)所采用算法的邏輯關(guān)系進(jìn)行分析,設(shè)計(jì)出全部必要的過程細(xì)節(jié),并給予清晰的表達(dá)。需求分析是指用戶對(duì)目標(biāo)軟件系統(tǒng)在功能、行為、性能、設(shè)計(jì)約束等方面的期望。需求分析的任務(wù)是發(fā)現(xiàn)需求、求精、建模和定義需求,通常包括:功能需求、性能需求、環(huán)境需求、可靠性需求、安全保密要求、用戶界面需求、資源使用需求、成本消耗需求、開發(fā)進(jìn)度需求等。編程調(diào)試的任務(wù)是診斷和改正程序中潛在的錯(cuò)誤。綜上所述。軟件功能分解只能發(fā)生在總體設(shè)計(jì)階段。

12.D

13.D

14.B“strcmp(S1,S2)”是字符串比較函數(shù),比較規(guī)則是兩個(gè)字符串自左向右逐個(gè)字符相比較(按照ASCII值大?。?。因?yàn)椤癘K”<“ok”,所以“strcmp(S1,S2)”為負(fù)值。故本題答案為B選項(xiàng)。

15.B

16.Bwhile語句中條件表達(dá)式E的值不為0即真,認(rèn)為滿足條件。這與B選項(xiàng)中表達(dá)式的含義正好相反。故本題答案為B選項(xiàng)。

17.C本題考查swap函數(shù),它的作用是把x、Y所指的內(nèi)容互換,其他的不變,因此當(dāng)執(zhí)行完調(diào)用函數(shù)后,僅僅a與1互換,其他的沒有變。

18.B

19.C對(duì)象的封裝性是指從外面看只能看到對(duì)象的外部特性,而對(duì)象的內(nèi)部,其處理能力的實(shí)行和內(nèi)部狀態(tài)對(duì)外是不可見的,是隱蔽的。

20.A\nC語言中程序中的步驟實(shí)現(xiàn)為:先確定程序中的算法和數(shù)據(jù)結(jié)構(gòu),然后進(jìn)行程序的編碼,再進(jìn)行對(duì)程序的調(diào)試,最后進(jìn)行文檔的整理和記錄。使用這種步驟可以方便程序的編寫以及在完成后提高代碼的重用性。

\n

21.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)

22.非線性結(jié)構(gòu)非線性結(jié)構(gòu)解析:對(duì)于一個(gè)非空的數(shù)據(jù)結(jié)構(gòu),如果同時(shí)滿足下列兩個(gè)條件,即1)有且只有一個(gè)根結(jié)點(diǎn);2)每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件;即為線性結(jié)構(gòu),而二叉樹的結(jié)點(diǎn)可能存在兩個(gè)后件,所以是非線性結(jié)構(gòu)。

23.4545解析:假設(shè)線性表的長(zhǎng)度為n,則在最壞情況下,冒泡排序需要經(jīng)過遍的從前往后掃描和遍的從后往前掃描,需要比較次數(shù)為。

24.br[i]或*(br+i)br[i]或*(br+i)解析:程序中的數(shù)組a是一個(gè)3行4列的二維數(shù)組,一維數(shù)組b用于存放每行的最大數(shù)。在函數(shù)fun中,通過二重for循環(huán)求每行的最大數(shù),外層for循環(huán)用于控制行數(shù),內(nèi)層for循環(huán)用于控制列數(shù),當(dāng)外層循環(huán)執(zhí)行一次時(shí),內(nèi)層循環(huán)則從一行的4個(gè)數(shù)中找出最大數(shù)x,然后將最大值x賦給數(shù)組br,故空格處應(yīng)填br[i]或*(br+i)。

25.算法或程序或流程圖算法或程序或流程圖解析:算法是問題處理方案正確而完整的描述。

26.從定義到本源文件結(jié)束從定義到本源文件結(jié)束解析:C語言規(guī)定,宏名的有效范圍為從定義宏到本源程序結(jié)束。

27.88解析:第1次for循環(huán),i=0,調(diào)用函數(shù)f(2),然后將a的值加1,在f()函數(shù)中,變量c為static類型,所以c=8:第2次for循環(huán),i=1,調(diào)用函數(shù)f(3),然后將a的值加1,調(diào)用函數(shù)f(3)時(shí),a=c++=8,所以k=8。

28.棧頂棧頂解析:棧是限定在表的一端進(jìn)行插入和刪除操作的線性表。在表中,允許插入和刪除的一端叫做“棧頂”,不允許插入和刪除的一端叫做“棧底”。

29.length++i<lengthlength++\r\ni<length解析:第—個(gè)循環(huán)極有可能是計(jì)算串的長(zhǎng)度,在i<=length時(shí)字符才被刪除,被刪除的是從第i個(gè)到笫i+n或最后—個(gè)間的所有字符。刪除前,應(yīng)判斷i<=length。由于已經(jīng)進(jìn)行了-i運(yùn)算,故實(shí)際應(yīng)填入i<length。

30.00解析:在本題中,d=(a>b>c);相當(dāng)于d=(5>4>3);其計(jì)算過程為:先算5>4,結(jié)果為真,得1,即d=(1>3);然后計(jì)算1>3,結(jié)果為假,得0。

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

32.#&#&解析:剛開始時(shí),switch后面的表達(dá)式a>0為真(1),與case1匹配,然后執(zhí)行case1后面的switch語句,表達(dá)式b<0值為0,沒有與其匹配的語句,返回外層,因?yàn)橥鈱記]有break語句,順序執(zhí)行case0后面的switch語句,表達(dá)式“c==5”值為1,與其后面的case1匹配,因此輸出#,遇到break返回外層,又因?yàn)橥鈱記]有break語句,順序執(zhí)行default后的語句,輸出&。

33.28

34.252137252137解析:本題中先定義了整型變量a、b和c,然后分別給賦值a為25,b為八進(jìn)制的025,c為十六進(jìn)制0x25。然后調(diào)用pruntf()函數(shù)將a、b和c分別用十進(jìn)制輸出,且中間用空格隔開,八進(jìn)制025轉(zhuǎn)換為十進(jìn)制的值為21,十六進(jìn)制的0x25轉(zhuǎn)換為十進(jìn)制的值為37,故最后的輸出結(jié)果為252137。

35.66解析:本題第1個(gè)for循環(huán)是為數(shù)組arr元素賦初值。第2個(gè)for循環(huán)是分別用i=0,1,2,3給數(shù)組元素arr[0]、arr[1]、arr[2]、arr[3]賦值,再累加到變量k中,k=0+1+2+3=6。

36.t*10或10*tt*10或10*t解析:本題要求累加一系列有規(guī)律的數(shù),從輸出結(jié)果來看,s保存的是最終結(jié)果,而s在循環(huán)體中,每次累加一個(gè)t,則說明t在5次循環(huán)中分別等于1.12、123、1234、12345;而t每次循環(huán)等于“填空內(nèi)容”加上循環(huán)變量i,又因?yàn)閕在5次循環(huán)中分別等于1、2、3、4,5,所以t每次循環(huán)要加的“填空內(nèi)容”應(yīng)分別為0、10、120,1230,12340,這一系列值正好是前一次t的值的10倍.所以“填空內(nèi)容”應(yīng)是t*10。

37.a[1][1]a[1][1]解析:p是一個(gè)指針數(shù)組,p[0]指向數(shù)組a[1][0]。*(p[0]+1)代表數(shù)組a[1][1]。

38.3123,1,2解析:分析程序,第一個(gè)if語句,a=1,b=2,控制條件a<b成立,則交換a、b的值,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論