版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2021-2022年內(nèi)蒙古自治區(qū)通遼市全國計(jì)算機(jī)等級考試C語言程序設(shè)計(jì)知識點(diǎn)匯總卷(含答案)學(xué)校:________班級:________姓名:________考號:________
一、單選題(20題)1.下列選項(xiàng)中,當(dāng)x為大于1的奇數(shù)時(shí),值為0的表達(dá)式是()。
A.x%2==1B.x/2C.x%2!=0D.x%2==0
2.設(shè)有兩個(gè)串p和q,求q在p中首次出現(xiàn)的位置的運(yùn)算稱為()。
A.連接B.模式匹配C.求子串D.求串長
3.廣義表((a))的表頭是(a),表尾是()。A.aB.()C.(a)D.((a))
4.樹是結(jié)點(diǎn)的集合,它的根結(jié)點(diǎn)數(shù)目是()。
A.有且只有1B.1或多于1C.0或1D.至少2
5.設(shè)C語言中,一個(gè)int型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié),則unsignedint型數(shù)據(jù)的取值范圍為()。
A.0~255B.0~32767C.0~65535D.0~2147483647
6.有以下程序:#include<stdio.h>main(){intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;for(i=0;i<3;i++)for(j=i;j<=i;j++)t+=b[i][b[j][i]];printf(“%d\n”,t);}程序的運(yùn)行結(jié)果是()。
A.3B.4C.1D.9
7.有以下程序#include<stdio.h>voidfun(char**p){++p;printf("%s",*p);}main{char*a[]={"Morning","Afternoon","Evening","Night");fun(a);}程序的運(yùn)行結(jié)果是()。A.AfternoonB.fternoonC.MorningD.orning
8.以下能正確定義字符串的語句是()。
A.charstr=“\x43”;
B.charstr[]=“\0”;
C.charstr=”;
D.charstr[]={‘\064’};
9.若以下選項(xiàng)中的變量全部為整型變量,且已正確定義并賦值,則語法正確的switch語句是()。
A.switch(a+9){casecl:y=a-b;casec2:y=a+b;}
B.switcha*b{casel0:x=a+b;default:y=a-b;}
C.switch(a+b){casel:case3:y=a+b;break;case0:case4:y=a-b;}
D.switch(a*a+b*b){default:break;case3:y=a+b;break;case2:y=a-b;break;}
10.設(shè)二叉排序樹中有n個(gè)結(jié)點(diǎn),則二叉排序樹的平均查找長度為()。A.O(1)
B.O(log2n)
C.O(n)
D.(n2)
11.若變量已正確定義,在語句“if(W)printf("%d\n",k);”中,以下不可替代w的是()。
A.ab+cB.ch=getcharC.a==b+CD.a++
12.對序線性表23,29,34,55,60,70,78用二分法查找值為60的元素時(shí),需要比較次數(shù)為()
A.1B.2C.3D.4
13.以下程序的輸出結(jié)果是()。
main()
{charst[20]="hell0\O\t\\\”;
printf("%d%d\n",strlen(st),sizeof(st));
}
A.99
B.520
C.1320
D.2020
14.考慮下圖中的程序段,①號語句的輸出結(jié)果是()。A.A.'a'B.'t'C.'c'D.'k'
15.若有定義“intw[3][5];”,則以下不能正確表示該數(shù)組元素的表達(dá)式是()。
A.*(&w[0][0]+1)B.*(*w+3)C.*(*(w+1))D.*(w+1)[4]
16.下列敘述中正確的是A.程序設(shè)計(jì)就是編制程序
B.程序的測試必須由程序員自己去完成
C.程序經(jīng)調(diào)試改錯(cuò)后還應(yīng)進(jìn)行再測試
D.程序經(jīng)調(diào)試改錯(cuò)后不必進(jìn)行再測試
17.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)
18.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.abc+abc=defdef
B.abc+ABC=DEFdef
C.abcABCDEFdef
D.abcabcdefdef
19.
20.關(guān)于數(shù)組和指針,以下說法錯(cuò)誤的是()。
A.數(shù)組名本身就是一個(gè)指針,指向數(shù)組內(nèi)存的起始位置
B.既可以讀入數(shù)據(jù)到數(shù)組中,也可以讀入數(shù)據(jù)到未賦初值的指針中
C.可以將指針指向一個(gè)同類型的數(shù)組
D.指針可以指向同類型的數(shù)組中的任意一個(gè)元素
二、2.填空題(20題)21.有以下程序:
#include<stdio.h>
voidf(inty,int*x)
{y=y+*x;*x=*x+y;}
main()
{intx=2,y=4;
f(y,&x);
printf("%d%d\n",x,Y);
}
執(zhí)行后的輸出結(jié)果【】。
22.C語言用于結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu)是______、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。
23.設(shè)inta=5,b=6,表達(dá)式(++a==b--)?++a:--b的值是【】。
24.若a是int型變量,且a的初值為4,則計(jì)算a+=a-=a*a表達(dá)式后a的值為______。
25.設(shè)有以下程序,為使之正確運(yùn)行,請?jiān)跈M線中填入應(yīng)包含的命令行。(注:try_me()函數(shù)在a:\myfile.txt中有定義。)
______
main()
{printf("\n");
try_me();
printf("\n");}
26.在宏定義#definePI3.14159中,用宏名PI代替一個(gè)______。
27.以下程序是從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),并計(jì)算它們的和。請?zhí)羁铡?/p>
main()
{
inti,a[20],sum,count;
sum=count=【】;
for(i=0;i<20;i++)scanf("%d",【】);
for(i=0;i<20;i++)
{
if(a[i]>0)
{count++:
sum+=【】;
}
}
printf("sum=%d,count=%d\n",sum.count);
}
28.下面的if語句與y=(x>=10)?3*x-11:(x<1)?x:2*x-1;的功能相同,請補(bǔ)充完整。
if(______)
if(______)y=2*x-1;
elsey=x;
elsey=3*x-11;
29.若輸入tear、test、arj,則下列程序的運(yùn)行結(jié)果為【】。
main()
{char*strl[20],*str2[20],*str3[20];
charswap();
scanf("%s",str1);
scanf("%s",str2);
scanf("%s",str3);
if(strcmp(str1,str2)>0)swap(str1,str2);
if(strcmp(str1,str3)>0)swap(str1,str3);
if(strcmp(str2,str3)>0)swap(str2,str3);
printf("%s%s%s\n",str1,str2,str3);
}
charswap(p1,p2)
char*p1,*p2;
{char*p[20];
strcpy(p,p1);strcpy(p1,p2);strcpy(p2,p);
}
30.數(shù)據(jù)庫恢復(fù)是將數(shù)據(jù)庫從______狀態(tài)恢復(fù)到某一已知的正確狀態(tài)。
31.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{inta=3,b=4,c=5,t=99;
i[(b<a&&a<C)t=a;a=c;c=t;
if(a<c&&b<C)t=b;b=a;a=t;
printf("%d%d%d\n",a,b,c);
}
32.以下程序的運(yùn)行結(jié)果是______。
#include<stdio.h>
longfib(intg)
{switch(g)
{case0:return0;
case1:
case2:return1;}
return(fib(g-1)+fib(g-2));}
main()
{longk;
k=fib(5);
printf("k=%51d\n",k);}
33.下面程序的輸出結(jié)果是()。#include<stdio.h>main(){staticchara[]="china";char*ptr=a;while(*ptr){printf("%c",*ptr-32);ptr++;}}
34.以下程序的輸出結(jié)果是()。main(){char*p[]={"ABC","DEF","GHI","JKL"};inti;for(i=3;i>=0;i--,i--)printf("%c",*p[i]);}
35.Windows的空口分為兩類,一類是應(yīng)用程序窗口,另一類是【】窗口。
36.測試的目的是暴露錯(cuò)誤,評價(jià)程序的可靠性;而______的目的是發(fā)現(xiàn)錯(cuò)誤的位置并改正錯(cuò)誤。
37.Windows3.X中,所有的系統(tǒng)程序和應(yīng)用程序都處于【】的集中管理之下。
38.下列程序的輸出結(jié)果是【】。
main()
{
inta=1,b=2;
a=a+b;b=a-b;a=a-b;
prrintf("%d,%d\n",a,b);
}
39.以下程序中,for循環(huán)體執(zhí)行的次數(shù)是【】。
#defineN2
#defineMN+1
#defineKM+1*M/2
main()
{inti;
for(i=1;i<K;i++){......}
40.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{chars[]="9876",*p;
for(p=s;p<s+2;p++)printf("%s\n",p);
}
三、1.選擇題(20題)41.下列程序段的輸出結(jié)果是______。voidfun(int*x,int*y){printf("%d%d",*x,*y);*x=3;*y=4;}main(){intx=1,y=2;fun(&y,&x);printf("%d%d",x,y);}
A.2143B.1212C.1234D.2112
42.若有以下函數(shù)首部intfun(doublex[10],int*n)則下面針對此函數(shù)的函數(shù)聲明語句中正確的是______。A.intfun(doublex,int*n);
B.intfun(double,int);
C.intfun(double*x,intn);
D.intfun(double*,int*);
43.已定義以下函數(shù)
fun(int*p)
{return*p;}
該函數(shù)的返回值是()
A.不確定的值
B.形參p中存放的值
C.形參p所指存儲單元中的值
D.形參p的地址值
44.有下列程序段:intk=0,a=1,b=2,c=3;k=a<b?b:a;k=k>c?c:k;執(zhí)行該程序段后,k的值是()。
A.3B.2C.1D.0
45.將E-R圖轉(zhuǎn)換到關(guān)系模式時(shí),實(shí)體與聯(lián)系都可以表示成________。
A.屬性B.關(guān)系C.鍵D.域
46.下列選項(xiàng)中不屬于C語言的數(shù)據(jù)類型是()。
A.復(fù)數(shù)型B.邏輯型C.雙精度型D.集合型
47.以下不合法的用戶標(biāo)識符是______。A.j2KEYB.DoubleC.4dD._8_
48.下列判斷正確的是()。
A.chara="ABCD";等價(jià)于char*a;*a="ABCD";
B.charstr[10]=ABCD"};等價(jià)于charstr[10];str[]={"ABCD"};
C.char*s="ABCD";等價(jià)于chars;*s="ABCD";
D.charc[5]="ABCD",d[5]="ABCD";等價(jià)于charc[5]=d[5]="ABCD";
49.下列程序的輸出結(jié)果是______。main(){inti;for(i=1;i+1;i++){if(i>4){printf("%d",i++);break;}}printf("%d",i++);}
A.55B.56C.程序錯(cuò)誤,沒有輸出D.循環(huán)條件永遠(yuǎn)為真,死循環(huán)
50.以下敘述中正確的是()。
A.構(gòu)成C程序的基本單位是函數(shù)
B.可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)
C.main函數(shù)必須放在其他函數(shù)之前
D.所有被調(diào)用函數(shù)一定要在調(diào)用之前進(jìn)行定義
51.在設(shè)計(jì)程序時(shí),應(yīng)采納的原則之一是______。
A.程序結(jié)構(gòu)應(yīng)有助于讀者理解B.不限制goto語句的使用C.減少或取消注解行D.程序越短越好
52.以下合法的賦值語句是()
A.x=y=100B.d--;C.x+y;D.c=int(a+b);
53.有以下程序;charfun(charx,chary){if(x<y)returnx;returny;}main(){inta='9',b='8',c='7';printf("%c\n",fun(fun(a,B),fun(b,C)));}程序的執(zhí)行結(jié)果是
A.函數(shù)調(diào)用出錯(cuò)B.8C.9D.7
54.變量m的值為8,m的地址為1010,若欲使p為指向m的指針變量,則下列賦值正確的是()。
A.&m=8B.*p=8C.*p=1010D.p=&m
55.以下程序的輸出結(jié)果是()。#include<stdio.h>main(){inta=8,b=6,m=1;switch(a%4){case0:m++;break;case1:m++;switch(b%3){default:m++;case0:m++;break;}}printf("%d\n",m);}
A.1B.2C.3D.4
56.下列有關(guān)數(shù)據(jù)庫的描述,正確的是A.數(shù)據(jù)處理是將信息轉(zhuǎn)化為數(shù)據(jù)的過程
B.數(shù)據(jù)的物理獨(dú)立性是指當(dāng)數(shù)據(jù)的邏輯結(jié)構(gòu)改變時(shí),數(shù)據(jù)的存儲結(jié)構(gòu)不變
C.關(guān)系中的每一列稱為元組,一個(gè)元組就是一個(gè)字段
D.如果一個(gè)關(guān)系中的屬性或?qū)傩越M并非該關(guān)系的關(guān)鍵字,但它是另一個(gè)關(guān)系的關(guān)鍵字,則稱其為本關(guān)系的外關(guān)鍵字
57.若整型變量a、b、c、d中的值依次為1、4、3、2。則條件表達(dá)式a<b?a:c<d?c:d的值是______。A.1B.2C.3D.4
58.若有說明inta[][3]={1,2,3,4,5,6,7,8,9},則a數(shù)組第一維的大小是()。
A.2B.3C.4D.無確定值
59.下列程序的輸出結(jié)果是()。main(){inta=4,b=5,c;if(a<B){c=a*b;printf("%d,%d,%d\n",b,a,C);}else{c=b/a;printf("%d,%d,%d\n",b,a,C);}}
A.4,5,12B.20C.5,4,20D.12
60.以下選項(xiàng)中,不能確定賦值的是______。
A.chars1[10];s1="chest";
B.chars2[]={'C','t','e','s','t'};
C.chars3[20]="Chest";
D.char*s4="Ctest\n"
四、選擇題(20題)61.有下列程序:
main
{inti,s=0,t[]={1,2,3,4,5,6,7,8,9};
for(i=0;i<9;i+=2)s+=*(t+i);
printf("%d\n",s);
}
程序執(zhí)行后的輸出結(jié)果是()。A.A.45B.20C.25D.36
62.
63.
64.有以下程序:
程序的運(yùn)行結(jié)果是()。
A.0987654321
B.4321098765
C.5678901234
D.0987651234
65.若有定義:“doublea=22;inti=0,k=18;”,則不符合C語言規(guī)定的賦值語句是()。
A.a=a++,i++;
B.i=(a+k)<=(i+k);
C.i=a%11;
D.i=!a;
66.
67.
68.有以下程序程序的運(yùn)行結(jié)果是()。
A.852B.963C.741D.875421
69.在數(shù)據(jù)庫管理系統(tǒng)DBMS中,用來定義內(nèi)模式和外模式等一些數(shù)據(jù)庫管理系統(tǒng)中其他結(jié)構(gòu)的語言為
A.CB.BasicC.DDLD.DML
70.以下不合法的字符常量是()。
A."、、"B.’\”’C.’\018’D.\xcc"
71.在學(xué)生管理的關(guān)系數(shù)據(jù)庫中,存取一個(gè)學(xué)生信息的數(shù)據(jù)單位是()。
A.文件B.數(shù)據(jù)庫C.字段D.記錄
72.
73.(42)希爾排序法屬于哪一種類型的排序法()
A.交換類排序法
B.插入類排序法
C.選擇類排序法
D.建堆排序法
74.軟件工程出現(xiàn)的原因是
A.程序設(shè)計(jì)方法學(xué)的影響B(tài).軟件產(chǎn)業(yè)化的需要C.軟件危機(jī)的出現(xiàn)D.計(jì)算機(jī)的發(fā)展
75.
76.在下列選項(xiàng)中,沒有構(gòu)成死循環(huán)的是()。
A.
B.
C.
D.
77.以下敘述中正確的是()。
A.在C語言中,預(yù)處理命令行都以“#”開頭
B.預(yù)處理命令行必須位于c源程序的起始位置
C.#include<stdi0.h>必須放在C程序的開頭
D.C語言的預(yù)處理不能實(shí)現(xiàn)宏定義和條件編譯的功能
78.有以下程序:
程序執(zhí)行后的輸出結(jié)果是()。
A.357B.753C.369D.751
79.
80.以下關(guān)于long、int和short類型數(shù)據(jù)占用內(nèi)存大小的敘述中正確的是(),
A.均占4個(gè)字節(jié)B.根據(jù)數(shù)據(jù)的大小來決定所占內(nèi)存的字節(jié)數(shù)C.由用戶自己定義D.由C語言編譯系統(tǒng)決定
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun的功能是:從低位開始依次取出長整型變量s中奇數(shù)位上的數(shù),構(gòu)成一個(gè)新數(shù)存放在t中。高位仍在高位,低位仍在低位。
例如,當(dāng)s中的數(shù)為7654321時(shí),t中的數(shù)為7531。請改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。
注意:部分源程序在文件MODll.C中,不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
#include<;stdi0.h>;
六、程序設(shè)計(jì)題(1題)82.某學(xué)生的記錄由學(xué)號、8門課程成績和平均分組成,學(xué)號和8門課程的成績已在主函數(shù)中給出,請編寫函數(shù),其功能是:求出該學(xué)生的平均分,并放入記錄的ave成員中。
例如,學(xué)生的成績是:85.5,76,69.5,85,91,72,64.5,87.5,則他的平均分應(yīng)為78.875。
注意:部分源程序給出如下。
請勿改動(dòng)main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun部位中填入你編寫的若干語句。
試題程序:
#include<stdio.h>
#defineN8
typedefstruct
{
charnum[10];
doubles[N];
doubleave;
}STREC;
voldfun(STREC*a)
{
}
voidmain
STRECs={"GA005",85.5,76,69.5,85,91,72,64.5,87.5};
inti;
fun(&s);
printf("The%ssstudentdata:\n",s.num);
for(i=0;i<N;i++)
printf("%4.1fkn",s.s[i]);
printf("\nknave=%7.3fkn",s.aVe);
printf("\n");
}
參考答案
1.D解析:因?yàn)閤的值為大于1的奇數(shù),所以x除以2的余數(shù)等于1。所以選項(xiàng)D)等于關(guān)系表達(dá)式的結(jié)果為假,即等于0。
2.B
3.B
4.A樹形結(jié)構(gòu)是一類重要的非線性數(shù)據(jù)結(jié)構(gòu)。樹是n(n≥0)個(gè)結(jié)點(diǎn)的集合,對應(yīng)任意一棵非空樹,它具有以下幾點(diǎn)重要的性質(zhì)。
①有且僅有一個(gè)特定的稱為根的結(jié)點(diǎn)。
②當(dāng)n>1時(shí),其余結(jié)點(diǎn)可分為m(m>0)個(gè)互不相交的有限集T1,T2,…,TM,其中每一個(gè)集合本身又是一棵樹,稱為子樹。
因此,本題的正確答案有且只有一個(gè)。
5.C
6.B內(nèi)循環(huán)只循環(huán)一次就結(jié)束,第1次外循環(huán)時(shí),t=t+b[0][b[0][0]]=1+b[0][0]=1+0=1;第2次外循環(huán)時(shí),t=t+b[1][b[1][1]]=1+b[1][1]=1+1=2;第3次外循環(huán)時(shí),1=1+b[2][b[2][2]]=2+b[2][2]=2+2=4。故本題答案為B選項(xiàng)。
7.A執(zhí)行fun(a)語句時(shí),P指向的是字符串?dāng)?shù)組a的第一個(gè)字符串“Morning”,p自加1之后,p指向字符串?dāng)?shù)組a的第2個(gè)字符串“Afternoon”。
8.BC語言中,字符串是用一對雙引號標(biāo)識的字符序列,并用字符型數(shù)組來存放。C選項(xiàng)和D選項(xiàng)不屬于字符串,A選項(xiàng)定義的是一個(gè)字符變量str,但賦值字符串,顯然也不正確。故本題答案為B選項(xiàng)。
9.D選項(xiàng)A,當(dāng)cl和c2相等時(shí),不成立;選項(xiàng)B,a*b要用括號括起來;選項(xiàng)C,case與后面的數(shù)字用空格隔開。
10.B
11.A符號<>不是C語言中的運(yùn)算符,所以不能替代。
12.Cc)【解析】根據(jù)二分法查找法需要兩次:①首先將60與表中間的元素55進(jìn)行比較,由于60大于55,所以性表的后半部分查找。②第二次比較的元素是后半部分的中間元素,將60與表中間的元素70進(jìn)行比較,由于60小于70,所以性表的前半部分查找。③第三次比較的元素是前半部分的中間元素,即60,這時(shí)兩者相等,即查找成功。
13.B\n從題目中可知,\O、\t、\\分別為一個(gè)字符,而sizeof是求字節(jié)個(gè)數(shù)的函數(shù),其中包括\O占的字節(jié),strlen函數(shù)是求數(shù)組長度的函數(shù);其以\0結(jié)束,因此strlen的值為5,sizeof的值為20。
\n
14.D
15.DA選項(xiàng)中,“*(&w[0][0]+1)”表示“w[0][1]”;B選項(xiàng)中,“*(*w+3)”表示“w[0][3]”;C選項(xiàng)中,“*(*(w+1))”表示“w[1][0]”;D選項(xiàng)中,“*(w+1)[4]”的正確寫法是“(*(w+1))[4]”,表示“w[1][4]”。故本題答案為D選項(xiàng)。
16.C解析:軟件設(shè)計(jì)的基本目標(biāo)是用比較抽象概括的方式確定目標(biāo)系統(tǒng)如何完成預(yù)定的任務(wù),軟件沒計(jì)是確定系統(tǒng)的物理模型。軟件測試即使用人工或自動(dòng)手段來運(yùn)行或測定某個(gè)系統(tǒng)的過程,其日的在于檢驗(yàn)它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。軟件調(diào)試后要進(jìn)行回歸測試,防止引進(jìn)新的錯(cuò)誤。
17.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。
18.A題干中,函數(shù)fun的功能是:判斷形參ch是否為大寫字母,若是大寫字母則改寫成小寫字母,其他字符不變。main函數(shù)中,通過while循環(huán),調(diào)用fun函數(shù),將字符數(shù)組s中的各個(gè)字符傳入,將s中的大寫字母改成小寫字母,程序輸出:abc+abc=defdef。本題答案為A選項(xiàng)。
19.A
20.BC語言中,數(shù)組名本身就是一個(gè)指針,指向數(shù)組內(nèi)存的起始位置,選項(xiàng)A正確;已經(jīng)定義的數(shù)組被分配了內(nèi)存空間,所以可以讀入數(shù)據(jù)到數(shù)組中,未賦初值的指針沒有分配內(nèi)存空間,不可以讀入數(shù)據(jù),選項(xiàng)B錯(cuò)誤;可以將指針指向一個(gè)同類型的數(shù)組,選項(xiàng)C正確;指針指向一個(gè)數(shù)組后,可以通過移動(dòng)指針,指向該數(shù)組中的任意一個(gè)元素,選項(xiàng)D正確。故本題答案為B選項(xiàng)。
21.8484解析:f函數(shù)中變量x傳的是變量的地址,而變量y是傳的值,調(diào)用函數(shù)f后,雖然f函數(shù)中的。x變?yōu)?,y值也變了,但main函數(shù)中的y未變,仍然為4。
22.順序結(jié)構(gòu)順序結(jié)構(gòu)解析:結(jié)構(gòu)化程序有3種摹本結(jié)構(gòu),即順序結(jié)構(gòu)、選擇結(jié)構(gòu)(包括if語句和switch語句)和循環(huán)結(jié)構(gòu)(包括for語句、while語句、do…while語句)。
23.77解析:此表達(dá)式為三目運(yùn)算符,++a的值為6,b--的值為6,則整個(gè)表達(dá)式的值為++a的值,++a的值為7。請注意前綴++,--和后綴++,--的區(qū)別。
24.-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。
25.#include<a:\myfile.txt>#include<a:\\myfile.txt>解析:本題考查了函數(shù)的存儲分類的概念。如果沒有特別說明,函數(shù)的存儲范圍是從定義函數(shù)的位置到文件的結(jié)尾,如果其他文件想使用這個(gè)函數(shù),需要用ginclude文件包含命令將定義函數(shù)的文件包含進(jìn)來。
26.字符串字符串解析:本題考查字符替換格式:#define標(biāo)識符字符串。
27.0&a[i]a[i]0\r\n&a[i]\r\na[i]解析:本題要求從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),井計(jì)算它們的和。程序中首先要對存放正數(shù)個(gè)數(shù)的變量count及存放和值的變量sum初始化為0,所以第一空應(yīng)填0。接著要求從終端讀入數(shù)據(jù)到數(shù)組中,可以通過scanf函數(shù)實(shí)現(xiàn),因此第二空應(yīng)填&a[i]。最后通過sum+=a[i];語句累加正數(shù)a[i]的值到sum中,因此第三空應(yīng)填a[i]。
28.x<10x>=1
29.arjteartest
30.錯(cuò)誤。錯(cuò)誤。解析:數(shù)據(jù)庫恢復(fù)是將數(shù)據(jù)庫中的數(shù)據(jù)從錯(cuò)誤狀態(tài)中恢復(fù)到某種邏輯一致的狀態(tài)。如果數(shù)據(jù)庫中包含成功事務(wù)提交的結(jié)果,則稱數(shù)據(jù)庫處于一致性狀態(tài)。
31.45994599解析:本題是一個(gè)陷阱題,以書寫格式來考查考生對if語句的理解.if語句只對緊跟其后的一條語句或語句塊產(chǎn)生作用。因此,題目中兩條if語句只有t=a;和t=b是if的子句。第1條if語句中b<a為假,所以跳過語句t=a;,執(zhí)行a=c;c=t;后,a=5、b=4、c=99。第2條if語句的判斷條件a<c&&b<c為真,所以后面三條語句都被執(zhí)行,這三條語句構(gòu)成一次a和b的內(nèi)容交換。所以最后輸出的結(jié)果是:4599。
32.k=5k=5解析:本題主要考查了函數(shù)的遞歸調(diào)用方法。g=0或g=1或g=2是遞歸的終止條件,然后用回代的方法從一個(gè)已知值推出下一個(gè)值,直到計(jì)算出最終結(jié)果。
33.CHINA
34.JD
35.文檔文檔
36.調(diào)試調(diào)試
37.程序管理器程序管理器
38.212,1解析:本題中,執(zhí)行a=a+b時(shí),a=1,b=2,a=1+2=3,b=a-b時(shí),a=3,b=2,b=3-2=1;a=a-b時(shí),a=3,b=1,a=3-1=2;因此,本題的輸出是2,1
39.44解析:本題考查宏定義。預(yù)編譯時(shí),首先將M的宏定義帶入K,得到N+1+1*N+1/2;再將N的宏定義帶人,得到2+1+1*2+1/2=3+2+0=5,所以循環(huán)4次。
40.98768769876\r\n876解析:指針是一種數(shù)據(jù)類型,這種數(shù)據(jù)類型的變量用來存放內(nèi)存中分配的存儲單元的首地址。指針的定義:
類型說明符*指針變量名;
41.A解析:實(shí)參的個(gè)數(shù)必須與形參的個(gè)數(shù)一致,實(shí)參可以是表達(dá)式,在類型上應(yīng)按位置與形參一一對應(yīng)匹配。
42.D解析:函數(shù)聲明可以照寫已定義的函數(shù)的首部,再加一個(gè)號就成為了對函數(shù)的聲明,在函數(shù)聲明中也可以不寫形參名,而只寫形參的類型,但要保證與函數(shù)首部寫法上的—致,即函數(shù)類型、函數(shù)名、參數(shù)個(gè)數(shù)、參數(shù)類型和參數(shù)順序相同。字符數(shù)組可用指針來表示,所以選頂D正確。
43.C解析:本題考核的知識點(diǎn)是函數(shù)的返回值.函數(shù)的返回值應(yīng)該為return后面的表達(dá)式的值,在本題中的表達(dá)式為*p,*p指的是形參p所指存儲單元中的值,所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
44.B解析:因?yàn)閍<b成立,所以條件表達(dá)式a<b?b:a的值等于b的值等于2,因此變量k的值等于2。又因?yàn)閗=2>c=3不成立,所以條件表達(dá)式k>c?c:k的值等于k的值等于2。把條件表達(dá)式k>c?c:k的值賦給變量k,因而變量k的值等于2。因此,選項(xiàng)B)為正確答案。
45.B解析:關(guān)系數(shù)據(jù)庫邏輯設(shè)計(jì)的主要工作是將\ue008E-R\ue009圖轉(zhuǎn)換成指定RDBMS中的關(guān)系模式。首先,從E-R圖到關(guān)系模式的轉(zhuǎn)換是比較直接的,實(shí)體與聯(lián)系都可以表示成關(guān)系,E-R圖中屬性也可以轉(zhuǎn)換成關(guān)系的屬性,實(shí)體集也可以轉(zhuǎn)換成關(guān)系。
46.A解析:在C語言中,數(shù)據(jù)類型可分為基本數(shù)據(jù)類型、構(gòu)造數(shù)據(jù)類型、指針類型、空類型4大類,其中基本類型;字符型、整型、實(shí)型(單精度型和雙精度型)、枚舉類型。構(gòu)造類型:數(shù)組、結(jié)構(gòu)體、公用體。選項(xiàng)B中的邏輯型和C中雙精度類型都屬于基本數(shù)據(jù)類型,選項(xiàng)D集合類型屬于構(gòu)造類型;而選項(xiàng)A復(fù)數(shù)型不是C語言的數(shù)據(jù)類型。
47.C解析:C語言規(guī)定標(biāo)識符只能由字母、數(shù)字和下劃線三種符號組成,而且第—個(gè)字符必須是字母或下劃線。大寫字母和小寫字母被認(rèn)為是兩個(gè)不同的字符,用戶在定義標(biāo)識符時(shí)應(yīng)做到“見名知意”,且不允許使用關(guān)鍵字作標(biāo)識符。
48.D解析:a='ABCD'書寫錯(cuò)誤,因?yàn)椤埃健弊筮叢荒艹霈F(xiàn)常量;數(shù)組名s是代表s數(shù)組首地址的地址常量,而不是變量;字符串只有在定義時(shí)維數(shù)可以省略。
49.B解析:本程序中有個(gè)for循環(huán),但注意到for循環(huán)的條件是“i+1”,也就是只要i+1的值為真(非零值均為真),就執(zhí)行循環(huán)。當(dāng)i=1的時(shí)候,i+1的值為真,判斷if條件不成立,執(zhí)行i++,輸出i的值為5。
50.A解析:C程序是由函數(shù)構(gòu)成的,A)正確;main函數(shù)可以放在其他函數(shù)之前,也可以放在其他函數(shù)之后,C)錯(cuò)誤;函數(shù)可以嵌套調(diào)用,但不能嵌套定義,B)錯(cuò)誤;被調(diào)用函數(shù)可以在調(diào)用之后定義,但需要在調(diào)用前聲明,D)錯(cuò)誤。
51.A解析:程序設(shè)計(jì)的風(fēng)格主要強(qiáng)調(diào)程序的簡單、清晰和可理解性,以便讀者理解。因此選項(xiàng)A是正確答案。程序?yàn)E用goto語句將使程序流程無規(guī)律,可讀性差;添加的注解行有利于對程序的理解,不應(yīng)減少或取消;程序的長短要依照實(shí)際需要而定,并不是越短越好。因此選項(xiàng)B、C、D都是錯(cuò)誤的。
52.B解析:選項(xiàng)A的結(jié)尾沒用‘;’,所以不是一條語句:選項(xiàng)C中的表達(dá)式不會改變?nèi)魏巫兞康膬?nèi)容,也不是合法的賦值語句;選項(xiàng)D有語法錯(cuò)誤,int應(yīng)該加上括號。所以,4個(gè)選項(xiàng)中只有選項(xiàng)B符合題意,運(yùn)行后d的內(nèi)容被減一。
53.D解析:本題考核的知識點(diǎn)是函數(shù)的返回值以及返回值作為函數(shù)的參數(shù)。經(jīng)過分析得出函數(shù)fun()的功能是比較形參x和形參y的大小,返回較小的一個(gè).函數(shù)fun()有兩個(gè)參數(shù).本題中,首先定義了三個(gè)整型變量a、b和c,分別賦初值為9、8和7.然后執(zhí)行函數(shù)fun(fun(a,b),fun(b,c))。在該函數(shù)中分別將fun(a,b)和fun(b,C)函數(shù)的返回值作為該函數(shù)的兩個(gè)實(shí)參。在函數(shù)fun(a,b)中,由于a>b,故返回較小值b即8,在函數(shù)fun(b,C)中,由于b<c,故返回較小值c即為7,因此調(diào)用函數(shù)fun(fun(a,b),fun(b,C))相當(dāng)于執(zhí)行函數(shù)fun(8,7),返回較小值即7。所以,4個(gè)選項(xiàng)中選項(xiàng)D符合題意。
54.D解析:指針變量是通過指向變量地址來指定變量值的。這里只要取m的地址賦給p,即可實(shí)現(xiàn)使p為指向m的指針變量。
55.B解析:本題考查switch語句。因?yàn)閍=8,a%4=0,所以執(zhí)行case0后面的語句,將m加1,遇到break語句跳出switch。
56.D數(shù)據(jù)處理是指將數(shù)據(jù)轉(zhuǎn)換成信息的過程,故選項(xiàng)A敘述錯(cuò)誤。數(shù)據(jù)的物理獨(dú)立性是指數(shù)據(jù)的物理結(jié)構(gòu)的改變,不會影響數(shù)據(jù)庫的邏輯結(jié)構(gòu),故選項(xiàng)B敘述錯(cuò)誤。關(guān)系中的行稱為元組,對應(yīng)存儲文件中的記錄,關(guān)系中的列稱為屬性,對應(yīng)存儲文件中的字段,故選項(xiàng)C敘述錯(cuò)誤。所以本題選D。
57.A解析:條件表達(dá)式的形式如下:表達(dá)式1?表達(dá)式2:表達(dá)式3,所以本題條件表達(dá)式a<b?a:c<d?c:d應(yīng)該理解為a<b?a:(c<d?c:d),首先求出條件表達(dá)式c<d?c:d的值等于2,再求條件表達(dá)式a<b?a:2的值,由于a-1<b-4成立,所以上述條件表達(dá)式的值等于1。
58.B解析:本題考查二維數(shù)組第一維的大小如何確定。二維數(shù)組第一維的大小由下列規(guī)則確定:①當(dāng)初值的個(gè)數(shù)能被第二維的常量表達(dá)式的值除盡時(shí),所得商數(shù)就是第一維的大?。孩诋?dāng)初值的個(gè)數(shù)不能被第二維的常量表達(dá)式的值除盡時(shí),第一維的大小等于所得商數(shù)加1。
59.C解析:本題考查ifelse語句。第一個(gè)if語句,先判斷條件,發(fā)現(xiàn)a<b成立,執(zhí)行下列的復(fù)合語句,得c=a*b=20,b、a的值不變。
60.A解析:C語言中不能將字符串常量直接賦給數(shù)組。但在賦初值時(shí)可以。
61.C在for循環(huán)語句中自變量i從0開始,每次自加2,執(zhí)行s+=*(t+i)語句,因?yàn)镃語言規(guī)定數(shù)組名做表達(dá)式相當(dāng)于數(shù)組的首地址,也就是第一個(gè)元素的地址。因此,*(t+i)代表數(shù)組的第i+1個(gè)元素。所以程序運(yùn)行的結(jié)果是1+3+5+7+9=25,即變量S的值等于25。
62.A
63.C
64.C函數(shù)fun(int*s,intn1,intn2)的功能是對數(shù)組s中的元素進(jìn)行首尾互相調(diào)換。所以在主函數(shù)中,當(dāng)fun(a,0,3)執(zhí)行完后,數(shù)組a[12]={4,3,2,1,5,6,7,8,9,0};再執(zhí)行fun(a,4,9),數(shù)組a[12]={4,3,2,1,0,9,8,7,6,5};再執(zhí)行fun(a,0,9)后,數(shù)組a[12]={5,6,7,8,9,0,1,2,3,4}。所以正確答案為c)。
65.D
66.B
67.A
68.A第一次執(zhí)行for—循環(huán),y的值為9,y%3的值為0,滿足條件打印一y,即先減1后打印,因此打印8;第二次執(zhí)行fbr循環(huán),y的值為7,y%3的值為l,不執(zhí)行打印語句;第三次執(zhí)行for循環(huán),y的值為6,y%3的值為0,滿足條件打印一Y,即先減l后打印,因此打印5;第四次執(zhí)行for循環(huán),y的值為4,不滿足if條件,不執(zhí)行打印語句;第五次執(zhí)行for循環(huán),y的值為3,滿足if條件,打印輸出2;第六次執(zhí)行for循環(huán),y的值為1.不滿足條件,不執(zhí)行打印語句。故本題答案為A)。
69.CC語言是一種計(jì)算機(jī)程序設(shè)計(jì)語言,常用的C語言IDE(集成開發(fā)環(huán)境)有MicrosoftVisualC++、BorlandC++、WatcomC++、BorlandC++Builder、GNUDJGPPC++、Lccwin32CCompiler3.1、HighC、TurboC、C-Free、win-tc等。
Basic是一種計(jì)算機(jī)高級設(shè)計(jì)語言,常見的有QuickBasic和VisualBasic。
DDL(DataDescriptionLanguage)是數(shù)據(jù)庫模式定義語言的縮寫,是用于描述數(shù)據(jù)庫中要存儲的現(xiàn)實(shí)世界實(shí)體的語言。一個(gè)數(shù)據(jù)庫模式定義包含該數(shù)據(jù)庫中所有實(shí)體的描述定義,包括結(jié)構(gòu)定義、操作方法定義等。DDL描述的模式必須由計(jì)算機(jī)軟件進(jìn)行編譯,轉(zhuǎn)換為便于計(jì)算機(jī)存儲、查詢
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年及未來5年市場數(shù)據(jù)中國線上電影售票行業(yè)發(fā)展?jié)摿︻A(yù)測及投資策略研究報(bào)告
- 2026年會計(jì)師實(shí)操技能考核與答案詳解
- 2026年語言文學(xué)與心理發(fā)展題庫兒童文學(xué)在精神衛(wèi)生教育中的作用
- 區(qū)域教育資源共享視角下智慧教育云平臺的可持續(xù)發(fā)展路徑研究教學(xué)研究課題報(bào)告
- 2026年安全工程師職業(yè)資格考試安全監(jiān)管與技術(shù)規(guī)范題庫集
- 浙江省麗水市發(fā)展共同體2024-2025學(xué)年高二下學(xué)期期中聯(lián)考?xì)v史試題(含答案)高二歷史試題
- 2026年土木工程基礎(chǔ)知識與實(shí)際應(yīng)用題庫
- 2026年網(wǎng)絡(luò)安全專業(yè)知識測試題庫
- 區(qū)域教師隊(duì)伍人工智能素養(yǎng)培訓(xùn)與教學(xué)實(shí)踐融合研究教學(xué)研究課題報(bào)告
- 2026年金融科技行業(yè)創(chuàng)新報(bào)告及未來五年行業(yè)發(fā)展趨勢報(bào)告
- 醫(yī)院非產(chǎn)科孕情管理和三病檢測工作流程
- 中小學(xué)的德育工作指南課件
- GB/T 3487-2024乘用車輪輞規(guī)格系列
- 物業(yè)保潔保安培訓(xùn)課件
- 人教版初中英語七至九年級單詞匯總表(七年級至九年級全5冊)
- 醫(yī)藥行業(yè)法律風(fēng)險(xiǎn)評估報(bào)告
- cnc加工中心點(diǎn)檢表
- 計(jì)劃決策評審-匯報(bào)模板課件
- 《食品分析》復(fù)習(xí)備考試題庫(附答案)
- 水利水電施工企業(yè)安全生產(chǎn)管理制度匯編
- LY/T 2773-2016綠地月季栽培養(yǎng)護(hù)技術(shù)規(guī)程
評論
0/150
提交評論