2021年廣東省佛山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第1頁(yè)
2021年廣東省佛山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第2頁(yè)
2021年廣東省佛山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第3頁(yè)
2021年廣東省佛山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第4頁(yè)
2021年廣東省佛山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)測(cè)試卷(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩31頁(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ì)測(cè)試卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.已知10個(gè)元素(54,28,16,34,,73,62,95,60,26,43),按照依次插入的方法生成一棵二叉排序樹,查找值為62的結(jié)點(diǎn)所需比較次數(shù)為()

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

2.下列敘述中錯(cuò)誤的是()。A.在程序中凡是以“#”開(kāi)始的語(yǔ)句行都是預(yù)處理命令行

B.預(yù)處理命令行的最后不能以分號(hào)表示結(jié)束

C.#defineMAX是合法的宏定義命令行

D.C程序?qū)︻A(yù)處理命令行的處理是在程序執(zhí)行的過(guò)程中進(jìn)行的

3.有以下程序:#include<stdio.h>main(){charv[4][10];inti;for(i=0;i<4;i++)scanf(“%s”,v[i]);printf(“%c,%s,%s,%c”,**v,*(v+1),v[3]+3,*(v[2]+1));}程序運(yùn)行時(shí)輸入welcomeyoutobeijing并按<Enter>鍵,則輸出結(jié)果是()。

A.w,youjing,o

B.welcome,you,jing,to

C.w,you,eeijing,u

D.w,xelcome,eeijing,u

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

A.當(dāng)對(duì)文件的讀(寫)操作完成之后,必須將它關(guān)閉,否則可能導(dǎo)致數(shù)據(jù)丟失

B.打開(kāi)一個(gè)已存在的文件并進(jìn)行寫操作后,原有文件中的全部數(shù)據(jù)必定被覆蓋

C.在一個(gè)程序中對(duì)文件進(jìn)行寫操作后,必須先關(guān)閉該文件然后再打開(kāi)才能讀到第1個(gè)數(shù)據(jù)

D.C語(yǔ)言中的文件是流式文件,因此只能順序存取數(shù)據(jù)

5.

6.和順序棧相比,鏈棧有一個(gè)比較明顯的優(yōu)勢(shì)是()。

A.通常不會(huì)出現(xiàn)棧滿的情況B.通常不會(huì)出現(xiàn)??盏那闆rC.插入操作更容易實(shí)現(xiàn)D.刪除操作更容易實(shí)現(xiàn)

7.算法的空間復(fù)雜度是指()。

A.算法在執(zhí)行過(guò)程中所需要的計(jì)算機(jī)存儲(chǔ)空間

B.算法所處理的數(shù)據(jù)量

C.算法程序中的語(yǔ)句或指令條數(shù)

D.算法在執(zhí)行過(guò)程中所需要的臨時(shí)工作單元數(shù)

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

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

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

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

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

9.若串S1="ABCDEFG",S2="9898",S3="###",S4="012345",執(zhí)行其結(jié)果為()。A.ABC###G0123B.ABCD###2345C.ABC###G1234D.ABCD###1234

10.若變量已正確定義,有以下程序段“i=0;do{printf(“%d,”,i);}while(i++);printf(“%d\n”,i);”,程序段的運(yùn)行結(jié)果是()。A.0,1B.0,0C.1,1D.程序進(jìn)入無(wú)限循環(huán)

11.廣義表((a),a)的表頭是()。

A.aB.(a)C.((a))D.()

12.

13.下列語(yǔ)句組中正確的是()。

A.char*s;s={“BOOK!”};

B.char*s;s=“BOOK!”;

C.chars[10];s=“BOOK!”;

D.chars[];s=“BOOK!”;

14.以下敘述中錯(cuò)誤的是A.gets函數(shù)用于從終端讀入字符串

B.getchar函數(shù)用于從磁盤文件讀入字符

C.fputs函數(shù)用于把字符串輸出到文件

D.fwrite函數(shù)用于以二進(jìn)制形式輸出數(shù)據(jù)到文件

15.以下敘述中正確的是_____。A.用C程序?qū)崿F(xiàn)的算法必須要有輸入和輸出操作

B.用C程序?qū)崿F(xiàn)的算法可以沒(méi)有輸出但必須要輸入

C.用C程序?qū)崿F(xiàn)的算法可以沒(méi)有輸入但必須要有輸出

D.用C程序?qū)崿F(xiàn)的算法可以既沒(méi)有輸入也沒(méi)有輸出

16.某二叉樹有5個(gè)度為2的結(jié)點(diǎn),則該二叉樹中的葉子結(jié)點(diǎn)數(shù)是A.10B.8C.6D.4

17.下述函數(shù)功能是______。intfun(char*x){char*y=x;while(*y++);returny-x-1;}

A.求字符串的長(zhǎng)度B.求字符串存放的位置C.比較兩個(gè)字符串的大小D.將字符串x連接到字符串y后面

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

A.算法就是程序B.設(shè)計(jì)算法時(shí)只需要考慮數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)C.設(shè)計(jì)算法時(shí)只需要考慮結(jié)果的可靠性D.以上3種說(shuō)法都不對(duì)

19.設(shè)”inta=12;”,則執(zhí)行完語(yǔ)句”a+=a*a;”后,a的值是()。

