2021年海南省三亞市全國計算機等級考試C語言程序設計真題二卷(含答案)_第1頁
2021年海南省三亞市全國計算機等級考試C語言程序設計真題二卷(含答案)_第2頁
2021年海南省三亞市全國計算機等級考試C語言程序設計真題二卷(含答案)_第3頁
2021年海南省三亞市全國計算機等級考試C語言程序設計真題二卷(含答案)_第4頁
2021年海南省三亞市全國計算機等級考試C語言程序設計真題二卷(含答案)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2021年海南省三亞市全國計算機等級考試C語言程序設計真題二卷(含答案)學校:________班級:________姓名:________考號:________

一、單選題(20題)1.有以下程序main(){intnum[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j;for(i=0;i<4;i++){for(j=0;j<=i;j++)printf("%4c",");for(j=______;j<4;j++)printf("%4d",num[i][j]);prrintf("\n");}}若要按以下形式輸出數(shù)組右上半三角1234678111216則在程序下劃線處應填入的是

A.i-1B.iC.i+1D.4-i

2.在具有101個元素的順序表中查找值為x的元素結點時,平均比較元素的次數(shù)為()。

A.50B.51C.100D.101

3.在具有n個結點的單鏈表中,實現(xiàn)()的操作,其算法的時間復雜度是O。

A.求鏈表的第i個結點B.在地址為P的結點之后插入一個結點C.刪除表頭結點D.刪除地址為P的結點的后繼結點

4.

下列程序的輸出結果是()。

#include<stdio.h>

main

{inta=0,i;

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

{switch(i)

{case0:

case3:a+=1;

case1;

case2:a+=2;

default:a+=3;

}

}

printf("%d",a);

}

A.19B.1C.6D.8

5.是哈希查找的沖突處理方法()。

A.求余法B.平均取中法C.二分法D.開放地址法

6.以下程序的輸出結果是______。main(){inta[4][4]={{1,3,5},{2,4,6},{3,5,7}};printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1];a[3][0]);}

A.650B.1470C.5430D.輸出值不定

7.若有定義“charch;inta;doubled;”,當輸入為12345678910.36時,以下選項中能給各個變量正確賦值的是()。

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);

8.考慮函數(shù)原型voidtest(inta,intb=7,charz='*'),下面的函數(shù)調用中,屬于不合法調用的是()。

A.test(5)B.test(5,8)C.test(6,'#')D.test(0,0,'*')

9.有以下程序:voidsum(inta[]){a[0]=a[-1]+a[1];}main(){inta[10]={1,2,3,4,5,6,7,8,9,10};sum(&a[2]);printf("%d\n",a[2]);}程序運行后的輸出結果是()。

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

10.對一個算法的評價,不包括()方面的內容。

A.健壯性和可讀性B.并行性C.正確性D.時空復雜度

11.設計一個判別表達式中左、右括號是否配對出現(xiàn)的算法,采用()數(shù)據(jù)結構最佳。A.線性表的順序存儲結構B.隊列C.線性表的鏈式存儲結構D.棧

12.有以下程序:#include<stdio,h>main(){intk=5,n=0;while(k>0){switch(k){default:break;case1:n+=k;case2:case3:n+=k;}k--;printf("%d\n",n);}程序運行后的輸出結果是()。

A.0B.4C.6D.7

13.鏈表不具有的特點是()。

A.插入、刪除不需要移動元素B.可隨機訪問任一元素C.不必事先估計存儲空間D.所需空間與線性長度成正比

14.已知字符A的ASCⅡ代碼值是65,字符變量c1的直是A,c2的值是D。執(zhí)行語句printf("%d,%d",c1,c2-2);后,輸出結果是()。

A.A,BB.A,68C.65,66D.65,68

15.有以下程序:程序運行后的輸出結果是()。

A.5B.2C.3D.8

16.下面軟件中,屬中應用軟件的是()

A.UnixB.人事管理系統(tǒng)C.數(shù)據(jù)庫管理理系統(tǒng)D.DOS

17.下而程序的輸出結果是()。

A)32

B)26

C)24

D)4

