




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2022-2023年四川省巴中市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.設(shè)變量P是指針變量,語(yǔ)句P=NULL;是給指針變量賦NULL值,它等價(jià)于()。A.A.p="";
B.p="0";
C.p=0;
D.p="";
2.以下敘述中正確的是()。
A.局部變量說(shuō)明為static存儲(chǔ)類,其生存期將得到延長(zhǎng)
B.全局變量說(shuō)明為static存儲(chǔ)類,其作用域?qū)⒈粩U(kuò)大
C.任何存儲(chǔ)類的變量在未賦初值時(shí),其值都是不確定的
D.形參可以使用的存儲(chǔ)類說(shuō)明符與局部變量完全相同
3.
4.以下程序的輸出結(jié)果是______。#defineSQR(X)X*Xmain(){inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("d\n",a);}
A.16B.2C.9D.1
5.有以下程序:#include<stdio.h>doublef(doublex);main(){doublea=0;inti;for(i=0;i<30;i+=10)a+=f((double)i);printf("%5.of\n",a);}doublef(doublex){returnx*x+1;}程序運(yùn)行后的輸出結(jié)果是()。A.503B.401C.500D.1404
6.有以下程序:#include<stdio.h>voidsub(doublea,double*pb);intmain(){doublex,y;scanf(“%lf%lf”,&x,&y);sub(x,&y);printf(“x=%fy=%f\n”,x,y);}voidsub(doublea,double*pb){a=a-*pb;*pb=*pb-a;}程序運(yùn)行時(shí)輸入10.23.5并按<Enter>鍵,則輸出結(jié)果為()。
A.x=10.200000y=-3.200000
B.x=6.700000y=-13.700000
C.x=7.000000y=-3.500000
D.x=13.400000y=-7.000000
7.有以下程序main(){union{charch[2];intd;}s;s.d=0x4321;printf("%x,%x\n",s.ch[0],s.ch[1]);}在16位編譯系統(tǒng)上,程序執(zhí)行后的輸出結(jié)果是______。A.21,43B.43,21C.43,00D.21,00
8.有以下程序:#include<stdio.h>main(){inta=2,b=2,C=2;print{("%d\n",a/b&c);}程序運(yùn)行后的輸出結(jié)果是()。A.0B.1C.2D.3
9.有以下程序:#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
10.有以下程序段intj;floaty;charname[50]:scanf("%2d%f%s",&i,&.y,name):當(dāng)執(zhí)行上述程序段,從鍵盤上輸入555667777abc后,y的值為()。A.55566.0B.566.0C.7777.0D.566777.0
11.堆是一種有用的數(shù)據(jù)結(jié)構(gòu)。下列關(guān)鍵碼序列()是一個(gè)堆。
A.94,31,53,23,16,72
B.94,53,31,72,16,23
C.16,53,23,94,31,72
D.16,31,23,94,53,72
12.設(shè)棧S的初始狀態(tài)為空,棧的容量為5,若入棧元素的順序是e1、e2、e3、e4、e5,則出棧元素的順序不可能是______。
A.e1、e2、e3、e4、e5
B.e5、e4、e3、e2、e1
C.e2、e4、e3、e5、e1
D.e3、e4、e1、e2、e5
13.
有以下程序:
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]);
printf("\n");}}
若要按以下形式輸出數(shù)組右上半三角
1234
678
1112
16
則在程序下劃線處應(yīng)填入的是()。
A.i-1B.iC.i+1D.4一i
14.設(shè)二叉排序樹(shù)中有n個(gè)結(jié)點(diǎn),則二叉排序樹(shù)的平均查找長(zhǎng)度為()。A.O(1)
B.O(log2n)
C.O(n)
D.(n2)
15.以下敘述中錯(cuò)誤的是(
)。A.函數(shù)形參的值也可以傳回給對(duì)應(yīng)的實(shí)參
B.函數(shù)調(diào)用可以作為一個(gè)獨(dú)立的語(yǔ)句存在
C.若函數(shù)有返回值,必須通過(guò)r;mm語(yǔ)句返回
D.C程序必須由一個(gè)或一個(gè)以上的函數(shù)組成
16.假定已建立以下鏈表結(jié)構(gòu),且指針p和q已指向如圖所示的節(jié)點(diǎn)。則下列選項(xiàng)中可將q所指節(jié)點(diǎn)從鏈表中刪除并釋放該節(jié)點(diǎn)的語(yǔ)句組是()。
A.p->next=q->next;free(q);
B.p=q->next;free(q);
C.p=q;free(q);
D.(*p).next=(*q).next;free(p);
17.
18.下列選項(xiàng)中非法的字符常量是()。
A.'\t'B.'\039'C.','D.'\n'
19.二叉樹(shù)的后序排列DBEFCA,中序排列DBAECF,那么對(duì)其做先序線索化二叉樹(shù),節(jié)點(diǎn)E的線索化指向節(jié)點(diǎn)()
A.BCB.ACC.DFD.CF
20.表達(dá)式a+=a-=a=9的值是()。
A.9B.-9C.18D.0
二、2.填空題(20題)21.軟件維護(hù)活動(dòng)包括以下幾類:改正性維護(hù)、適應(yīng)性維護(hù)、【】維護(hù)和預(yù)防性維護(hù)。
22.在計(jì)算機(jī)領(lǐng)域中,通常用英文單詞“Byte'’表示【】。
23.C語(yǔ)言中用______表示邏輯值為“真”,用數(shù)字“0”表示邏輯值為“假”。
24.下列程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{inta=2,b=1,c=2;
if(a<b)
if(b<0)c=0;
elsec++;
printf("%d\n",c);
}
25.若x和y都是double型變量,且x的初值為3.0,y的初值為2.0,則表達(dá)式pow(y,fabs(x))的值為【】。
26.若x和a均是血型變量,則計(jì)算完x=(a=4,6*2)后的x值為_(kāi)_____。
27.若有定義intm=5,y=2,則執(zhí)行表達(dá)式y(tǒng)+=y-=m*=y后,y的值為【】。
28.數(shù)據(jù)庫(kù)系統(tǒng)其內(nèi)部分為三級(jí)模式,即概念模式、內(nèi)模式和外模式。其中,______是用戶的數(shù)據(jù)視圖,也就是用戶所見(jiàn)到的數(shù)據(jù)模式。
29.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{
inti,n[]={0,0,0,0,0};
for(i=1;i<=4;i++)
n[i]=n[i-1]*2+1;
printf("%d",n[i]);
}
}
30.在一棵二叉樹(shù)上第6層的結(jié)點(diǎn)個(gè)數(shù)最多是【】。
31.深度為5的滿二叉樹(shù)有()個(gè)葉子節(jié)點(diǎn)。
32.實(shí)現(xiàn)算法所需的存儲(chǔ)單元多少和算法的工作量大小分別為算法的【】。
33.若有如下程序:
main()
{inta[][2]={1,2,6,9,11},(*t)[2];
t=a;
printf("%d,%d\n",*(t[1]+1),(*t)[1]);
}
則程序運(yùn)行后輸出的結(jié)果是【】。
34.下面程序運(yùn)行后的輸出結(jié)果是()。
#include<stdio.h>
main()
{inta[]={1,2,3,4,5,6},*k[3],i=1;
while(i<4)
{k[i-1]=&a[2*i-1];
printf("%d",*k[i-1]);
i++;
}
}
35.下列程序的輸出結(jié)果是【】。
intt(intx,inty,intcp,intdp)
{cp=x*x+y*y;
dp=x*x-y*y;
}
main()
{inta=4,b=3,c=5,d=6;
t(a,b,c,d);
printf("%d\n",c,d);
}
36.與表達(dá)式a+=b等價(jià)的另一書寫形式是______。
37.對(duì)于長(zhǎng)度為n的線性表,若進(jìn)行順序查找,時(shí)間復(fù)雜性為【】;若進(jìn)行二分查找,則時(shí)間復(fù)雜性為【】。
38.數(shù)據(jù)庫(kù)技術(shù)的主要特點(diǎn)為數(shù)據(jù)的集成性、數(shù)據(jù)的高【】和低冗余性、數(shù)據(jù)獨(dú)立性和數(shù)據(jù)統(tǒng)一管理與控制。
39.以下scanf函數(shù)調(diào)用語(yǔ)句中對(duì)結(jié)構(gòu)體變量成員的引用不正確的是{charname[20];}pup[5],*p;
40.一個(gè)項(xiàng)目具有一個(gè)項(xiàng)目主管,一個(gè)項(xiàng)目主管叫‘管理多個(gè)項(xiàng)目,則實(shí)體“主管”與實(shí)體“”的聯(lián)系屬于______。
三、1.選擇題(20題)41.下列敘述中,正確的是()。
A.用E—R圖能夠表示實(shí)體集間一對(duì)一的聯(lián)系、一對(duì)多的聯(lián)系和多對(duì)多的聯(lián)系
B.用E—R圖只能表示實(shí)體集之間一對(duì)一的聯(lián)系
C.用E—R圖只能表示實(shí)體集之間一對(duì)多的聯(lián)系
D.用E—R圖表示的概念數(shù)據(jù)模型只能轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型
42.軟件開(kāi)發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成()
A.定義、開(kāi)發(fā)、運(yùn)行維護(hù)
B.設(shè)計(jì)階段、編程階段、測(cè)試階段
C.總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編程調(diào)試
D.需求分析、功能定義、系統(tǒng)設(shè)計(jì)
43.語(yǔ)句int(*ptr)()的含義是()。
A.ptr是一個(gè)返回值是int的函數(shù)
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向血型數(shù)據(jù)的指針
44.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是______。
A.程序的規(guī)模B.程序的易讀性C.程序的執(zhí)行效率D.程序的可移植性
45.在C語(yǔ)言中,函數(shù)返回值的類型最終取決于()。
A.函數(shù)定義時(shí)在函數(shù)首部所說(shuō)明的函數(shù)類型
B.return語(yǔ)句中表達(dá)式值的類型
C.調(diào)用函數(shù)時(shí)主調(diào)函數(shù)所傳遞的實(shí)參類型
D.函數(shù)定義時(shí)形參的類型
46.在數(shù)據(jù)庫(kù)系統(tǒng)的內(nèi)部結(jié)構(gòu)體系中,索引屬于()。
A.模式B.內(nèi)模式C.外模式D.概念模式
47.在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開(kāi)發(fā)階段是()
A.邏輯設(shè)計(jì)B.需求分析C.詳細(xì)設(shè)計(jì)D.物理設(shè)計(jì)
48.下列程序的運(yùn)行結(jié)果為_(kāi)_____。#defineMSDOS#ifdefMSDOS#defineINTEGERSIZE32#else#defineINTEGERSIZE16#endifmain(){printf("integer_size=%d\n",INTEGER_SIZE);}
A.integersize=32
B.integer_size=16
C.integersize=32,integer_size=16
D.錯(cuò)誤
49.設(shè)有以下語(yǔ)句:typedefstructS{intg;charh;}T;則下面敘述中正確的是()。
A.可以用S定義結(jié)構(gòu)體變量B.可以用T定義結(jié)構(gòu)體變量C.S是struct類型的變量D.T是stnictS類型的變量
50.軟件開(kāi)發(fā)的原型化方法是一種動(dòng)態(tài)定義軟件需求的方法,下述條件中,______是實(shí)施原型化方法所必需的。
①成熟的原型化人員
②快速的成型工具
③需求了解的準(zhǔn)確性
A.①和③B.①和②C.②和③D.全部
51.有以下程序main(){inti;for(i=0;i<3;i++)switch(i){case0:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}}程序運(yùn)行后的輸出結(jié)果是______。
A.22111B.21021C.122D.12
52.定義int*swap()指的是______。
A.一個(gè)返回整型值的函swap()
B.—個(gè)返回指向整型值指針的swap()
C.一個(gè)指向函數(shù)swap()的指針,函數(shù)返回一個(gè)整型值
D.以上說(shuō)法均錯(cuò)
53.要正確定義并初始化一個(gè)數(shù)組a,它含有5個(gè)元素,則正確的語(yǔ)句是______。
A.inta[5]=(0,0,0,0,0);
B.inta[5]={};
C.inta[]={0,0,0,0,0};
D.inta[]={5*0};
54.以下不合法的用戶標(biāo)識(shí)符是______。A.j2KEYB.DoubleC.4dD._8_
55.以下敘述中錯(cuò)誤的是A.算法正確的程序最終一定會(huì)結(jié)束
B.算法正確的程序可以有零個(gè)輸出
C.算法正確的程序可以有零個(gè)輸入
D.算法正確的程序?qū)τ谙嗤妮斎胍欢ㄓ邢嗤慕Y(jié)果
56.以下定義語(yǔ)句中正確的是()。
A.chara='A'b='B';
B.floata=b=l0.0;
C.inta=l0,*b=&a;
D.float*a,b=&a;
57.下列程序的輸出結(jié)果是______。main(){intm=5;if(m++>5)printf("%d\n",m);elseprintf("%d\n",m--);}
A.7B.6C.5D.4
58.對(duì)于n個(gè)結(jié)點(diǎn)的單向鏈表(無(wú)表頭結(jié)點(diǎn)),需要指針單元的個(gè)數(shù)至少為_(kāi)_____。
A.n-1B.nC.n+1D.2n
59.已知小寫字母a的ASCII碼為97,大寫字母A的ASCII碼為65,以下程序的結(jié)果是______。main(){unsignedinta=32,b=66;printf("%c\n",a|b);}
A.66B.98C.bD.B
60.下列程序執(zhí)行的輸出結(jié)果是()。#include<stdio.h>main(){chara[2][4];strcpy(a,"are");strcpy(a[1],"you");a[0][3]='&';printf("%s\n",a);}
A.are&youB.youC.areD.&
四、選擇題(20題)61.(58)在數(shù)據(jù)流圖(DFD)中,帶有名字的箭頭表示______。
A.制程序的執(zhí)行順序
B.模塊之間的調(diào)用關(guān)系
C.數(shù)據(jù)的流向
D.程序的組成成分
62.若有定義語(yǔ)句:doublex,y,*px,*PY;執(zhí)行了laX=&x;lay=&y;之后,正確的輸入語(yǔ)句是()。A.scanf(”%If%le”,px,lay);
B.seanf(”%f%f¨&x,y);
C.seanf(”%f%f",x,y);
D.Scanf(”%If%If"·,x,y):
63.有如下說(shuō)明inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;則數(shù)值為9的表達(dá)式是()
A.*p+9B.*(p+8)C.*p+=9D.p+8
64.設(shè)有如下定義
char*s[2]={"abcd","ABCD"};
則下列說(shuō)法錯(cuò)誤的是
A.s數(shù)組元素的值分別是″abcd″和″ABCD″兩個(gè)字符串的首地址
B.s是指針數(shù)組名,它含有兩個(gè)元素,分別指向字符型一維數(shù)組
C.s數(shù)組的兩個(gè)元素分別存放的是含有4個(gè)字符的一維字符數(shù)組中的元素
D.s數(shù)組的兩個(gè)元素中分別存放了字符′a′和′A′的地址
65.
有以下程序,其中函數(shù)f的功能是將多個(gè)字符串按字典順序排序()。
#include<string.h>
voidf(char*p[],intn)
{char*t;inti,j;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(p[i],p[j]>0){t=p[i];p[i]=p[j];p[j]
=t;}
}
main
{char*P[5]={"abe","aabdfg","abbd","dcd-
be","cd"};
f(p,5);
printf("%d\n",strlen(p[1]));
}
程序運(yùn)行后的輸出結(jié)果是()o
A.2B.3C.6D.4
66.
67.軟件設(shè)計(jì)包括軟件的結(jié)構(gòu)、數(shù)據(jù)接口和過(guò)程設(shè)計(jì),其中軟件的過(guò)程設(shè)計(jì)是指()
A.模塊間的關(guān)系B.系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過(guò)程描述C.軟件層次結(jié)構(gòu)D.軟件開(kāi)發(fā)過(guò)程
68.以下敘述中正確的是______。A.預(yù)處理命令行必須位于源文件的開(kāi)頭
B.在源文件的一行上可以有多條預(yù)處理命令
C.宏名必須用大寫字母表示
D.宏替換不占用程序的運(yùn)行時(shí)間
69.有以下程序程序的運(yùn)行結(jié)果是()。
A.a=2,b=lB.a=2,b=2C.a=1,b=lD.a=1.b=0
70.
71.有下列函數(shù)定義:intfun(doublea,doubleb){returna*b;}若下列選項(xiàng)中所用變量都已經(jīng)正確定義并賦值,錯(cuò)誤的函數(shù)調(diào)用是()。A.if(fun(x,y)){……}
B.z=fun(fun(x,y),fun(x,y));
C.z=fun(fun(X,y)x,y);
D.fun(x,y);
72.下列敘述中正確的是()。
A.軟件測(cè)試應(yīng)該由程序開(kāi)發(fā)者來(lái)完成
B.程序經(jīng)調(diào)試后一般不需要測(cè)試
C.軟件維護(hù)只包括對(duì)程序代碼的維護(hù)
D.以上三種說(shuō)法都不對(duì)
73.
有下列程序:
#include<stdio.h>
main
{intx=0;
inty=0;
while(x<7&&++v)
{y--;
x++;}
printf("%d,%d",y,x);
}
程序的輸出結(jié)果是()。
A.0,7B.7,7C.0,6D.1,6
74.設(shè)有intx=11;則表達(dá)式(x++*1/3)的值是()。
A.3B.4C.11D.12
75.下列語(yǔ)句中,正確地執(zhí)行當(dāng)i等于5時(shí)執(zhí)行一些語(yǔ)句的條件語(yǔ)句是()。
A.if(i==5)B.ifi=5thenC.ifi=5D.ifi==5then
76.有以下程序
#include"stdio.h"
main()
{structdate
{intyear,month,day;}today;
printf("%d\n",sizeof(structdate));
}
程序的運(yùn)行結(jié)果是
A.6B.8
C.12D.10
77.有以下程序:
fun(intx)
{intP;
if(x==0||x==l)return(3);
p=x-fun(x-2);
returnp;
}
main
{printf("%d\n",fun(7));}
程序執(zhí)行后的輸出結(jié)果是()。A.A.7B.3C.2D.0
78.用數(shù)組名作為函數(shù)調(diào)用的實(shí)參,則傳遞給形參的是()。
A.數(shù)組中所有元素的值B.數(shù)組的第一個(gè)數(shù)據(jù)C.數(shù)組的首地址D.數(shù)組元素的個(gè)數(shù)
79.
以下程序的輸出結(jié)果是()。
main
{charw[][10]={"ABCD","EFGH","IJKL","
MNOP"),K;
for(k=1;k<3;k++)printf("%s\n",w[k]);
A.ABCDFGHKLB.ABCDEFGUC.EFGJKOD.EFGHUKL
80.
五、程序改錯(cuò)題(1題)81.寫出下列程序的運(yùn)行結(jié)果。
fun(inta,intb)
{if(a>b)return(a);
Elsereturn(b);}
main
{intx=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);printf(“%d\n”,r);}
六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開(kāi)考生文件夾下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,函數(shù)fun()的功能是將s所指字符串中下標(biāo)為偶數(shù)同時(shí)ASCII值為奇數(shù)的字符刪除,s所指字符串中剩余的字符形成的新字符串存放在t所指的數(shù)組中。例如,若s所指字符串中的內(nèi)容為“ABCDEFG12345”,其中字符C的ASCⅡ值為奇數(shù),在數(shù)組中的下標(biāo)為偶數(shù),因此必須刪除;而字符1的ASCⅡ值為奇數(shù),在數(shù)組中的下標(biāo)為奇數(shù),因此不應(yīng)當(dāng)刪除,其他依此類推。最后t所指的數(shù)組中的內(nèi)容應(yīng)是“BDH2345”。注意:部分源程序在文件prog1.c中。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫的若干語(yǔ)句。試題程序::
參考答案
1.C在C語(yǔ)言中null等價(jià)于數(shù)字0。
2.A解析:局部變量在執(zhí)行到它所在的程序塊時(shí)產(chǎn)生,執(zhí)行完時(shí)被摧毀,而靜態(tài)局部變量的生存期將一直延長(zhǎng)到程序運(yùn)行結(jié)束,故選項(xiàng)A正確;全局變量的只有一種靜態(tài)存儲(chǔ)類別,故全局變量說(shuō)明為static存儲(chǔ)類,和沒(méi)有說(shuō)明為static存儲(chǔ)類其生存期都是一直延長(zhǎng)到程序運(yùn)行結(jié)束,故選項(xiàng)B不正確:未賦初值的局部變量的初值是隨機(jī)的,故選項(xiàng)C不正確;形參只能是一般局部變量,不能使用任何存儲(chǔ)類說(shuō)明符,故選項(xiàng)D不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
3.B
4.D解析:本題考查帶參數(shù)的宏調(diào)用。a/=SQR(k+m)/SQR(k+m)進(jìn)行宏替換后得:a=a/(SQR(k+m)/SQR(k+m))=a/(k+m*k+m/k+m*k+m)=10/(2+1*2+1/2+1*2+1)=10/(2+2+0+2+1)=10/7/1。
5.A此題是一個(gè)簡(jiǎn)單的函數(shù)調(diào)用,當(dāng)i=0并且i<30,執(zhí)行i+=10,并且調(diào)用函數(shù)f,所以當(dāng)i=0時(shí),結(jié)果為1,當(dāng)i=10時(shí),結(jié)果為101,當(dāng)i=20時(shí),結(jié)果為401,所以a=1+101+401=503。
6.Asub函數(shù)接收兩個(gè)參數(shù):double類型變量a,double指針變量pb。首先將a與pb指向的變量值相減,結(jié)果存放在a中;然后再將pb指向的變量值與a的新值相減,結(jié)果存放在pb指向的內(nèi)存空間中。sub函數(shù)不會(huì)修改實(shí)參x的值,但會(huì)修改實(shí)參y的值。當(dāng)輸入10.23.5時(shí),實(shí)參x的值為10.2,y的值為3.5,執(zhí)行sub函數(shù)后,x的值不變,y的值變成-3.2。故本題答案為A選項(xiàng)。
7.A結(jié)構(gòu)體和共用體;在“聯(lián)合”中,各成員共享一段內(nèi)存空間,一個(gè)聯(lián)合變量的長(zhǎng)度等于各成員中最長(zhǎng)的長(zhǎng)度。應(yīng)該說(shuō)明的是,這里所謂的共享不是指把多個(gè)成員同時(shí)裝入一個(gè)聯(lián)合變量?jī)?nèi),而是指該聯(lián)合變量可被賦予任一成員值,但每次只能賦一種值,賦入新值則沖去舊值
8.A根據(jù)C語(yǔ)言運(yùn)算符的優(yōu)先級(jí)與結(jié)合性,先計(jì)算a/b,結(jié)果為l,再將a/b的結(jié)果與C做按位與運(yùn)算,即l與2做按位與運(yùn)算,其結(jié)果為0。
9.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)。
10.B變量J只接收輸入數(shù)據(jù)的前兩位,從第三位開(kāi)始直到空格之間的輸入整數(shù)都會(huì)被保存到浮點(diǎn)型變量Y中。
11.D
12.D解析:棧是僅在表頭和表尾進(jìn)行插入和刪除元素操作的線性表,其特點(diǎn)是“先進(jìn)后出”。本題中,進(jìn)棧的過(guò)程中可以出棧。選項(xiàng)D中,如果第一個(gè)出棧的元素為e3,由于入棧順序是e1、e2、e3,那么e3出棧后,棧中元素必定有e1和e2,因?yàn)閑1先入棧,故e1應(yīng)在e2后出棧,所以選項(xiàng)D是不可能的出棧順序。
13.B
\n本題中要求輸出右上半角的數(shù),對(duì)角線上的數(shù)的下標(biāo)相同,所以j=i。
\n
14.B
15.A函數(shù)參數(shù)傳遞是個(gè)不可逆的過(guò)程,形參不會(huì)把值傳回實(shí)參,所以A)選項(xiàng)(24)[答案]A)[解析]c的值為a乘以b的值,為3。所以答案選擇A)。
16.A其方法是將要?jiǎng)h除節(jié)點(diǎn)的上一個(gè)節(jié)點(diǎn)的next指向要?jiǎng)h除節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn),然后釋放將要?jiǎng)h除的節(jié)點(diǎn),所以選項(xiàng)A正確。故本題答案為A選項(xiàng)。
17.A
18.B水平制表符中,'\t'表示的是橫向跳若干格;選項(xiàng)B中,'\039'錯(cuò)誤,'\039'是八進(jìn)制形式表的字符,最大數(shù)為7,但其中出現(xiàn)'9',','是字符逗號(hào);選項(xiàng)D中,'\n'表示的是換行。
19.D
20.D解析:+=、-=、=等符號(hào)優(yōu)先級(jí)相同結(jié)合性是由右至左,所以選D。
21.完善性軟件維護(hù)活動(dòng)包括以下幾類:改正性維護(hù),適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù),完善性維護(hù)是指為了滿足用戶對(duì)軟件提出的新功能與性能要求,需要修改或再開(kāi)發(fā)軟件,以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件的可維護(hù)性。
22.字節(jié)字節(jié)
23.非0非0解析:邏輯運(yùn)算中,非0表示邏輯“真”,用。表示邏輯“假”。
24.22解析:分析程序,a=2,b=-1,c=2時(shí),if語(yǔ)句的表達(dá)式a<b不成立,不再柱下判斷,直接退出if語(yǔ)句,執(zhí)行后面的輸出語(yǔ)句,程序結(jié)束。在這個(gè)程序中a、b、c的值沒(méi)做任何改變。
25.88解析:fabs函數(shù)功能是求x的絕對(duì)值,計(jì)算結(jié)果為double型。pow功能是計(jì)算x的y次方的值,計(jì)算結(jié)果同樣為double型。所以本題表達(dá)式相當(dāng)于2.0的3.0次方,結(jié)果為8.000000。
26.1212解析:x=(表達(dá)式1,表達(dá)式2,…)的形式,結(jié)果為最后一個(gè)表達(dá)式的值:x=(a=4,6*2)=2*6=12。
27.-16-16解析:將賦值運(yùn)算符右側(cè)的“表達(dá)式”的值賦給左側(cè)的變量,并且賦值運(yùn)算符按照“自右而左”的結(jié)合順序,本題表達(dá)式應(yīng)先算m的值為10,再運(yùn)算y的值為8,最后計(jì)算y=y+(-8)=-8+(-8)=-16。
28.外模式外模式解析:數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式分別是內(nèi)模式、概念模式和外模式。其中,物理模式給出了數(shù)據(jù)庫(kù)的物理存儲(chǔ)結(jié)構(gòu)和存取方法;概念模式是數(shù)據(jù)庫(kù)系統(tǒng)中全局?jǐn)?shù)據(jù)邏輯結(jié)構(gòu)的描述;外模式是用戶的數(shù)據(jù)視圖,也就是用戶所見(jiàn)到的數(shù)據(jù)模式。
29.1371513715解析:本題中,定義了一個(gè)整型數(shù)組n并初始化,在for循環(huán)語(yǔ)句中,再對(duì)數(shù)組中各元素重新賦值。循環(huán)執(zhí)行第一次時(shí),n[1]=n[0]*2+1=0+1=1,pnntf函數(shù)輸出1,然后i的值加1,比較i<4成立,繼續(xù)執(zhí)行循環(huán)體語(yǔ)句,相應(yīng)輸出3、7、15,直至i<=4不成立,退出循環(huán)。所以最后輸出為1、3、7、15。
30.3232解析:根據(jù)二叉樹(shù)的性質(zhì),在二叉樹(shù)的第k層上,最多有2的k-1次方個(gè)結(jié)點(diǎn)。所以,第6層的結(jié)點(diǎn)數(shù)最多為32。
31.1616解析:在滿二叉樹(shù)中,每一層上的節(jié)點(diǎn)數(shù)都達(dá)到最大值,在第k層上有2[k-1]個(gè)節(jié)點(diǎn),且深度為m的滿二叉樹(shù)有2[m]-1個(gè)節(jié)點(diǎn),深度為5的滿二叉樹(shù)葉子節(jié)點(diǎn)數(shù)為2[5-1]=16。
32.空間復(fù)雜度和時(shí)間復(fù)雜度空間復(fù)雜度和時(shí)間復(fù)雜度解析:算法的復(fù)雜性是指對(duì)一個(gè)在有限步驟內(nèi)終止算法和所需存儲(chǔ)空間大小的估計(jì)。算法所需存儲(chǔ)空間大小是算法的空間復(fù)雜性,算法的計(jì)算量是算法的時(shí)間復(fù)雜性。
33.929,2解析:本題開(kāi)始定義了一個(gè)int型二維數(shù)組a,并賦以5個(gè)初值,系統(tǒng)使數(shù)組的最高維為3,并讓a[0][0]=1,a[0][1]=2,a[1][0]=6,a[1][1]=9,a[2][0]=11,a[2][1]因?yàn)槌踔挡粔蚨跏蓟癁?。然后定義一個(gè)行指針t指向數(shù)組a的首地址,因?yàn)楸磉_(dá)式t[1]表示指向元素a[1][0]的int型指針,t[1]+1表示指向a[1][1]的int型指針,故*(t[1]+1)返回的是a[1][1]的值9。而*t表示指向元素a[0][0]的int型指針,故(*t)[1]返回的是a[0][1]的值2。所以正確答案應(yīng)該為9,2。
34.246
35.5656解析:本題中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é)果是56。
36.a=a+ba=a+b解析:a+=b與a=a+b等價(jià),作用是把變量a的值加b后再賦給變量a。
37.O(n)O(log2n)
38.共享性共享性解析:數(shù)據(jù)庫(kù)技術(shù)的主要特點(diǎn)有以下幾個(gè)方面:數(shù)據(jù)的集成性,數(shù)據(jù)的高共享性與低冗余性,數(shù)據(jù)的獨(dú)立性,數(shù)據(jù)統(tǒng)一管理與控制。
39.D
40.一對(duì)多一對(duì)多解析:由于一個(gè)項(xiàng)目主管可以管理多個(gè)項(xiàng)目,而一個(gè)項(xiàng)目只能有一個(gè)項(xiàng)目主管,“項(xiàng)目主管”這個(gè)實(shí)體與“項(xiàng)目”這個(gè)實(shí)體的管理關(guān)系囑于一對(duì)多。
41.A\n兩個(gè)實(shí)體之間的聯(lián)系實(shí)際上是實(shí)體集問(wèn)的函數(shù)關(guān)系,這種函數(shù)關(guān)系可以有下面幾種,即一對(duì)一的聯(lián)系、一對(duì)多(或多對(duì)一)的聯(lián)系和多對(duì)多的聯(lián)系;概念模型便于向各種模型轉(zhuǎn)換。由于概念模型不依賴于具體的數(shù)據(jù)庫(kù)管理系統(tǒng),因此,容易向關(guān)系模型、網(wǎng)狀模型和層次模型等各種模型轉(zhuǎn)換。
\n
42.A解析:通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱為軟件生命周期。它可以分為軟件定義、軟件開(kāi)發(fā)及軟件運(yùn)行維護(hù)3個(gè)階段。
43.C解析:本題考查的是指向函數(shù)的指針.函數(shù)指針定義的基本格式為:類型標(biāo)識(shí)符(*指針變量名)()?!邦愋蜆?biāo)識(shí)符”為函數(shù)返回值的類型。
44.B解析:采用結(jié)構(gòu)化編程方法的好處主要在于:一是便于控制、降低程序的復(fù)雜性,因此便于編寫程序。二是程序清晰易讀,可理解性好。因此,結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是程序的易讀性,而不是程序的規(guī)模、程序的執(zhí)行效率和程序的可移植性。
45.A解析:在C語(yǔ)言中,應(yīng)當(dāng)在定義函數(shù)時(shí)指定函數(shù)值的類型。凡不加類型說(shuō)明的函數(shù),默認(rèn)按整型處理。在定義函數(shù)時(shí)對(duì)函數(shù)值說(shuō)明的類型一般應(yīng)該和return語(yǔ)句中的表達(dá)式類型一致。如果函數(shù)值的類型和return語(yǔ)句中的表達(dá)式類型不一致,則以函數(shù)值的類型為準(zhǔn),由系統(tǒng)自動(dòng)進(jìn)行轉(zhuǎn)換,即函數(shù)類型決定返回值的類型。
46.BB)【解析】?jī)?nèi)模式又稱物理模式,它給出了數(shù)據(jù)庫(kù)物理存儲(chǔ)結(jié)構(gòu)與物理存取方法,如數(shù)據(jù)存儲(chǔ)的文件結(jié)構(gòu)、索引、集簇及hash等存取方式與存取路徑,內(nèi)模式的物理性主要體現(xiàn)在操作系統(tǒng)及文件級(jí)上,它還未深入到設(shè)備級(jí)上(如磁盤及磁盤操作)。
47.BB)【解析】軟件開(kāi)發(fā)階段包括需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼和測(cè)試_五個(gè)階段。其中需求分析階段常用的工具是數(shù)據(jù)流圖和數(shù)據(jù)字典。
48.A
49.B解析:本題使用typedef關(guān)鍵字將整個(gè)結(jié)構(gòu)體的定義部分stmctS{intg;charh;}聲明為別名T。此時(shí)T是一個(gè)結(jié)構(gòu)體類型,可以直接使用T聲明該結(jié)構(gòu)體變量,而S只是一個(gè)結(jié)構(gòu)體名,必須結(jié)合struct關(guān)鍵字才能聲明變量。故本題的正確答案為B。
50.B
51.C解析:程序中for循環(huán)了三次,第一次i=0,執(zhí)行switch語(yǔ)句中case0:分支,直到遇到default語(yǔ)句,退出switch,這里共執(zhí)行了三個(gè)輸出語(yǔ)句分別輸出0,0,0,第二次循環(huán)i=1,switch語(yǔ)句中沒(méi)有匹配的分支,故只執(zhí)行default語(yǔ)句輸出1,退出switch語(yǔ)句;第三次循環(huán)i=2,從switch語(yǔ)句中的case2:開(kāi)始執(zhí)行,共執(zhí)行了兩個(gè)輸出語(yǔ)句輸出2、2。最后輸出的結(jié)果為000122。
52.B解析:一個(gè)函數(shù)可以帶回一個(gè)整型值、字符值、實(shí)型值等,但也可以帶回指針型數(shù)據(jù),即地址。本題的定義中,包括括號(hào)和*號(hào),由于()優(yōu)先級(jí)高于*。故它是—個(gè)返回整型指針的函數(shù)。
53.C解析:A項(xiàng)是錯(cuò)誤的,賦值時(shí)用的是花括號(hào)而不是圓括號(hào)。B項(xiàng)錯(cuò)在不能初始化時(shí)在花括號(hào)內(nèi)為空。D項(xiàng)錯(cuò)在不可以用表達(dá)式對(duì)數(shù)組一一賦值。C項(xiàng)雖然沒(méi)有直接定義數(shù)組的大小,但是初始化時(shí)只賦了5個(gè)元素的值,系統(tǒng)會(huì)自動(dòng)定義數(shù)組的大小為5,這種形式是正確的。
54.C解析:C語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種符號(hào)組成,而且第—個(gè)字符必須是字母或下劃線。大寫字母和小寫字母被認(rèn)為是兩個(gè)不同的字符,用戶在定義標(biāo)識(shí)符時(shí)應(yīng)做到“見(jiàn)名知意”,且不允許使用關(guān)鍵字作標(biāo)識(shí)符。
55.B(45)B)解析:算法應(yīng)該具有下列五個(gè)特性:
①有窮性:一個(gè)算法必須在執(zhí)行有窮步之后結(jié)束。
②確定性:算法中的每一步,必須有確切的含義,在他人理解時(shí)不會(huì)產(chǎn)生二義性。
③動(dòng)態(tài)性:算法中描述的每一步操作都可以通過(guò)已有的基本操作執(zhí)行有限次實(shí)現(xiàn)。
④輸入:一個(gè)算法應(yīng)該有零個(gè)或多個(gè)輸入。
⑤輸出:一個(gè)算法應(yīng)該有一個(gè)或多個(gè)輸出。這里所說(shuō)的輸出是指與輸入有某種特定關(guān)系的量。
56.C解析:C語(yǔ)言中可以同時(shí)定義多個(gè)變量,但變量之間必須用“,”隔開(kāi),顯然,選項(xiàng)A中少了一個(gè)逗號(hào)“,”,故選項(xiàng)A不正確;選項(xiàng)B中定義變量時(shí)用了連續(xù)的賦值語(yǔ)句,這在定義變量是不正確的,故選項(xiàng)B不正確:選項(xiàng)D定義了一個(gè)float型指針a,然后定義了一個(gè)float型變量b,并。讓這個(gè)變量的初值為指針變量a的地址,顯然這是錯(cuò)誤的,除非b是指向float型指針變量的指針。故選項(xiàng)D不正確,所以選項(xiàng)C符合題意。
57.B
58.C解析:在n個(gè)結(jié)點(diǎn)的單向鏈表(無(wú)表頭結(jié)點(diǎn))中,每個(gè)結(jié)點(diǎn)都有一個(gè)指針單元(即指針域),加上頭指針,至少需要n+1個(gè)指針單元。
59.C解析:位運(yùn)算符“|”的作用是按位或,即兩個(gè)二進(jìn)制數(shù)的相應(yīng)位中只要有一個(gè)為1,該位的結(jié)果值為1。最后以字符型輸出,98對(duì)應(yīng)的字符“b”。
60.A解析:strcpy(a,'are')中數(shù)組名a代表數(shù)組首地址的地址常量,該操作把a(bǔ)re復(fù)制到a中,a[0][3]=\'&\',且strcpy(a[1],'you')把you復(fù)制到a[1]中,故輸出a為“are&you”。
61.C
62.A因?yàn)閄,Y都是double型數(shù)據(jù),所以輸入時(shí)的格式字符應(yīng)為%If,所以B與C錯(cuò)誤。D選項(xiàng)中scanf(”%lf%%’,x,Y);應(yīng)為sc“(”%If%If"’,,&)r);。
63.B解析:在C語(yǔ)言的數(shù)組元素的引用方法,我們?cè)谇懊嬉呀?jīng)講過(guò)了,比如數(shù)組元素a[0],可以用表達(dá)式*(p+0),即*p來(lái)引用,對(duì)于數(shù)組元素a[1],可以用表達(dá)式*(p+1)來(lái)引用,在這里,p+1的值就是數(shù)組元素a[1]的地址,對(duì)此地址使用“間接訪問(wèn)運(yùn)算符”:*(p+1)就代表存儲(chǔ)單元a[1],注意:一對(duì)圓括號(hào)不可少。同樣,對(duì)于數(shù)組元素a[2],則可以用表達(dá)式。(p+2)來(lái)引用…,對(duì)于數(shù)組元素a[9],可以用表達(dá)式,(p+9)來(lái)引用。因此,當(dāng)指針變量p指向a數(shù)組的起始地址時(shí),若0≤i<10,則數(shù)組元素a[i]可以用*(p+i)來(lái)表示。
64.C本題主要考查指針數(shù)組。指針數(shù)組的特點(diǎn)是指針數(shù)組中的每一個(gè)元素都是一個(gè)指針。在本題中,定義了一個(gè)大小為2的字符型指針數(shù)組,并進(jìn)行了初始化操作。下面分別分析四個(gè)選項(xiàng)對(duì)指針數(shù)據(jù)s的描述。
由于s中的兩個(gè)元素是兩個(gè)指針,可以指向字符串,也可以指向一維數(shù)組,因此說(shuō)其是″abcd″和″ABCD″兩個(gè)字符串的首地址是正確的;同理,說(shuō)其兩個(gè)元素分別指向字符型一維數(shù)組也是正確的。
由于指針數(shù)組s的兩個(gè)元素分別指向″abcd″和″ABCD″兩個(gè)字符串的首地址,那么它們的當(dāng)前值是字符′a′和′A′的地址,而非一維字符數(shù)組中的元素值。
綜上所述,可以知道本題的答案是C。
65.B
\n函數(shù)voidf的功能是將字符指針數(shù)組*p[]中的每個(gè)字符串按照從小到大的順序排序。在主函數(shù)main中,調(diào)用f(P,5)后,字符指針數(shù)組*p[5]中的字符串按照字典順序從小到大排列為如下形式,即*p[5]={'aab-dfg','abbd','abc','cd','dcdbe'),因此P[1]='abdb',strlen(p[1])=4。
\n
66.C
67.B軟件設(shè)計(jì)包括軟件的結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)接口設(shè)計(jì)和過(guò)程設(shè)計(jì)。其中軟件結(jié)構(gòu)設(shè)計(jì)主要包括系統(tǒng)由哪些子系統(tǒng)構(gòu)成,以及這些子系統(tǒng)之間的關(guān)系是怎樣的,并將這些內(nèi)容編寫成文檔;數(shù)據(jù)接口設(shè)計(jì)的任務(wù)是為每個(gè)子系統(tǒng)設(shè)計(jì)其與其他子系統(tǒng)間的接口,并編寫成文檔,這個(gè)接口要是一個(gè)無(wú)二義的接口,不需要子系統(tǒng)的操作知識(shí)就可以使用;過(guò)程設(shè)計(jì)是指系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過(guò)程描述。
68.D本題主要考查宏的一些基本概念。通常,預(yù)處理命令位于源文件的開(kāi)頭,但不一定必須位于開(kāi)頭,也可以寫在函數(shù)與函數(shù)之間;由于預(yù)處理命令的末尾不加分號(hào),不以分號(hào)來(lái)區(qū)分一條宏命令,所以,不能在一行上寫多條預(yù)處理命令,只能寫一條,否則,系統(tǒng)處理時(shí)就會(huì)把它當(dāng)做一條命令處理;宏名一般習(xí)慣用大寫字母表示,以便與變量名相區(qū)別,這只是習(xí)慣用法,并不是C語(yǔ)言中有這樣的規(guī)定,宏的定義可用小寫字母;C語(yǔ)言中,宏的替換是在程序編譯時(shí)進(jìn)行,不占用程序運(yùn)行的時(shí)間,故本題答案為D。
69.Acase常量表達(dá)式只是起語(yǔ)句標(biāo)號(hào)作用,并不是該處進(jìn)行條件判斷。在執(zhí)行switch語(yǔ)句時(shí),根據(jù)switch的表達(dá)式,找到與之匹配的case語(yǔ)句,就從該case-子句執(zhí)行下去,不再進(jìn)行判斷。直到碰到break競(jìng)語(yǔ)句結(jié)束為止。因此執(zhí)行內(nèi)層switch(y)時(shí)只執(zhí)行了a++,此時(shí)a的值為l。然后執(zhí)行外層case2語(yǔ)句的a++;b++.a(chǎn)為2,b為l。所以結(jié)果為A)。
70.C
71.C本題考查函數(shù)在函數(shù)調(diào)用時(shí)參數(shù)的傳遞形式,形參與實(shí)參參數(shù)個(gè)數(shù)類型要一致。
72.D程序調(diào)試是由程序開(kāi)發(fā)者完成診斷和改正程序中的錯(cuò)誤的過(guò)程;軟件測(cè)試是由專門的測(cè)試人員完成,是發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程;軟件維護(hù)是指軟件系統(tǒng)交付使用以后,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過(guò)程,是軟件生存周期中非常重要的一個(gè)階段。
73.A
\n本題考查while循環(huán)。在while循環(huán)中,y自加每次循環(huán)都加l,在循環(huán)體內(nèi)y--每次減1,所以總的y值不變,當(dāng)x自加到7時(shí),不滿足循環(huán)條件,循環(huán)結(jié)束。
\n
74.A解析:當(dāng)自加運(yùn)算符做后綴表達(dá)式的時(shí)候,表達(dá)式的值不變,只有變量的值增加1,所以表達(dá)式(x++*1/3)相當(dāng)于(11*1/3),值為3。
75.A
76.A本題考查結(jié)構(gòu)體類型所占用的內(nèi)存字節(jié)數(shù)。結(jié)構(gòu)體占用的內(nèi)存字節(jié)數(shù)為各個(gè)成員變量所占內(nèi)存字節(jié)數(shù)的總和。題目中給出了一個(gè)結(jié)構(gòu)體date,里面包括3個(gè)整型的成員變量,在TurboC中,每個(gè)整型變量占用2個(gè)字節(jié)的內(nèi)存,這3個(gè)整型變量總共占用6個(gè)字節(jié)的內(nèi)存。sizeof函數(shù)是返回對(duì)象所占內(nèi)存的大小。要注意,對(duì)于不同的編譯器,同樣類型的變量所占的內(nèi)存字節(jié)數(shù)不同,C語(yǔ)言的默認(rèn)編譯器為TurboC。
77.C在函數(shù)fun(intx)中,有個(gè)if語(yǔ)句判斷,如果參數(shù)x等于0或1時(shí),返回值,否則進(jìn)入下面的p=x-fun(x-2)遞歸函數(shù)。當(dāng)在主函勢(shì)中調(diào)用fun(7)時(shí),其過(guò)程為:“fun(7)=7-fun(5)=7-(5一fun(3))=7-(5-(3-fun(1)))=7-(5-(3—3))=7-5=2”,所以最后的輸出結(jié)果為2。
78.C數(shù)組名是一個(gè)指針常量,它的值就是數(shù)組的地址,也就是數(shù)組首元素地址。
79.D
\n當(dāng)k=1時(shí),循環(huán)成立,輸出w[l]的數(shù)組即EFGH,接著執(zhí)行k++后k為2;當(dāng)k=2時(shí),循環(huán)成立,輸出w[2]的數(shù)組即IJKL,接著執(zhí)行k++后,k為3;當(dāng)k=3時(shí),循環(huán)不成立,退出。
\n
80.C
81.
82.1voidfun(char*s,chart[])2{3inti,j=0;4for(i=0;i<strlen(s);i++)5if(!((i%2)==0&&(s[i]%2)))6t[j++]=s[i];7t[j]=0;8}按題目要求,將字符串S中符合要求的字符存放到字符數(shù)組t中。我們使用for循環(huán)語(yǔ)句來(lái)解決這個(gè)問(wèn)題。在賦值之前,先對(duì)字符串s的元素下標(biāo)和ASCⅡ值進(jìn)行判斷,將滿足要求的元素賦給數(shù)組t,將數(shù)組t的最后一個(gè)字符賦值為'\\0',即ASCⅡ值為0。2022-2023年四川省巴中市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.設(shè)變量P是指針變量,語(yǔ)句P=NULL;是給指針變量賦NULL值,它等價(jià)于()。A.A.p="";
B.p="0";
C.p=0;
D.p="";
2.以下敘述中正確的是()。
A.局部變量說(shuō)明為static存儲(chǔ)類,其生存期將得到延長(zhǎng)
B.全局變量說(shuō)明為static存儲(chǔ)類,其作用域?qū)⒈粩U(kuò)大
C.任何存儲(chǔ)類的變量在未賦初值時(shí),其值都是不確定的
D.形參可以使用的存儲(chǔ)類說(shuō)明符與局部變量完全相同
3.
4.以下程序的輸出結(jié)果是______。#defineSQR(X)X*Xmain(){inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("d\n",a);}
A.16B.2C.9D.1
5.有以下程序:#include<stdio.h>doublef(doublex);main(){doublea=0;inti;for(i=0;i<30;i+=10)a+=f((double)i);printf("%5.of\n",a);}doublef(doublex){returnx*x+1;}程序運(yùn)行后的輸出結(jié)果是()。A.503B.401C.500D.1404
6.有以下程序:#include<stdio.h>voidsub(doublea,double*pb);intmain(){doublex,y;scanf(“%lf%lf”,&x,&y);sub(x,&y);printf(“x=%fy=%f\n”,x,y);}voidsub(doublea,double*pb){a=a-*pb;*pb=*pb-a;}程序運(yùn)行時(shí)輸入10.23.5并按<Enter>鍵,則輸出結(jié)果為()。
A.x=10.200000y=-3.200000
B.x=6.700000y=-13.700000
C.x=7.000000y=-3.500000
D.x=13.400000y=-7.000000
7.有以下程序main(){union{charch[2];intd;}s;s.d=0x4321;printf("%x,%x\n",s.ch[0],s.ch[1]);}在16位編譯系統(tǒng)上,程序執(zhí)行后的輸出結(jié)果是______。A.21,43B.43,21C.43,00D.21,00
8.有以下程序:#include<stdio.h>main(){inta=2,b=2,C=2;print{("%d\n",a/b&c);}程序運(yùn)行后的輸出結(jié)果是()。A.0B.1C.2D.3
9.有以下程序:#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
10.有以下程序段intj;floaty;charname[50]:scanf("%2d%f%s",&i,&.y,name):當(dāng)執(zhí)行上述程序段,從鍵盤上輸入555667777abc后,y的值為()。A.55566.0B.566.0C.7777.0D.566777.0
11.堆是一種有用的數(shù)據(jù)結(jié)構(gòu)。下列關(guān)鍵碼序列()是一個(gè)堆。
A.94,31,53,23,16,72
B.94,53,31,72,16,23
C.16,53,23,94,31,72
D.16,31,23,94,53,72
12.設(shè)棧S的初始狀態(tài)為空,棧的容量為5,若入棧元素的順序是e1、e2、e3、e4、e5,則出棧元素的順序不可能是______。
A.e1、e2、e3、e4、e5
B.e5、e4、e3、e2、e1
C.e2、e4、e3、e5、e1
D.e3、e4、e1、e2、e5
13.
有以下程序:
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]);
printf("\n");}}
若要按以下形式輸出數(shù)組右上半三角
1234
678
1112
16
則在程序下劃線處應(yīng)填入的是()。
A.i-1B.iC.i+1D.4一i
14.設(shè)二叉排序樹(shù)中有n個(gè)結(jié)點(diǎn),則二叉排序樹(shù)的平均查找長(zhǎng)度為()。A.O(1)
B.O(log2n)
C.O(n)
D.(n2)
15.以下敘述中錯(cuò)誤的是(
)。A.函數(shù)形參的值也可以傳回給對(duì)應(yīng)的實(shí)參
B.函數(shù)調(diào)用可以作為一個(gè)獨(dú)立的語(yǔ)句存在
C.若函數(shù)有返回值,必須通過(guò)r;mm語(yǔ)句返回
D.C程序必須由一個(gè)或一個(gè)以上的函數(shù)組成
16.假定已建立以下鏈表結(jié)構(gòu),且指針p和q已指向如圖所示的節(jié)點(diǎn)。則下列選項(xiàng)中可將q所指節(jié)點(diǎn)從鏈表中刪除并釋放該節(jié)點(diǎn)的語(yǔ)句組是()。
A.p->next=q->next;free(q);
B.p=q->next;free(q);
C.p=q;free(q);
D.(*p).next=(*q).next;free(p);
17.
18.下列選項(xiàng)中非法的字符常量是()。
A.'\t'B.'\039'C.','D.'\n'
19.二叉樹(shù)的后序排列DBEFCA,中序排列DBAECF,那么對(duì)其做先序線索化二叉樹(shù),節(jié)點(diǎn)E的線索化指向節(jié)點(diǎn)()
A.BCB.ACC.DFD.CF
20.表達(dá)式a+=a-=a=9的值是()。
A.9B.-9C.18D.0
二、2.填空題(20題)21.軟件維護(hù)活動(dòng)包括以下幾類:改正性維護(hù)、適應(yīng)性維護(hù)、【】維護(hù)和預(yù)防性維護(hù)。
22.在計(jì)算機(jī)領(lǐng)域中,通常用英文單詞“Byte'’表示【】。
23.C語(yǔ)言中用______表示邏輯值為“真”,用數(shù)字“0”表示邏輯值為“假”。
24.下列程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{inta=2,b=1,c=2;
if(a<b)
if(b<0)c=0;
elsec++;
printf("%d\n",c);
}
25.若x和y都是double型變量,且x的初值為3.0,y的初值為2.0,則表達(dá)式pow(y,fabs(x))的值為【】。
26.若x和a均是血型變量,則計(jì)算完x=(a=4,6*2)后的x值為_(kāi)_____。
27.若有定義intm=5,y=2,則執(zhí)行表達(dá)式y(tǒng)+=y-=m*=y后,y的值為【】。
28.數(shù)據(jù)庫(kù)系統(tǒng)其內(nèi)部分為三級(jí)模式,即概念模式、內(nèi)模式和外模式。其中,______是用戶的數(shù)據(jù)視圖,也就是用戶所見(jiàn)到的數(shù)據(jù)模式。
29.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{
inti,n[]={0,0,0,0,0};
for(i=1;i<=4;i++)
n[i]=n[i-1]*2+1;
printf("%d",n[i]);
}
}
30.在一棵二叉樹(shù)上第6層的結(jié)點(diǎn)個(gè)數(shù)最多是【】。
31.深度為5的滿二叉樹(shù)有()個(gè)葉子節(jié)點(diǎn)。
32.實(shí)現(xiàn)算法所需的存儲(chǔ)單元多少和算法的工作量大小分別為算法的【】。
33.若有如下程序:
main()
{inta[][2]={1,2,6,9,11},(*t)[2];
t=a;
printf("%d,%d\n",*(t[1]+1),(*t)[1]);
}
則程序運(yùn)行后輸出的結(jié)果是【】。
34.下面程序運(yùn)行后的輸出結(jié)果是()。
#include<stdio.h>
main()
{inta[]={1,2,3,4,5,6},*k[3],i=1;
while(i<4)
{k[i-1]=&a[2*i-1];
printf("%d",*k[i-1]);
i++;
}
}
35.下列程序的輸出結(jié)果是【】。
intt(intx,inty,intcp,intdp)
{cp=x*x+y*y;
dp=x*x-y*y;
}
main()
{inta=4,b=3,c=5,d=6;
t(a,b,c,d);
printf("%d\n",c,d);
}
36.與表達(dá)式a+=b等價(jià)的另一書寫形式是______。
37.對(duì)于長(zhǎng)度為n的線性表,若進(jìn)行順序查找,時(shí)間復(fù)雜性為【】;若進(jìn)行二分查找,則時(shí)間復(fù)雜性為【】。
38.數(shù)據(jù)庫(kù)技術(shù)的主要特點(diǎn)為數(shù)據(jù)的集成性、數(shù)據(jù)的高【】和低冗余性、數(shù)據(jù)獨(dú)立性和數(shù)據(jù)統(tǒng)一管理與控制。
39.以下scanf函數(shù)調(diào)用語(yǔ)句中對(duì)結(jié)構(gòu)體變量成員的引用不正確的是{charname[20];}pup[5],*p;
40.一個(gè)項(xiàng)目具有一個(gè)項(xiàng)目主管,一個(gè)項(xiàng)目主管叫‘管理多個(gè)項(xiàng)目,則實(shí)體“主管”與實(shí)體“”的聯(lián)系屬于______。
三、1.選擇題(20題)41.下列敘述中,正確的是()。
A.用E—R圖能夠表示實(shí)體集間一對(duì)一的聯(lián)系、一對(duì)多的聯(lián)系和多對(duì)多的聯(lián)系
B.用E—R圖只能表示實(shí)體集之間一對(duì)一的聯(lián)系
C.用E—R圖只能表示實(shí)體集之間一對(duì)多的聯(lián)系
D.用E—R圖表示的概念數(shù)據(jù)模型只能轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型
42.軟件開(kāi)發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成()
A.定義、開(kāi)發(fā)、運(yùn)行維護(hù)
B.設(shè)計(jì)階段、編程階段、測(cè)試階段
C.總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編程調(diào)試
D.需求分析、功能定義、系統(tǒng)設(shè)計(jì)
43.語(yǔ)句int(*ptr)()的含義是()。
A.ptr是一個(gè)返回值是int的函數(shù)
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向血型數(shù)據(jù)的指針
44.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是______。
A.程序的規(guī)模B.程序的易讀性C.程序的執(zhí)行效率D.程序的可移植性
45.在C語(yǔ)言中,函數(shù)返回值的類型最終取決于()。
A.函數(shù)定義時(shí)在函數(shù)首部所說(shuō)明的函數(shù)類型
B.return語(yǔ)句中表達(dá)式值的類型
C.調(diào)用函數(shù)時(shí)主調(diào)函數(shù)所傳遞的實(shí)參類型
D.函數(shù)定義時(shí)形參的類型
46.在數(shù)據(jù)庫(kù)系統(tǒng)的內(nèi)部結(jié)構(gòu)體系中,索引屬于()。
A.模式B.內(nèi)模式C.外模式D.概念模式
47.在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開(kāi)發(fā)階段是()
A.邏輯設(shè)計(jì)B.需求分析C.詳細(xì)設(shè)計(jì)D.物理設(shè)計(jì)
48.下列程序的運(yùn)行結(jié)果為_(kāi)_____。#defineMSDOS#ifdefMSDOS#defineINTEGERSIZE32#else#defineINTEGERSIZE16#endifmain(){printf("integer_size=%d\n",INTEGER_SIZE);}
A.integersize=32
B.integer_size=16
C.integersize=32,integer_size=16
D.錯(cuò)誤
49.設(shè)有以下語(yǔ)句:typedefstructS{intg;charh;}T;則下面敘述中正確的是()。
A.可以用S定義結(jié)構(gòu)體變量B.可以用T定義結(jié)構(gòu)體變量C.S是struct類型的變量D.T是stnictS類型的變量
50.軟件開(kāi)發(fā)的原型化方法是一種動(dòng)態(tài)定義軟件需求的方法,下述條件中,______是實(shí)施原型化方法所必需的。
①成熟的原型化人員
②快速的成型工具
③需求了解的準(zhǔn)確性
A.①和③B.①和②C.②和③D.全部
51.有以下程序main(){inti;for(i=0;i<3;i++)switch(i){case0:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}}程序運(yùn)行后的輸出結(jié)果是______。
A.22111B.21021C.122D.12
52.定義int*swap()指的是______。
A.一個(gè)返回整型值的函swap()
B.—個(gè)返回指向整型值指針的swap()
C.一個(gè)指向函數(shù)swap()的指針,函數(shù)返回一個(gè)整型值
D.以上說(shuō)法均錯(cuò)
53.要正確定義并初始化一個(gè)數(shù)組a,它含有5個(gè)元素,則正確的語(yǔ)句是______。
A.inta[5]=(0,0,0,0,0);
B.inta[5]={};
C.inta[]={0,0,0,0,0};
D.inta[]={5*0};
54.以下不合法的用戶標(biāo)識(shí)符是______。A.j2KEYB.DoubleC.4dD._8_
55.以下敘述中錯(cuò)誤的是A.算法正確的程序最終一定會(huì)結(jié)束
B.算法正確的程序可以有零個(gè)輸出
C.算法正確的程序可以有零個(gè)輸入
D.算法正確的程序?qū)τ谙嗤妮斎胍欢ㄓ邢嗤慕Y(jié)果
56.以下定義語(yǔ)句中正確的是()。
A.chara='A'b='B';
B.floata=b=l0.0;
C.inta=l0,*b=&a;
D.float*a,b=&a;
57.下列程序的輸出結(jié)果是______。main(){intm=5;if(m++>5)printf("%d\n",m);elseprintf("%d\n",m--);}
A.7B.6C.5D.4
58.對(duì)于n個(gè)結(jié)點(diǎn)的單向鏈表(無(wú)表頭結(jié)點(diǎn)),需要指針單元的個(gè)數(shù)至少為_(kāi)_____。
A.n-1B.nC.n+1D.2n
59.已知小寫字母a的ASCII碼為97,大寫字母A的ASCII碼為65,以下程序的結(jié)果是______。main(){unsignedinta=32,b=66;printf("%c\n",a|b);}
A.66B.98C.bD.B
60.下列程序執(zhí)行的輸出結(jié)果是()。#include<stdio.h>main(){chara[2][4];strcpy(a,"are");strcpy(a[1],"you");a[0][3]='&';printf("%s\n",a);}
A.are&youB.youC.areD.&
四、選擇題(20題)61.(58)在數(shù)據(jù)流圖(DFD)中,帶有名字的箭頭表示______。
A.制程序的執(zhí)行順序
B.模塊之間的調(diào)用關(guān)系
C.數(shù)據(jù)的流向
D.程序的組成成分
62.若有定義語(yǔ)句:doublex,y,*px,*PY;執(zhí)行了laX=&x;lay=&y;之后,正確的輸入語(yǔ)句是()。A.scanf(”%If%le”,px,lay);
B.seanf(”%f%f¨&x,y);
C.seanf(”%f%f",x,y);
D.Scanf(”%If%If"·,x,y):
63.有如下說(shuō)明inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;則數(shù)值為9的表達(dá)式是()
A.*p+9B.*(p+8)C.*p+=9D.p+8
64.設(shè)有如下定義
char*s[2]={"abcd","ABCD"};
則下列說(shuō)法錯(cuò)誤的是
A.s數(shù)組元素的值分別是″abcd″和″ABCD″兩個(gè)字符串的首地址
B.s是指針數(shù)組名,它含有兩個(gè)元素,分別指向字符型一維數(shù)組
C.s數(shù)組的兩個(gè)元素分別存放的是含有4個(gè)字符的一維字符數(shù)組中的元素
D.s數(shù)組的兩個(gè)元素中分別存放了字符′a′和′A′的地址
65.
有以下程序,其中函數(shù)f的功能是將多個(gè)字符串按字典順序排序()。
#include<string.h>
voidf(char*p[],intn)
{char*t;inti,j;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(p[i],p[j]>0){t=p[i];p[i]=p[j];p[j]
=t;}
}
main
{char*P[5]={"abe","aabdfg","abbd","dcd-
be","cd"};
f(p,5);
printf("%d\n",strlen(p[1]));
}
程序運(yùn)行后的輸出結(jié)果是()o
A.2B.3C.6D.4
66.
67.軟件設(shè)計(jì)包括軟件的結(jié)構(gòu)、數(shù)據(jù)接口和過(guò)程設(shè)計(jì),其中軟件的過(guò)程設(shè)計(jì)是指()
A.模塊間的關(guān)系B.系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過(guò)程描述C.軟件層次結(jié)構(gòu)D.軟件開(kāi)發(fā)過(guò)程
68.以下敘述中正確的是______。A.預(yù)處理命令行必須位于源文件的開(kāi)頭
B.在源文件的一行上可以有多條預(yù)處理命令
C.宏名必須用大寫字母表示
D.宏替換不占用程序的運(yùn)行時(shí)間
69.有以下程序程序的運(yùn)行結(jié)果是()。
A.a=2,b=lB.a=2,b=2C.a=1,b=lD.a=1.b=0
70.
71.有下列函數(shù)定義:intfun(doublea,doubleb){returna*b;}若下列選項(xiàng)中所用變量都已經(jīng)正確定義并賦值,錯(cuò)誤的函數(shù)調(diào)用是()。A.if(fun(x,y)){……}
B.z=fun(fun(x,y),fun(x,y));
C.z=fun(fun(X,y)x,y);
D.fun(x,y);
72.下列敘述中正確的是()。
A.軟件測(cè)試應(yīng)該由程序開(kāi)發(fā)者來(lái)完成
B.程序經(jīng)調(diào)試后一般不需要測(cè)試
C.軟件維護(hù)只包括對(duì)程序代碼的維護(hù)
D.以上三種說(shuō)法都不對(duì)
73.
有下列程序:
#include<stdio.h>
main
{intx=0;
inty=0;
while(x<7&&++v)
{y--;
x++;}
printf("%d,%d",y,x);
}
程序的輸出結(jié)果是()。
A.0,7B.7,7C.0,6D.1,6
74.設(shè)有intx=11;則表達(dá)式(x++*1/3)的值是()。
A.3B.4C.11D.12
75.下列語(yǔ)句中,正確地執(zhí)行當(dāng)i等于5時(shí)執(zhí)行一些語(yǔ)句的條件語(yǔ)句是()。
A.if(i==5)B.ifi=5thenC.ifi=5D.ifi==5then
76.有以下程序
#include"stdio.h"
main()
{structdate
{intyear,month,day;}today;
printf("%d\n",sizeof(structdate));
}
程序的運(yùn)行結(jié)果是
A.6B.8
C.12D.10
77.有以下程序:
fun(intx)
{intP;
if(x==0||x==l)return(3);
p=x-fun(x-2);
returnp;
}
main
{printf("%d\n",fun(7));}
程序執(zhí)行后的輸出結(jié)果是()。A.A.7B.3C.2D.0
78.用數(shù)組名作為函數(shù)調(diào)用的實(shí)參,則傳遞給形參的是()。
A.數(shù)組中所有元素的值B.數(shù)組的第一個(gè)數(shù)據(jù)C.數(shù)組的首地址D.數(shù)組元素的個(gè)數(shù)
79.
以下程序的輸出結(jié)果是()。
main
{charw[][10]={"ABCD","EFGH","IJKL","
MNOP"),K;
for(k=1;k<3;k++)printf("%s\n",w[k]);
A.ABCDFGHKLB.ABCDEFGUC.EFGJKOD.EFGHUKL
80.
五、程序改錯(cuò)題(1題)81.寫出下列程序的運(yùn)行結(jié)果。
fun(inta,intb)
{if(a>b)return(a);
Elsereturn(b);}
main
{intx=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);printf(“%d\n”,r);}
六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開(kāi)考生文件夾下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,函數(shù)fun()的功能是將s所指字符串中下標(biāo)為偶數(shù)同時(shí)ASCII值為奇數(shù)的字符刪除,s所指字符串中剩余的字符形成的新字符串存放在t所指的數(shù)組中。例如,若s所指字符串中的內(nèi)容為“ABCDEFG12345”,其中字符C的ASCⅡ值為奇數(shù),在數(shù)組中的下標(biāo)為偶數(shù),因此必須刪除;而字符1的ASCⅡ值為奇數(shù),在數(shù)組中的下標(biāo)為奇數(shù),因此不應(yīng)當(dāng)刪除,其他依此類推。最后t所指的數(shù)組中的內(nèi)容應(yīng)是“BDH2345”。注意:部分源程序在文件prog1.c中。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫的若干語(yǔ)句。試題程序::
參考答案
1.C在C語(yǔ)言中null等價(jià)于數(shù)字0。
2.A解析:局部變量在執(zhí)行到它所在的程序塊時(shí)產(chǎn)生,執(zhí)行完時(shí)被摧毀,而靜態(tài)局部變量的生存期將一直延長(zhǎng)到程序運(yùn)行結(jié)束,故選項(xiàng)A正確;全局變量的只有一種靜態(tài)存儲(chǔ)類別,故全局變量說(shuō)明為static存儲(chǔ)類,和沒(méi)有說(shuō)明為static存儲(chǔ)類其生存期都是一直延長(zhǎng)到程序運(yùn)行結(jié)束,故選項(xiàng)B不正確:未賦初值的局部變量的初值是隨機(jī)的,故選項(xiàng)C不正確;形參只能是一般局部變量,不能使用任何存儲(chǔ)類說(shuō)明符,故選項(xiàng)D不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
3.B
4.D解析:本題考查帶參數(shù)的宏調(diào)用。a/=SQR(k+m)/SQR(k+m)進(jìn)行宏替換后得:a=a/(SQR(k+m)/SQR(k+m))=a/(k+m*k+m/k+m*k+m)=10/(2+1*2+1/2+1*2+1)=10/(2+2+0+2+1)=10/7/1。
5.A此題是一個(gè)簡(jiǎn)單的函數(shù)調(diào)用,當(dāng)i=0并且i<30,執(zhí)行i+=10,并且調(diào)用函數(shù)f,所以當(dāng)i=0時(shí),結(jié)果為1,當(dāng)i=10時(shí),結(jié)果為101,當(dāng)i=20時(shí),結(jié)果為401,所以a=1+101+401=503。
6.Asub函數(shù)接收兩個(gè)參數(shù):double類型變量a,double指針變量pb。首先將a與pb指向的變量值相減,結(jié)果存放在a中;然后再將pb指向的變量值與a的新值相減,結(jié)果存放在pb指向的內(nèi)存空間中。sub函數(shù)不會(huì)修改實(shí)參x的值,但會(huì)修改實(shí)參y的值。當(dāng)輸入10.23.5時(shí),實(shí)參x的值為10.2,y的值為3.5,執(zhí)行sub函數(shù)后,x的值不變,y的值變成-3.2。故本題答案為A選項(xiàng)。
7.A結(jié)構(gòu)體和共用體
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年危險(xiǎn)人格的測(cè)試題及答案
- 2025年多彩面試筆試試題及答案
- 2025年婦嬰科面試題及答案
- 2025年生藥學(xué)章試題及答案
- 2025年童年填空測(cè)試題及答案
- 2025年融媒體直播測(cè)試題及答案
- 2025年英語(yǔ)中考試題及答案云南
- 2025年藥學(xué)人員培訓(xùn)試題及答案
- 2025年婦產(chǎn)科中級(jí)考試題及答案
- 2025年安陽(yáng)數(shù)學(xué)二模試題及答案
- 三菱 PLC FX2N-4AD 4DA 模擬量模塊教材(課堂PPT)
- 有機(jī)金屬化學(xué)1
- JIT標(biāo)準(zhǔn)作業(yè)作業(yè)指導(dǎo)書
- 土壤固化土施工技術(shù)導(dǎo)則
- VAR模型Johansen協(xié)整檢驗(yàn)在eviews中的具體操作步驟及結(jié)果解釋
- 混凝土面板堆石壩接縫止水
- 加油站法律法規(guī)符合性評(píng)價(jià)
- 5外科--丹毒下肢丹毒中醫(yī)診療方案2017年版
- 錨索錨桿計(jì)算表格(含下滑力及錨桿錨索受力及伸長(zhǎng)值計(jì)算)
- 數(shù)學(xué)物理方法第十一章PPT課件
- (完整版)漢字偏旁部首名稱表最新(精華版)
評(píng)論
0/150
提交評(píng)論