A.12B.144C.156D.288

20.設(shè)有表示學(xué)生選課的三張表,學(xué)生S(學(xué)號(hào),姓名,性別,年齡,身份證號(hào)),課程C(課號(hào),課名),選課SC(學(xué)號(hào),課號(hào),成績(jī).,則表SC的關(guān)鍵字(鍵或碼)為()

A.課號(hào),成績(jī)B.學(xué)號(hào),成績(jī)C.學(xué)號(hào),課號(hào)D.學(xué)號(hào),姓名,成績(jī)

二、2.填空題(20題)21.有以下程序:

intsub(intn){return(n/10+n%10);}

main()

{intx,y;

scanf("%d",&x);

y=sub(sub(sub(x)));

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

}

若運(yùn)行時(shí)輸入:1234<回車>,程序的輸出結(jié)果是【】。

22.設(shè)有宏定義:

#defineWIDTH80

#defineLENGTHWIDTH+40

則執(zhí)行賦值語(yǔ)句“v=LENGTH*20;"(v為int型變量)后,v的值是【】。

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

main()

{intm=011,n=11;

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

}

24.以下程序通過(guò)函數(shù)指針p調(diào)用函數(shù)fun,請(qǐng)?jiān)谔羁諜趦?nèi)寫出定義變量p的語(yǔ)句。

voidfun(int*x,int*y)

{……}

main()

{inta=10,b=20;

【】:

p=fun;p(&a,&b);

……

}

25.軟件危機(jī)出現(xiàn)于60年代末,為了解決軟件危機(jī),人們提出了【】的原理來(lái)設(shè)計(jì)軟件,這就是軟件工程誕生的基礎(chǔ)。

26.若輸入thistestterminal,以下程序的輸出結(jié)果為:terminaltestthis。請(qǐng)?zhí)羁铡?/p>

#defineMAXLINE20

【】

{inti;

char*pstr[3],str[3][MAXLINE];

for(i=0;i<3;++)pstr[i]=str[i];

for(i=0;i<3;i++)scanf("%s",pstr[1]);

sort(pstr);

for(i=0;i<3;i++)prntf("%s",pstr[i]);

}

sort(【】)

char*pstr[3];