18.以下程序是用來計算兩個非負數(shù)之間的最大公約數(shù):我們假設x,y中最大的那個數(shù)的長度為n,基本運算時間復雜度為O(1),那么該程序的時間復雜度為()A.O(1)B.O(logn)C.O(n)D.O(n^2)

19.以下程序的輸出結果是()。main{charw[][10]={"ABCD","EFGH","IJKL","MNOP"),K;for(k=1;k<3;k++)printf("%s\n",w[k]);A.ABCDFGHKLB.ABCDEFGUC.EFGJKOD.EFGHUKL

20.以下語句中,正確制作電子郵件鏈接的是()。

二、2.填空題(20題)21.軟件維護活動包括以下幾類:改正性維護、適應性維護、【】維護和預防性維護o

22.設C語言中,一個int型數(shù)據(jù)在內存中占兩個字節(jié),則int型數(shù)據(jù)的取值范圍為【】。

23.若定義#definePI3.14159,則執(zhí)行完下列程序后輸出結果是______。

#definePI3.14159;printf("PI=%f",PI);

24.用以下程序把從鍵盤輸入的字符存放到一個文件中,用字符#作為結束符,請按題意要求填空完善程序。

#include<stdio.h>

main()

{FILE*fp;

charch,fname[10];

printf("Inputthenameoffile\n");

gets(fname);

if(fp=fopen(【】))==NULL)

{printf("can'topen\n");

【】;

}

while((ch=getchar())!='#')

fputc(【】);

fclose(fp);

}

25.如果一個工人可管理多個設備,而一個設備只被一個工人管理,則賣體“工人”與實體“設備”之間存在【】關系。

26.以下程序的輸出結果是【】。

#defineMCRA(m)2*m

#defineMCRB(n,m)2*MCRA(n)+m

main()

{

inti=2,j=3;

printf("%d\n",MCRB(j,MCRA(i)));

}

27.層次模型的典型代表是IBM公司的【】數(shù)據(jù)庫管理系統(tǒng)。

28.軟件工程的出現(xiàn)是由于【】。

29.在面向對象的程序設計中,用來請求對象執(zhí)行某一處理或回答某些信息的要求稱為【】。

30.在一棵二叉樹上第6層的結點個數(shù)最多是______個。

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

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

33.以下程序的輸出結果是______。

main()

{inta=1,b=2;

a=a+b;b=a-b;a=a-b;

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

}

34.以下程序運行后的輸出結果是______。

#include<string.h>

main()

{charch[]="abc",x[3][4];inti;

for(i=0;i<3;i++)strcpy(x[i],ch);

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

printf("\n");

}

35.有以下程序:

intf(intn)

{if(n==1)return1;

elsereturnf(n-1)+1;}

main()

{inti,j=0;

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

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

}

程序運行后的輸出結果是【】。

36.某二叉樹中度為2的節(jié)點有18個,則該二叉樹中有()個葉子節(jié)點。

37.已有文本文件test.txt,其中的內容為:Hello,everyone!。以下程序中,文件test.txt已正確為“讀”而打開,由此文件指針fr指向該文件,則程序的輸出結果是【】。

#include<stdio.h>

main()

{FILE*fr;charstr[40];

fgets(str,5,fr);

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

felose(fr);

}

38.單元測試又稱模塊測試,一般采用【】測試。

39.以下程序段的輸出結果是【】。

inti=9;

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

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

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]);

printf("\n");

}

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

{inti,j,x;

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

{

x=ar[i][0];

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

______=X;

}

}

三、1.選擇題(20題)41.執(zhí)行下列程序后,輸出的結果是()。

#include<stdio.h>

#defineS(X)X*X

voidmain()

{ihta=9,k=3,m=2;

a/=S(k+m)/S(k+m);

printf("%d",A);

}

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

42.數(shù)據(jù)存儲和數(shù)據(jù)流都是______,僅僅是所處的狀態(tài)不同。

A.分析結果B.事件C.動作D.數(shù)據(jù)

43.下面的程序ASCⅡ。main(){intx=3,y=0,z=0;if(x==y+z)printf("****");elseprintf("####");}

A.有語法錯誤不能通過編譯B.輸出****C.可以通過編譯,但是不能通過連接,因而不能運行D.輸出####

44.設int型占2個字節(jié),則unsignedint所能表示的數(shù)據(jù)范圍是______。