{inti,j;

char*p;

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

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

if(strcmp(*(pstr+i,*(pstr+j)>0

{p=*(pstr+i);

*(pstr+i=【】;

*(pstr+j)=p;

}

27.設(shè)Y是int型變量,請(qǐng)寫出判斷Y為奇數(shù)的關(guān)系表達(dá)式【】。

28.用以下程序把從鍵盤輸入的字符存放到一個(gè)文件中,用字符#作為結(jié)束符,請(qǐng)按題意要求填空完善程序。

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

}

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

inti=9;

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

30.當(dāng)循環(huán)隊(duì)列非空且隊(duì)尾指針等于隊(duì)頭指針時(shí),說(shuō)明循環(huán)隊(duì)列已滿,不能進(jìn)行入隊(duì)運(yùn)算。這種情況稱為【】。

31.如果調(diào)用fopen函數(shù)不成功,則函數(shù)返回【】;如果調(diào)用fclose函數(shù)不成功,則函數(shù)返回【】。

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

33.一個(gè)項(xiàng)目具有一個(gè)項(xiàng)目主管,一個(gè)項(xiàng)目主管可管理多個(gè)項(xiàng)目,則實(shí)體"項(xiàng)目主管"與實(shí)體"項(xiàng)目"的聯(lián)系屬于【】的聯(lián)系。

34.數(shù)據(jù)庫(kù)系統(tǒng)的主要特點(diǎn)為數(shù)據(jù)集成性、數(shù)據(jù)的高_(dá)_____和低冗余性、數(shù)據(jù)獨(dú)立性和數(shù)據(jù)統(tǒng)一管理和控制。

35.設(shè)有以下定義和語(yǔ)句:

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

p[0]=a[1];

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

36.軟件維護(hù)活動(dòng)包括以下幾類:改正性維護(hù)、適應(yīng)性維護(hù)、【】維護(hù)和預(yù)防性維護(hù)。

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

38.棧和隊(duì)列通常采用的存儲(chǔ)結(jié)構(gòu)是【】。

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

structdate

{intday;

intmouth;

intyear;

union{intshare1;

floatshare2;

}share;

}a;

40.下列語(yǔ)句的輸出結(jié)果是【】。

chara=3;printf("%d,%o,%x,%u\n",a,a,a,a);

三、1.選擇題(20題)41.有以下程序:#defmeP3voidP(intx){return(p*x*x);}main(){pritnf("%d\n",F(3+5);}程序運(yùn)行后的輸出結(jié)果是()。

A.192B.29C.25D.編譯出錯(cuò)

42.有以下程序voidfun(char*c,intd){*c=*c+1;d=d+1;printf(“%c,%c”,*c,d);}main(){chara='A',b='a';fun(&b,a);printf(“%c,%c\n”,a,b);}程序運(yùn)行后的輸出結(jié)果是

A.B,a,B,aB.a,B,a,BC.A,b,A,bD.b,B,A,b

43.兩次運(yùn)行下列的程序,如果從鍵盤上分別輸入3和1,則輸出結(jié)果是()。main(){intx;scanf("%d",&x);if(x++>2)printf("%d",x);elseprintf("%d\n",x--);}

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

44.在16位C編譯系統(tǒng)上,若定義longa;,則能給a賦值40000的正確語(yǔ)句是()

A.a=20000+20000;B.a=4000*10;C.a=30000+10000;D.a=4000L*10L;

45.以下程序有錯(cuò),錯(cuò)誤原因是main(){int*p,i;char*q,ch;p=&i;q=&ch;*p=40;*p=*q;……}

A.p和q的類型不一致,不能執(zhí)行*p=*q;語(yǔ)句

B.*p中存放的是地址值,因此不能執(zhí)行*p=40;語(yǔ)句

C.q沒(méi)有指向具體的存儲(chǔ)單元,所以*q沒(méi)有實(shí)際意義

D.q雖然指向了具體的存儲(chǔ)單元,但該單元中沒(méi)有確定的值,所以執(zhí)行*p=*q;沒(méi)有意義,可能會(huì)影響后面語(yǔ)句的執(zhí)行結(jié)果

46.有以下程序段intn,t=1,s=0;scanf("%d",&n);do{s=s+t;t=t-2;}while(t!=n);為使此程序段不陷入死循環(huán),從鍵盤輸入的數(shù)據(jù)應(yīng)該是

A.任意正奇數(shù)B.任意負(fù)偶數(shù)C.任意正偶數(shù)D.任意負(fù)奇數(shù)

47.數(shù)據(jù)獨(dú)立性是數(shù)據(jù)庫(kù)技術(shù)的重要特點(diǎn)之一。所謂數(shù)據(jù)獨(dú)立性是指()

A.數(shù)據(jù)與程序獨(dú)立存放

B.不同的數(shù)據(jù)被存放在不同的文件中

C.不同的數(shù)據(jù)只能被對(duì)應(yīng)的應(yīng)用程序所使用

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

48.有以下程序:#include<string.h>voidf(char*s,char*t){chark;k=*s;*s=*t;*t=k;s++;t--;if(*s)f(s,t);}main(){charstr[10]="abcdefg",*p;p=str+strlen(str)/2+1;f(p,p-2);printf("%s\n",str);}程序運(yùn)行后的輸出結(jié)果是()。

A.abcdcfgB.gfedcbaC.gbcdefaD.abedcfg

49.下列選項(xiàng)中可作為C語(yǔ)言合法常量的是()。

A.-80B.-80C.-80.0D.-80.0e

50.以下不能正確進(jìn)行字符串賦初值的語(yǔ)句是

A.charstr[5]="good!";

B.charstr[]="good!";

C.char*srt="good!";

D.charstr[5]={'g','o','o','d'};

51.設(shè)有棧S和隊(duì)列Q,其初始狀態(tài)為空,元素a1、a2、a3、a4、a5、a6依次入棧,出棧的元素進(jìn)入隊(duì)列Q,若6個(gè)元素出隊(duì)列的順序是a2、a4、a3、a6、a5、a1,則棧的容量至少是______。

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

52.已定義下列函數(shù):intfun(int*p){return*p;)fun函數(shù)返回值是()。

A.不確定的值B.一個(gè)整數(shù)C.形參p中存放的值D.形參p的地址值

53.調(diào)用gets和puts函數(shù)時(shí),必須包含的頭文件是

A.stdio.hB.stdlib.hC.defineD.以上都不對(duì)

54.有以下程序

main()

{inti,s=1;

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

if(!(i%5)&&!(i%3))s+=i;

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

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

A.409B.277C.1D.91

55.軟件開(kāi)發(fā)的原型化方法是一種動(dòng)態(tài)定義軟件需求的方法,下述條件中,______是實(shí)施原型化方法所必需的。

①成熟的原型化人員

②快速的成型工具

③需求了解的準(zhǔn)確性

A.①和③B.①和②C.②和③D.全部

56.下面程序段的輸出為()。

#include"stdio.h"

main

{

printf("%d\n",12<<2);

}

A.0B.47C.48D.24

57.判斷char型變量c1是否為小寫字母的正確表達(dá)式為()。

A.'a'<=c1<='z'

B.(c1>=A)‖(c1<=z)

C.('a'=>c1‖('z'<=c1)

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

58.有以下定義:#include<stdio.h>chara[10],*b=a;不能給數(shù)組a輸入字符串的語(yǔ)句是()。

A.gets(a)B.gets(a10])C.gets(&a[0});D.gets(b);

59.C語(yǔ)言中,組成數(shù)據(jù)文件的成分是()。A.A.記錄

B.數(shù)據(jù)行

C.數(shù)據(jù)塊

D.字符(字節(jié))序列

60.若執(zhí)行下列的程序時(shí),從鍵盤上輸入1和2,則輸出結(jié)果是()。

#include<stdio.h>

main()

{inta,b,s;

scanf("%d%d",&a,&B);

S=a;

if(a<B)s=b;

s=s*s;

printtf("%d\n",s);

}

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

四、選擇題(20題)61.

62.下列敘述中正確的是()。A.數(shù)據(jù)庫(kù)系統(tǒng)可以解決數(shù)據(jù)冗余和數(shù)據(jù)獨(dú)立性問(wèn)題,而文件系統(tǒng)不能

B.數(shù)據(jù)庫(kù)系統(tǒng)能夠管理各種類型的文件,而文件系統(tǒng)只能管理程序文件

C.數(shù)據(jù)庫(kù)系統(tǒng)可以管理龐大的數(shù)據(jù)量,而文件系統(tǒng)管理的數(shù)據(jù)量較少

D.數(shù)據(jù)庫(kù)系統(tǒng)獨(dú)立性較差,而文件系統(tǒng)獨(dú)立性較好

63.

64.有以下程序:

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

A.有運(yùn)行錯(cuò)誤B.輸出ll.10C.輸出l2.10D.輸出21.10

65.在執(zhí)行下述程序時(shí),若從鍵盤輸入6和8,則結(jié)果為()。

A.36B.64C.48D.以上都不對(duì)

66.

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

#include<stdio.h>

main

{staticchara[]="Languagef",b[]="programe":

char*p1,*p2;intk;

p1=a;p2=b;

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

if(*(p1+k)==*(p2+k))

printf("%c",*(p1+k)):

}

A.gaeB.angC.programD.有語(yǔ)法錯(cuò)

67.若有定義:“inta[2][3];”,則對(duì)a數(shù)組的第i行第j列元素的正確引用為()。

A.*(*(a+i)+j)B.(a+i)[j]C.*(a+i+j)D.*(a+i)+j

68.語(yǔ)句“printf("akbre"\'hi\'y\\\bou\n")”;的輸出結(jié)果是()。

A.akbre\'hi\'y'\\\bou

B.a\bre\'hi\\y\bou

C.re'hi'you

D.abre'hi'y\bou

69.下列程序的運(yùn)行結(jié)果是()。main{intx=1,y=3,a=0;while(x++!=(y-=l)){a+=1;if(y<x)break;}printf("%d,%d,%d\n",x,y,a);}A.2,3,2B.2,3,1C.1,3,3D.3,1,2

70.

71.以下選項(xiàng)中不能用作C程序合法常量的是()。

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

A.678910

B.13579

C.12345

D.62345

73.

74.在下列選項(xiàng)中,哪個(gè)不是一個(gè)算法一般應(yīng)該具有的基本特征()。

A.無(wú)窮性B.可行性C.確定性D.有窮性

75.若i、j已定義成int型,則下列程序段中內(nèi)循環(huán)體的總執(zhí)行次數(shù)是()。

for(i=6;i>0;i--)

for(j=0;j<4;j++){…}A.A.20B.24C.25D.30

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

main

{charw[][10]={"ABCD","EFGH","IJKL","MNOP"),K;

for(k=1;k<3;k++)printf("%s\n",w[k]);A.A.ABCDFGHKLB.ABCDEFGUC.EFGJKOD.EFGHUKL

77.#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)

78.有以下程序

structSTU

{

charname[10];

intnum;

intScore;

};

main()

{

structSTUs[5]={{"YangSan",20041,703},

{"LiSiGuo",20042,580},

{"WangYin",20043,680},

{"SunDan",20044,550},

{"Penghua",20045,537}},*p[5],*t;

inti,j;

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

p[i]=&s[i];

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

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

if(p[i]->Score>p[j]->Score)

{

t=p[i];

p[i]=p[j];

p[j]=t;

}

printf("%d%d\n",s[1].Score,p[1]->Score);

}

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

A.550550B.580550

C.680680D.580680

79.定義下列結(jié)構(gòu)體(聯(lián)合)數(shù)組:

structst

{charname[15];

intage;

}a[10]={"ZHA0",14,"WANG",15,"LIU",16,"ZHANG",17);

執(zhí)行語(yǔ)句printf("%d,%C",a[2].a(chǎn)ge,*(a[3].name+2))的輸出結(jié)果為()。A.A.15,AB.16,HC.16,AD.17,H

80.以下敘述中錯(cuò)誤的是()。

A.使用三種基本結(jié)構(gòu)構(gòu)成的程序只能解決簡(jiǎn)單問(wèn)題

B.結(jié)構(gòu)化程序由順序、分支、循環(huán)三種基本結(jié)構(gòu)組成

C.C語(yǔ)言是-種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言

D.結(jié)構(gòu)化程序設(shè)計(jì)提倡模塊化的設(shè)計(jì)方法

五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc()的功能是:用下面的公式求π的近似值,直到最后一項(xiàng)的絕對(duì)值小于指定的數(shù)(參數(shù)num)為止。π/4≈1-1/3+1/5-1/7+…例如,程序運(yùn)行后,輸入0.0001,則程序輸出3.1414。請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:

六、程序設(shè)計(jì)題(1題)82.假定輸入的字符串中只包含字母和*號(hào)。請(qǐng)編寫函數(shù)proc(),它的功能是:將字符串尾部的*號(hào)全部刪除,前面和中間的*號(hào)不刪除。例如,若字符串中的內(nèi)容為****a*bc*def*g。***,刪除后,字符串中的內(nèi)容則應(yīng)當(dāng)是****a*bc*def*g。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc的花括號(hào)中填入所編寫的若干語(yǔ)句。試題程序:

參考答案

1.B

2.C解析:預(yù)處理命令行是以“#”開(kāi)始的語(yǔ)句,預(yù)處理命令行的最后不能以分號(hào)表示結(jié)束,預(yù)處理命令行。其中宏定義的字符替換的定義格式為:#define標(biāo)識(shí)符字符串,預(yù)處理命令行是在系統(tǒng)對(duì)源程序進(jìn)行編譯之前進(jìn)行處理的,不是在程序執(zhí)行的過(guò)程中。

3.A題干中,定義一個(gè)二維字符數(shù)組v。然后通過(guò)for循環(huán),輸入4個(gè)字符串welcome、you、to、beijing,將其分別存放在v的4個(gè)元素中。數(shù)組v是存放4個(gè)字符串的二維數(shù)組;“**v”表示第1個(gè)字符串的第一個(gè)字符“w”;“*(v+1)”指向第2個(gè)字符串“you”;“v[3]+3”指向第4個(gè)字符串的第3個(gè)字符開(kāi)始后的整個(gè)字符串“jing”;“*(v[2]+1)”表示第3個(gè)宇符串的第2個(gè)字符“o”。故本題答案為A選項(xiàng)。

4.AB選項(xiàng)中,打開(kāi)一個(gè)已存在的文件并進(jìn)行寫操作后,原有文件中的全部數(shù)據(jù)不一定被覆蓋,也可以對(duì)源文件進(jìn)行追加操作等。C選項(xiàng)中,在一個(gè)程序中對(duì)文件進(jìn)行寫操作后,不是先關(guān)閉該文件然后再打開(kāi)才能讀到第1個(gè)數(shù)據(jù),用fseek函數(shù)進(jìn)行重新定位即可。D選項(xiàng)中,C語(yǔ)言中的文件可以進(jìn)行隨機(jī)讀寫。故本題答案為A選項(xiàng)。

5.C

6.A

7.A算法的空間復(fù)雜度是指算法在執(zhí)行過(guò)程中所需要的內(nèi)存空間。所以選擇A項(xiàng)。

8.A解析:在鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,存儲(chǔ)數(shù)據(jù)的存儲(chǔ)空間可以不連續(xù),各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與數(shù)據(jù)元素之間的邏輯關(guān)系可以不一致,數(shù)據(jù)元素之間的邏輯關(guān)系,是由指針域來(lái)確定的。由此可見(jiàn),選項(xiàng)A的描述正確。因此,本題的正確答案為A。

9.D

10.A第1次首先執(zhí)行循環(huán)體,輸出i的值為0,然后判斷while的條件“i++”,因?yàn)椤癷++”是后綴自增運(yùn)算,先使用后自增,所以判斷時(shí)條件為假,跳出循環(huán),但是仍執(zhí)行了i的自增操作,i的值為1,在接下來(lái)的printf語(yǔ)句中進(jìn)行輸出。故本題答案為A選項(xiàng)。

11.B

12.D

13.BA選項(xiàng)去掉花括號(hào)后,賦值正確;C選項(xiàng)和D選項(xiàng)應(yīng)在定義時(shí)賦初值,因?yàn)閿?shù)組名相當(dāng)于常量,不能重新賦值。故本題答案為B選項(xiàng)。

14.B其中B選項(xiàng)的getchar函數(shù)用于從終端讀入字符。故本題答案為B選項(xiàng)。

15.C解析:算法的特性中包括“有零個(gè)或多個(gè)輸入”及“有一個(gè)或多個(gè)輸出”這兩個(gè)特性。一個(gè)算法得到的結(jié)果就是算法的輸出,沒(méi)有輸出的算法是沒(méi)有意義的,所以一千算法必須至少有一個(gè)輸出。

16.C根據(jù)二叉樹的性質(zhì),在任意二叉樹中,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)點(diǎn)多一個(gè)。

17.A解析:在函數(shù)體內(nèi)定義一字符型指針并指向形參,然后遍歷其中各字符直到NULL,最后返回字符串首尾地址的差值,即字符串的長(zhǎng)度。

18.D程序(program)是為實(shí)現(xiàn)特定目標(biāo)或解決特定問(wèn)題而用計(jì)算機(jī)語(yǔ)言編寫的命令序列的集合。設(shè)計(jì)算法時(shí)要考慮到數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì),但是不僅僅是要考慮到數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì),還要考慮到其他的程序結(jié)構(gòu)的問(wèn)題。設(shè)計(jì)算法時(shí)不能只考慮結(jié)果的正確性和可靠性,還需要考慮到程序的時(shí)間冗余度等方面。所以答案選擇D。

19.C

20.C學(xué)號(hào)是學(xué)生表S的主鍵,課號(hào)是課程表C的主鍵,所以選課表SC的關(guān)鍵字就應(yīng)該是與前兩個(gè)表能夠直接聯(lián)系且能唯一定義的學(xué)號(hào)和課號(hào),所以選擇C項(xiàng)。

21.1010解析:y=sub(sub(sub(x)))=sub(sub(127))=sub(19)=10。

22.880

23.10111011解析:前綴自增運(yùn)算時(shí),表達(dá)式的值和變量自增之后的值相同;后綴自增運(yùn)算時(shí),表達(dá)式的值為變量自增之前的值。所以,本題程序輸出的兩個(gè)結(jié)果分別是m+1和n的值。而m在初始化時(shí)使用的是八進(jìn)制常量011,轉(zhuǎn)換為十進(jìn)制為9。故輸出結(jié)果是1011。

24.void(*p)();void(*p)();解析:要定義p為指向函數(shù)的指針變量,需寫成void(*p)();,注意*p兩側(cè)的括弧不可以省略,表示P先與*結(jié)合,是指針變量,再與后面的()結(jié)合,表示此指針變量指向函數(shù),這個(gè)函數(shù)無(wú)返回值(同fun()函數(shù))。

25.軟件工程學(xué)軟件工程學(xué)

26.main()pstr*(pstr+j)

27.Y%2=1或Y%2!=0Y%2=1或Y%2!=0解析:判斷變量是否為奇數(shù)可以用變量與2取模,判斷結(jié)果是為1或下為0。本題具體做法如下:Y%2=1或Y%2!=0。

28.fname"#"exit(0)chfp

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

30.上溢上溢解析:入隊(duì)運(yùn)算是指在循環(huán)隊(duì)列的隊(duì)尾加入一個(gè)新元素。這個(gè)運(yùn)算有兩個(gè)基本操作:首先將隊(duì)尾指針進(jìn)一(即rear=rear+1),并當(dāng)rear=m+1時(shí)置rear=1;然后將新元素插入隊(duì)尾指針指向的位置。當(dāng)循環(huán)隊(duì)列非空(s=1)時(shí)且隊(duì)尾指針等于隊(duì)頭指針時(shí),說(shuō)明循環(huán)隊(duì)列已滿,不能進(jìn)行入隊(duì)運(yùn)算,這種情況稱為“上溢”。

31.NULL或0EOF或-1NULL或0\r\nEOF或-1解析:如果fopen()函數(shù)調(diào)用不成功,則返回一個(gè)空指針值NULL(0);如果fclose()函數(shù)調(diào)用不成功,則返回EOF(-1)。所以本題的兩個(gè)空應(yīng)分別填NULL和EOF。

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

33.一對(duì)多(或1∶N)一對(duì)多(或1∶N)解析:兩個(gè)實(shí)體集間的聯(lián)系實(shí)際上是實(shí)體集間的函數(shù)關(guān)系,這種函數(shù)關(guān)系可以有3種,即一對(duì)一(1∶1)的聯(lián)系、一對(duì)多(1∶N)或多對(duì)一(N∶1)的聯(lián)系和多對(duì)多(N∶N)的聯(lián)系。

34.共享性共享性解析:數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)能被不同的應(yīng)用程序使用,實(shí)現(xiàn)了數(shù)據(jù)的高度共享,從而降低了數(shù)據(jù)的冗余,這也是數(shù)據(jù)庫(kù)的主要目的。

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

36.完善性軟件維護(hù)活動(dòng)包括以下幾類:改正性維護(hù),適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù),完善性維護(hù)是指為了滿足用戶對(duì)軟件提出的新功能與性能要求,需要修改或再開(kāi)發(fā)軟件,以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件的可維護(hù)性。

37.-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。

38.鏈?zhǔn)酱鎯?chǔ)和順序存儲(chǔ)鏈?zhǔn)酱鎯?chǔ)和順序存儲(chǔ)

39.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。

40.31371f3131,37,1f,31解析:此題考查了printf函數(shù)的格式字符,題中d是以十進(jìn)制形式輸出,o是以八進(jìn)制形式輸出,x是以十六進(jìn)制形式輸出,u以不帶符號(hào)的十進(jìn)制數(shù)輸出。

41.D解析:本題是一道陷阱題,考生如果沒(méi)注意到F()函數(shù)被定義為void類型的話,很容易錯(cuò)選為選項(xiàng)A,其實(shí)應(yīng)該選擇選項(xiàng)D,編譯出錯(cuò)。

42.D解析:用地址作為參數(shù)與值作為參數(shù)傳遞之間的不同。在C語(yǔ)言中,數(shù)據(jù)傳遞是單向傳遞的?!爸祩鬟f”就是實(shí)參把對(duì)應(yīng)的值傳給相應(yīng)的形參變量,然后形參和實(shí)參不再有任何聯(lián)系,在被調(diào)用函數(shù)中,對(duì)形參的修改并不影響對(duì)應(yīng)的實(shí)參。“地址傳遞”就是實(shí)參把相應(yīng)的地址傳給相應(yīng)的形參變量,在被調(diào)用函數(shù)中對(duì)形參的修改將修改對(duì)應(yīng)的實(shí)參地址對(duì)應(yīng)的值。程序中定義了兩個(gè)字符型變量'a'和'b',并分別賦初值為'A'和'a',然后調(diào)用函數(shù)fun(),將b的地址和:值作為實(shí)參。在函數(shù)fun()中第一個(gè)參數(shù)是傳遞地址,故在調(diào)用函數(shù)fun()中對(duì)參數(shù)做的修改(即將b值加1)將影響字符型變量的值(變?yōu)閎),函數(shù)fun()第二個(gè)參數(shù)是傳值的,故在調(diào)用函數(shù)fun()對(duì)第二個(gè)參數(shù)做的修改不影響字符型變量a(即'a'的值仍為'A'),所以在fun()函數(shù)中輸出的是d為b,B,接著在主函數(shù)中,輸出a,b,然后退出fun()函數(shù),接著執(zhí)行后面的語(yǔ)句,輸出A,b。所以最后輸出為b,B,A,b。