A.0~65535B.-32769~32767C.1~65536D.0~32767

45.下述程序段的輸出結果是()intx=10;inty=x++;printf("%d,%d",(x++,y),y++);

A.11,10B.11,11C.10,10D.10,11

46.若有如下程序:structstudent{charname[10];floatscore[3];}stu[3]={{"lili",75,90,90},{"liudan",90,85,75};{"guoli",85,85,70}};main(){inti;floatsum=0,aver;for(i=0;i<3;i++)sum=sum+stu[i].score[1];aver=sum/i;printf("%6.2f\n",aver);}則程序運行后的輸出結果是()

A.83.33B.85C.86D.86.67

47.在數(shù)據(jù)庫設計中,將E-R圖轉換成關系數(shù)據(jù)模型的過程屬于()A.需求分析階段B.邏輯設計階段C.概念設計階段D.物理設計階段

48.下面程序的輸出結果是()main(){inti,x=023;printf("%d\n",--x);}

A.17B.18C.23D.24

49.下列司用于C語言用戶標識符的一組是______。

A.voiddefineWORD

B.a3_b3_123Car

C.For_abcIFCase

D.2aDOsizeof

50.若有以下程序:main(){intk=2,i=2,m;m=(k+=i*=k);printf("%d,%d\n",m,i);}執(zhí)行后的輸出結果是

A.8,6B.8,3C.6,4D.7,4

51.已知數(shù)據(jù)表A中每個元素距其最終位置不遠,為節(jié)省時間,應采用的算法是A.A.堆排序B.直接插入排序C.快速排序D.B和C

52.兩次運行下面的程序,如果從鍵盤上分別輸入3和2,則輸出結果是()。#include<stdio.h>main(){intx;scanf("%d",&x);if(x++>2)printf("%d",x);elseprintf(“%d\n",x--);}

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

53.下列哪個是面向對象程序設計不同于其他語言的主要特點?

A.繼承性B.消息傳遞C.多態(tài)性D.靜態(tài)聯(lián)編

54.下列關于單目運算符++、--的敘述中正確的是A.它們的運算對象可以是任何變量和常量

B.它們的運算對象可以是char型變量和int型變量,但不能是float型變量

C.它們的運算對象可以是int型變量,但不能是double型變量和float型變量

D.它們的運算對象可以是char型變量、int型變量和float型變量

55.以下程序的輸出結果是______。longfun(intn){longs;if(n==1||n==2)s=2;elses=n-fun(n-1);returns;}main(){printf("%1d\n",fun(3));}

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

56.在設計程序時,應采納的原則之一是()。

A.不限制goto語句的使用B.減少或取消注解行C.程序越短越好D.程序結構應有助于讀者理解

57.能直接與CPU交換信息的功能單元是()。

A.硬盤B.控制器C.主存儲器D.運算器

58.有以下字符串,說明表達式strlen(s)值的是()。chars[10]={'a','\n','a','b','\t','c'};

A.10B.1C.6D.7

59.以下程序的結果是______。inta,b;voidfun(){a=100;b=200;}main(){inta=5;b=7fun();printf("%d%d\n",a,b);}

A.100200B.57C.200100D.75

60.執(zhí)行下列程序時輸入:123<空格>456<空格>789<回車>輸出結果是main(){chars[100];intc,i;scanf("%c",&c);scanf("%d",&i);scanf("%s",s);printf("%c,%d,%s\n",c,i,s);}

A.123,456,789B.1,456,789C.1,23,456,789D.1,23,456

四、選擇題(20題)61.下面描述中,不屬于軟件危機表現(xiàn)的是()A.軟件過程不規(guī)范B.軟件開發(fā)生產率低C.軟件質量難以控制D.軟件成本不斷提高

62.一個棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次入棧,然后再依次出棧,則元素出棱的順序是()。A.A.12345ABCDEB.EDCBA54321C.ABCDEl2345D.54321EDCBA

63.有以下程序:

voidmain()

{chars[]="159",*p;

p=s;

printf("%c",*p++);printf("%c",*p++);

}

程序運行后的輸出結果是()。

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