43.A解析:本題考查ifelse語(yǔ)句。首先scanf函數(shù)通過(guò)鍵盤讀入x的值。當(dāng)x=3時(shí),第一個(gè)if語(yǔ)句,先判斷條件,取x的值3和2比較,然后將x的值加1,發(fā)現(xiàn)條件成立,執(zhí)行下列的printf語(yǔ)句,輸出x的值4。當(dāng)x=1時(shí),第一個(gè)if語(yǔ)句,先判斷條件,取x的值1和2比較,然后將x的值加1(x的值變?yōu)?),發(fā)現(xiàn)條件不成立,執(zhí)行下列的else語(yǔ)句,先輸出x的值2,再將x的值減1。

44.D

45.D解析:該程序的執(zhí)行過(guò)程是:首先聲明整型指針變量P和整型變量i,字符型指針變量q和字符型變量ch,將i的地址賦給指針變量p,將ch的地址賦給指針變量q,將40賦給*p,此時(shí),q已經(jīng)指向了一個(gè)具體的存儲(chǔ)單元,但ch的值不確定,即*p沒(méi)有確定的值,所以不能執(zhí)行*p=*q語(yǔ)句。

46.D解析:本題考查的是do…while循環(huán)結(jié)構(gòu).do…while循環(huán)與while循環(huán)的區(qū)別就是,前者是先執(zhí)行循環(huán)體,后判斷循環(huán)變量,故至少會(huì)執(zhí)行一遍循環(huán)體;后者先判斷再執(zhí)行,可能循環(huán)體一次也不會(huì)執(zhí)行。本題首先讓t=1,然后在循環(huán)體中每次自減2,所以判斷循環(huán)條件的時(shí)候,t會(huì)等于-1、-3、-5……,故只有n等于任意的負(fù)奇數(shù)才有可能終止循環(huán).選項(xiàng)D正確。

47.D解析:在數(shù)據(jù)庫(kù)系統(tǒng)中,通過(guò)系統(tǒng)提供的映象功能,使數(shù)據(jù)具有兩方面的獨(dú)立性:一是物理獨(dú)立性。即由于數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與邏輯結(jié)構(gòu)之間由系統(tǒng)提供映象,使得當(dāng)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)改變時(shí),其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改。二是邏輯獨(dú)立性。即由于數(shù)據(jù)的局部邏輯結(jié)構(gòu)(它是總體邏輯結(jié)構(gòu)的一個(gè)子集,由具體的應(yīng)用程序所確定,并且根據(jù)具體的需要可以作一定的修改)與總體邏輯結(jié)構(gòu)之間也由系統(tǒng)提供映象,使得當(dāng)總體邏輯結(jié)構(gòu)改變時(shí),其局部邏輯結(jié)構(gòu)可以不變,從而根據(jù)局部邏輯結(jié)構(gòu)編寫的應(yīng)用程序也可以不必修改。由此可知,選項(xiàng)A.B與C中的說(shuō)法都是錯(cuò)誤的。

48.B解析:本題定義的函數(shù)f()是一個(gè)遞歸函數(shù)。它先交換兩個(gè)字符指針?biāo)傅膬?nèi)容,然后將第1個(gè)指針往后移動(dòng)—位,第2個(gè)指針往前移動(dòng)一位,如果第1個(gè)指針?biāo)竷?nèi)容不是字符串結(jié)束標(biāo)志,則遞歸調(diào)用自身。主函數(shù)中首先定義了—個(gè)字符數(shù)組sir[10]=“ahcdeft”然后定義了一個(gè)字符指針p=str+strlen(str)/2+1,即讓p指向str+4(或&str[4])的位置。然后調(diào)用f(p,p-2);,這使得p所指的str[4]及其以后的2個(gè)位置str[5]、str[6]中的內(nèi)容同p-2所指的str[p]及其以前的2個(gè)位置str[1]、str[0]中的內(nèi)容互相交換。即讓整個(gè)字符串逆序。所以本題應(yīng)該選擇B。