64.軟件按功能可以分為應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件),下面屬于系統(tǒng)軟件的是()。A.學生管理系統(tǒng)B.C語言編譯程序C.UNIX操作系統(tǒng)D.數(shù)據(jù)庫管理系統(tǒng)

65.在C語言程序中可用做用戶標識符的是()。

A.void123BBNB.aa_abccasC.as+b3-123IfD.6fDoSIG

66.HTTP協(xié)議的消息有()兩種類型。

A.發(fā)送消息和接收消息B.請求消息和響應消息C.消息頭和消息體D.實體消息和控制消息

67.

68.(69)單個用戶使用的數(shù)據(jù)視圖的描述稱為()

A.外模式

B.概念模式

C.內模式

D.存儲模式

69.

70.已知

則以下敘述正確的是()。

A.循環(huán)控制表達式不合法B.循環(huán)控制表達式的值為0C.循環(huán)控制表達式的值為lD.以上說法都不對

71.有以下程序:

程序運行后的輸出結果是()。

A.2,4,3,9,12,12,11,11,18,9,

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

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

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

72.

73.有以下程序:

程序輸出結果是()。

A.0,1,2,0B.0,0,0,3C.1,1,2,0D.編譯有錯

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

A.一個邏輯數(shù)據(jù)結構只能有一種存儲結構

B.數(shù)據(jù)的邏輯結構屬于線性結構,存儲結構屬于非線性結構

C.一個邏輯數(shù)據(jù)結構可以有多種存儲結構,且各種存儲結構不影響數(shù)據(jù)處理的效率

D.一個邏輯數(shù)據(jù)結構可以有多種存儲結構,且各種存儲結構影響數(shù)據(jù)處理的效率

75.讀取二進制文件的函數(shù)調用形式為:fread(buffer,size,Count,fp);,其中buffed

代表的是()。

A.一個內存塊的首地址,代表讀入數(shù)據(jù)存放的地址

B.一個整型變量,代表待讀取的數(shù)據(jù)的字節(jié)數(shù)

C.一個文件指針,指向待讀取的文件

D.一個內存塊的字節(jié)數(shù)

76.若有以下語句

77.

78.在單鏈表中,增加頭結點的目的是()。

A.方便運算的實現(xiàn)B.使單鏈表至少有一個結點C.標識表結點中首結點的位置D.說明單鏈表是線性的鏈式存儲實現(xiàn)

79.

80.有以下程序:

程序運行后的輸出結果是()。

A.9,18B.8,11C.7,11D.10,14

五、程序改錯題(1題)81.改正下列程序中不正確的語句。

main()

{inta;

scanf(“%d”,a);if(a=1)printf(“One\n”);}

六、程序設計題(1題)82.使用VC++2010打開考生文件夾析下prog1中的解決方案。此解決方案的項目中包含一個源程序文件prog1.c。在此程序中,請編寫一個函數(shù)fun(),它的功能是將ss所指字符串中所有下標為奇數(shù)的字母轉換為大寫字母(若該位置上不是字母,則不轉換)。例如,若輸入“abc4Efg”,則應輸出“aBc4EFg”。注意:部分源程序在文件prog1.c中。請勿改動主函數(shù)main()和其他函數(shù)中的任何內容,僅在函數(shù)fun()的花括號中填入你編寫的若干語句。試題程序:

參考答案

1.B解析:本題考查循環(huán)嵌套,外層循環(huán)控制每一行的輸出,內層循環(huán)的第一個for循環(huán)控制空格的輸出,第二個for循環(huán)控制的輸出。而在第i行,輸出的第一個元素是num[i][i],所以下劃線處應填i。

2.B

3.A

4.A

\n本題考查switch語句。當i一1時,執(zhí)行case1,因為沒有遇到break語句,所以依次往下運行,“a=a+2=2,a=a+3=5”;當i=2時,執(zhí)行case2,因為沒有遇到break語句,所以依次往下執(zhí)行,“a=a+2=7,a=a+3=10”;當i=3時,執(zhí)行case3,a=a+1=11,因為沒有遇到break語句,所以依次往下運行,a—a+2—13,a—a+3一l6:當i=4時,執(zhí)行default,a=a+3=19,結束循環(huán)。

5.D