49.A

50.A解析:本題考核的知識(shí)點(diǎn)是字符數(shù)組和字符指針變量的初始化。選項(xiàng)A定義了一個(gè)字符數(shù)組str,具有5個(gè)元素,但賦初值的時(shí)候,初值個(gè)數(shù)卻是6個(gè)(有一個(gè)'\\0'),故選項(xiàng)A錯(cuò)誤的;選項(xiàng)B定義了一個(gè)字符數(shù)組str并給它賦初值,由于省去了長(zhǎng)度定義,長(zhǎng)度由初值個(gè)數(shù)確定,相當(dāng)于str[6],選項(xiàng)B正確;選項(xiàng)C定義了一個(gè)字符型指針變量并用一個(gè)字符串給它賦初值,使該字符型指針指向了該字符串,選項(xiàng)C正確;選項(xiàng)D是對(duì)字符型數(shù)組中單個(gè)元素依次賦初值,選項(xiàng)D正確。所以,4個(gè)選項(xiàng)中A為所選。

51.C

52.B解析:由函數(shù)intfun(int*p){return*p;}的定義可知,返回值為整型指針變量p所指向的數(shù)據(jù)。

53.A解析:gets函數(shù)和puts函數(shù)是庫(kù)函數(shù),必須包含的頭文件是stdio.h。