6.A解析:對未給出初始值的整數(shù)數(shù)組元素,被默認初始化為零。

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

8.C

9.A解析:在主函數(shù)main()中,語句“sum(&a[2]);”把數(shù)組元素a[0]的地址傳遞給了sun函數(shù)的形參a[],使得sum函數(shù)中的“(a+0)”為主函數(shù)中a[2]的地址,所以a[-1]的值為主函數(shù)中a[1]的值;a[1]的值為主函數(shù)中a[3]的伉,故函數(shù)sum中a[0]=2+4=6,由于此函數(shù)中的a是指向主函數(shù)中的a[2],所以a[2]的值為6。

10.B

11.D

12.D解析:在程序中,當L的值為5和4時,case都沒有與其匹配的值,所以執(zhí)行default語句;當k=3時,執(zhí)行n+=k;得n=3;當L=2時,執(zhí)行case2:然后順序執(zhí)行case3:n+=k;得n=5;當k=1時,執(zhí)行case1:n+=k;得n=6,然后順序執(zhí)行case2:和case3:n+=k;使得n=7。

13.BB選項的特點是順序存儲結構的特點,即數(shù)組的特點。

14.C在C語言中,用整型格式輸出字符時,輸出的是其ASCII碼值。

15.D題干中,函數(shù)fun的第2個參數(shù)通過指針作為函數(shù)返回值,它的功能是通過遞歸,求得fun(n)的值為fun(n-1)+fun(n-2)。由于當n取值為1和2時,值為1。所以可知整個數(shù)列如下:1,1,2,3,5,8,…,即某一項是前兩項之和。所以當n取值為6時,fun(6,*s)返回s的值為3+5=8。本題答案為D選項。

16.B

17.C本題考查的是聯(lián)合所占的存儲空間。sizeof(t)=sizeof(douhle)*3=8*3=24。聯(lián)合體所占的存儲空間取決于所占空間最大的成員所占的空間。

18.B

19.D當k=1時,循環(huán)成立,輸出w[l]的數(shù)組即EFGH,接著執(zhí)行k++后k為2;當k=2時,循環(huán)成立,輸出w[2]的數(shù)組即IJKL,接著執(zhí)行k++后,k為3;當k=3時,循環(huán)不成立,退出。

20.C

21.完善性完善性解析:軟件維護活動包括以下幾類:改正性維護、適應性維護、完善性維護和預防性維護。完善性維護是指為了滿足用戶對軟件提出的新功能與性能要求,需要修改或再開發(fā)軟件,以擴充軟件功能、增強軟件性能、改進加工效率、提高軟件的可維護性。

22.-32768~32767

23.PI=3.14159PI=3.14159解析:本題先定義了一個宏名PI,以后在程序中出現(xiàn)PI都用3.14159替代,但是C語言規(guī)定:雙引號中的宏名是不進行替換的。

24.fname"#"exit(0)chfp

25.一對多一對多解析:實體之間的聯(lián)系有3類:一對一,一對多,多對多。設有兩個實體集E1和E2,如果E2中的每一個實體與E1中的任意個實體(包括零個)有聯(lián)系,而E1中的每一個實體最多與E2中的一個實體有聯(lián)系,則稱這樣的聯(lián)系為“從E2到E1的一對多的聯(lián)系”,通常表示為“l(fā):n的聯(lián)系”。由此可見,工人和設備之間是一對多關系。

26.1616解析:首先用j和MCRA(i)替換MCRB(n,m)中的參數(shù)n和m,變成2*MCRA(j)+MCRA(i),再用j和i替換MCRA(m)中的參數(shù)m,變成2*2*j+2*i=2*2*3+2*2=16。

27.IMS(informationManagementSystem)

28.軟件危機的出現(xiàn)軟件危機的出現(xiàn)

29.消息消息解析:消息是一個實例與另一個實例之間傳遞的信息,它請求對象執(zhí)行某一處理或回答某一要求的信息,它統(tǒng)一了數(shù)據(jù)流和控制流。

30.3232解析:根據(jù)二叉樹的性質,在二叉樹的第K層上,最多有2k-1個結點。所以,第6層的結點數(shù)最多為32。

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

32.33解析:本題考查的是C語言逗號表達式的相關知識。程序在計算逗號表達式時,從左到右計算由逗號分隔各表達式的值,整個逗號表達式的值等于其中最后一個表達式的值。本題中,首先i被賦值為2,再自加1,最后i++的值計算為3。

33.21

34.abcbcc

35.33解析:i=1時,f(1)=1,j=j+f(1)=0+1=1;i=2時,f(2)=f(1)+1=1+1=2:j=j+f(2)=1+3=3;此時循環(huán)結束,程序運行后的輸出結果是3。

36.19

37.HellHell解析:文件的字符串讀寫函數(shù)fgets()有3個參數(shù),第三個參數(shù)是文件指針指向要讀取數(shù)據(jù)的文件,第二個參數(shù)是一個整數(shù)(假設為n),表示從文件中讀取n-1個字符并在其后加一個'0',第一個參數(shù)為存放讀取的字符串的內存區(qū)的起始地址,讀取得數(shù)據(jù)保存在其中??梢姳绢}的輸出結果為:Hell。

38.白盒法白盒法

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

40.br[i]或*(br+i)br[i]或*(br+i)解析:求最大值算法要求輸入的一般是一系列數(shù),例如一個數(shù)組,而輸出只有一個值。計算時通常的做法是,首先將這一系列數(shù)的笫1個值保存到結果變量中,然后用一個指針或循環(huán)變量從頭(或從第2個值)至尾遍歷這一系列數(shù),每次比較結果變量和被遍歷的值,如果該值比結果大,則將該值保存到結果中。本題中,3行4列二維數(shù)組a顯然是算法的輸入值,而傳給函數(shù)fun()的3和4在函數(shù)中起到限制循環(huán)次數(shù)的作用,所以它們代表輸入數(shù)據(jù)的行列數(shù).而傳遞給函數(shù)的一維數(shù)組b即沒有初始化,最后又要輸出它,所以數(shù)組b肯定是用來保存每行的最大值。在函數(shù)中是一個二重循環(huán),外循環(huán)首先將ar[i][0]賦給x,然后內循環(huán)中比較x和ar[il剛,若x比較小就讓x=ar[i][j],這就說明x是保存結果的臨時變量.最后應該將x的值輸出到數(shù)組b中,也就是形參br的相應位置。故在空格處應該填的內容為br[i]或者寫成指針方式*(br+i)。

41.D解析:本題主要是考查帶參數(shù)的宏定義及其相關運算。本題中宏運算過程如下:a=a/(S(k+m)/S(k+m))=a/(k+m*k+m/k+m*k+m)=9/(3+2*3+2/3+2*3+2)=0。

42.D解析:數(shù)據(jù)流圖有4種成分:源點或終點、處理、數(shù)據(jù)存儲和哦數(shù)據(jù)流。數(shù)據(jù)存儲是處于靜止狀態(tài)的數(shù)據(jù),數(shù)據(jù)流是處于運動中的數(shù)據(jù)。

43.D解析:對于printf()函數(shù),若有格式控制字符,則在格式控制字符的位置輸出變量i的值;否則,直接輸出雙引號內的內容。

44.A解析:本題int型占2個字節(jié),即16位,unsignedint所能表示的數(shù)據(jù)范圍是0~(2(上標)16-1),即0~65535。

45.A

46.D

47.B數(shù)據(jù)庫應用系統(tǒng)的邏輯設計包括數(shù)據(jù)庫邏輯結構設計、數(shù)據(jù)庫事務概要設計和應用程序概要設計三方面。數(shù)據(jù)庫邏輯結構設計的主要步驟為:將E—R圖轉換為初始關系模式,對初始關系模式進行優(yōu)化,檢查關系表對數(shù)據(jù)庫事務的支持性,確定關系模式完整性約束,設計基于關系模式的用戶視圖。

48.B

49.B解析:C語言規(guī)定標識符只能由字母、數(shù)字和下劃線3種字符組成,且第一個字符必須為字母或下劃線,所以排除C和D。C語言坯規(guī)定標識符不能為C語言的關鍵字,從而選項A(void是關鍵字)是錯誤的。

50.C解析:本題考查的知識點是運算符的優(yōu)先級.在復合賦值語句中,應該由右向左依次賦值,在表達式中,右端由i*=k得i=2*2為4,k=k+i,即k值為6,m=k故m=6.所以4個選項中C正確。

51.B解析:堆排序的比較次數(shù)為nlog2n;直接插入排序的比較次數(shù)為n(n-1)/2;快速排序的比較次數(shù)為nlog2n。當數(shù)據(jù)表A中每個元素

52.A解析:本題考查if-else語句。首先,scanf函數(shù)通過鍵盤讀入x的值。當x=3時,第一個if語句先判斷條件,取x的值3和2比較,然后將x的值加1,if條件成立,執(zhí)行下面的printf語句,輸出x的值4。當x=2時,第一個if語句先判斷條件,先取x的值2和2比較,然后將x的值加1(x的值變?yōu)?),if條件不成立,執(zhí)行下面的else語句,先輸出x的值3,再將x的值減1。