54.D解析:本題是計(jì)算50之內(nèi)的自然數(shù)相加之和,題中if語(yǔ)句括號(hào)中的條件表達(dá)式!(i%5)&&!(i%3)表明只有能同時(shí)被5和3整除的數(shù)才符合相加的條件,1~49之間滿足這個(gè)條件的只有,15、30和45,因?yàn)閟的初始值為1,所以s=1+15+30+45=91。

55.B

56.C解析:考查位運(yùn)算的運(yùn)算原理。<<為左移運(yùn)算符,運(yùn)算符的左邊是移位對(duì)象;右邊是整型表達(dá)式,代表左移的位數(shù),左移時(shí),右端(低位)補(bǔ)0;左端(高位)移出的部分舍棄。

57.D解析:C語(yǔ)言規(guī)定,字符常量在程序中要用單引號(hào)括起來(lái)。判斷c1是否為小寫字母的充要條件c1>='a'和c1<='z',用邏輯與(&&)來(lái)表示。A選項(xiàng)的這種形式在C語(yǔ)言中沒(méi)有,所以選項(xiàng)D)正確.

58.B解析:函數(shù)gets()的調(diào)用形式為gets(str_adr);str_adr存放字符串的起始地址。可以是字符數(shù)組名、字符指針或字符數(shù)組元素的地址。gets函數(shù)用來(lái)從終端鍵盤讀入字符串(包括空格符),直到讀入一個(gè)換行符為止。本題中定義一個(gè)長(zhǎng)度為10的字符數(shù)組,和一個(gè)指針變量b,并且通過(guò)賦值讓它指向數(shù)組a。選項(xiàng)A、選項(xiàng)B、選項(xiàng)C和選項(xiàng)D中只有選項(xiàng)B中g(shù)ets函數(shù)的參數(shù)a[0]不能表示數(shù)組a的首地址,故選項(xiàng)B不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)B符合題意。

59.D解析:C語(yǔ)言中的文件是流式文件。流式文件是一種無(wú)結(jié)構(gòu)文件,即整個(gè)文件是一串字符流或二進(jìn)制流。文件的存取以字符或字節(jié)為單位。

60.B解析:本題考查if語(yǔ)句。scanf函數(shù)通過(guò)鍵盤讀入a、b的值,a=1,b=2。第一個(gè)if語(yǔ)句,先判斷條件,發(fā)現(xiàn)a<b條件成立,則s=b=2,s=s*s=4。

61.C

62.A數(shù)據(jù)管理技術(shù)的發(fā)展經(jīng)歷了3個(gè)階段:

人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。三者各自的特點(diǎn)如下表所示。\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t特點(diǎn)\t\t\t\t\t\t\t人工管理階段\t\t\t\t\t\t\t文件系統(tǒng)階段\t\t\t\t\t\t\t數(shù)據(jù)庫(kù)系統(tǒng)階段\t\t\t\t\t\t\t管理者\(yùn)t\t\t\t\t\t\t人\t\t\t\t\t\t\t文件系統(tǒng)\t\t\t\t\t\t\t數(shù)據(jù)庫(kù)管理系統(tǒng)\t\t\t\t\t\t\t面向?qū)ο骪t\t\t\t\t\t\t某個(gè)應(yīng)用程序\t\t\t\t\t\t\t某個(gè)應(yīng)用程序\t\t\t\t\t\t\t現(xiàn)實(shí)世界\t\t\t\t\t\t\t共享程度\t\t\t\t\t\t\t無(wú)共享,冗余度大\t\t\t\t\t\t\t共享性差,冗余度大\t\t\t\t\t\t\t共享性大,冗余度小\t\t\t\t\t\t\t獨(dú)立性\t\t\t\t\t\t\t不獨(dú)立,完全依賴于程序\t\t\t\t\t\t\t獨(dú)立性差\t\t\t\t\t\t\t具有高度的物理獨(dú)立性和一定的邏輯獨(dú)立性\t\t\t\t\t\t\t結(jié)構(gòu)化\t\t\t\t\t\t\t無(wú)結(jié)構(gòu)\t\t\t\t\t\t\t記錄內(nèi)有結(jié)構(gòu),整體無(wú)結(jié)構(gòu)\t\t\t\t\t\t\t整體結(jié)構(gòu)化。用數(shù)據(jù)筷基謄述\t\t\t\t\t\t\t控制能力\t\t\t\t\t\t\t由應(yīng)用程序控制\t\t\t\t\t\t\t由應(yīng)用程序控制\t\t\t\t\t\t\t由DB蝰墨供數(shù)據(jù)安全性、完整性、并發(fā)控剖和恢復(fù)\t\t\t\t數(shù)據(jù)庫(kù)系統(tǒng)可以解決數(shù)據(jù)冗余和數(shù)據(jù)獨(dú)立性問(wèn)題,面文件系統(tǒng)不能。數(shù)據(jù)庫(kù)系統(tǒng)和文件系統(tǒng)的區(qū)別

溫馨提示

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