53.A解析:繼承是一個子類直接使用父類的所有屬性和方法。它可以減少相似的類的重復說明,從而體現(xiàn)出一般性與特殊性的原則,這使得面向對象程序設計語言有了良好的重用性,也是其不同于其他語言的主要特點。故答案為A。

54.D本題主要考查自加與自減運算符。在C語言中,自加與自減運算符具有以下性質:

(1)自加運算符“++”和自減運算符“--”的運算本身是一種賦值運算,其結果是使運算對象的值增1或減1。

(2)++、--運算符是單目運算符,運算對象可以是整型變量或字符型變量,也可以是實型變量,但不能是常量和表達式。

(3)自加、自減運算符無論是作為前綴還是后綴運算符,對于變量而言,其效果相同,但作為表達式來說,其值不同。

(4)++和--運算符的結合方向是“自右向左”。

(5)不要在一個表達式中對同一個變量進行多次自增或自減運算??梢灾辣绢}正確的答案是D。

55.A解析:本題兩次執(zhí)行fun函數(shù),第一次執(zhí)行得f(3)=s=n-f(n-1)=3-f(2):第二次執(zhí)行得s=2,通過傳遞返回值f(2)=2,所以s=3-2=1,即f(3)=1。

56.D解析:濫用goto語句將使程序流程無規(guī)律,可讀性差,因此選項A)不選;注解行有利于對程序的理解,不應減少或取消,選項B)也不選;程序的長短要依照實際情況而論,而不是越短越好,選項C)也不選。

57.C運算器和控制器都是CPU的一部分,顯然不可能是正確答案,而硬盤中的程序、數(shù)據(jù)首先要調入內存儲器中,因為它不能直接與CPU打交道。

58.Cstrlen(s)返回s字符串中字符的個數(shù),若S是一個數(shù)組,則返回數(shù)組元素的個數(shù)。

59.B解析:全程變量是可以在子函數(shù)中對其值作改變,且它也可作為函數(shù)間的值傳遞。但當函數(shù)或子函數(shù)中定義了與全程變量名稱相同的局部變量,則全程變量將被屏蔽。

60.D解析:根據(jù)給定的數(shù)據(jù)輸入格式:123<空格>456<空格>789<回車>,第一個scanf語句中,格式字符為“%c”,只能得到一個字符\'1\',第二個scanf語句中格式字符為“%d”,變量i得到的數(shù)值為23,第三個scanf語句中格式字符為“%s”,遇到空格就自動結束,因此字符數(shù)組s得到的是'456\\0”。因而正確答案為選項D。

61.A軟件危機主要表現(xiàn)在:軟件需求的增長得不到滿足;軟件開發(fā)成本和進度無法控制;軟件質量難以保證;軟件不可維護或維護程度非常低;軟件的成本不斷提高;軟件開發(fā)生產率的提高趕不上硬件的發(fā)展和應用需求的增長。所以選擇A。

62.B棧是先進后出的原則組織數(shù)據(jù),所以人棧最早的最后出棧,所以選擇B。

63.Ap=s,是將字符串數(shù)組的首地址賦給p,即p指向’1’,然后輸出1,p++,指向下一位,即指向5,輸出5,指向下一位。

64.A

65.Bc語言規(guī)定,標識符是由字母、數(shù)字或下劃線組成,并且它的第一個字符必須是字母或者下劃線,不

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論