版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年黑龍江省伊春市全國(guó)計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)真題二卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.定義根節(jié)點(diǎn)深度為1,有n個(gè)元素的完全二叉樹的深度是()
A.D(n)=log2(n)
B.D(n)=1+log2(n)
C.D(n)=n+log2(n)
D.D(n)=1+n*log2(n)
2.在C語言中,函數(shù)隱含的類型是()
A.autoB.staticC.intD.void
3.有以下函數(shù):fun(char*p){returnp;}該函數(shù)的返回值是()。
A.無確切值B.形參p中存放的地址值C.一個(gè)臨時(shí)存儲(chǔ)單元的地址D.形參p自身的地址值
4.以下程序的輸出結(jié)果是()。A.1010B.99C.910D.109
5.下面哪種排序算法是穩(wěn)定的()
A.快速排序B.堆排序C.歸并排序D.選擇排序
6.
7.以下敘述中錯(cuò)誤的是()。
A.函數(shù)的返回值類型不能是結(jié)構(gòu)體類型,只能是簡(jiǎn)單類型
B.函數(shù)可以返回指向結(jié)構(gòu)體變量的指針
C.可以通過指向結(jié)構(gòu)體變量的指針訪問所指結(jié)構(gòu)體變量的任何成員
D.只要類型相同,結(jié)構(gòu)體變量之間可以整體賦值
8.設(shè)數(shù)據(jù)結(jié)構(gòu)A=(D,R),其中D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},則數(shù)據(jù)結(jié)構(gòu)A是()。
A.線性結(jié)構(gòu)B.樹形結(jié)構(gòu)C.圖狀結(jié)構(gòu)D.集合
9.若有以下定義,則能使值為3的表達(dá)式是intk=7,x=12;
A.x%=(k%=5)B.x%=(k-k%5)C.x%=k-k%5D.(x%=k)-(k%=5)
10.
11.設(shè)a,b,c,d,m和n均為int型變量,且a=5,b=6,c=7,d=m=2,n=2,則邏輯表達(dá)式(m=a>b)&&(n=c>d)運(yùn)算后,n的值為()
A.0B.1C.2D.3
12.以下敘述中正確的是()。
A.算法的時(shí)間復(fù)雜度是指算法在執(zhí)行過程中基本運(yùn)算的次數(shù)
B.算法的時(shí)間復(fù)雜度是指算法執(zhí)行所需要的時(shí)間
C.算法的時(shí)間復(fù)雜度是指算法執(zhí)行的速度
D.算法的復(fù)雜度是指算法控制結(jié)構(gòu)的復(fù)雜程度
13.有以下程序:程序運(yùn)行后的輸出結(jié)果是()。A.20B.13C.10D.31
14.二叉樹中第5層上的結(jié)點(diǎn)個(gè)數(shù)最多為________
A.8B.15C.16D.32
15.若已定義inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,則對(duì)a數(shù)組元素不正確的引用是
A.a[p-A)B.*(&a[i])C.p[i]D.a[10]
16.若有定義:int*p[3];,則以下敘述中正確的是()。
A.定義了一個(gè)基類型為int的指針變量p,該變量具有三個(gè)指針
B.定義了一個(gè)指針數(shù)組p,該數(shù)組含有三個(gè)元素,每個(gè)元素都是基類型為int的指針
C.定義了一個(gè)名為*p的整型數(shù)組,該數(shù)組含有三個(gè)int類型元素
D.定義了一個(gè)可指向一維數(shù)組的指針變量p,所指一維數(shù)組應(yīng)具有三個(gè)int類型元素
17.算法分析的兩個(gè)主要方面是()。
A.空間復(fù)雜性和時(shí)間復(fù)雜性B.正確性和簡(jiǎn)明性C.可讀性和文檔性D.數(shù)據(jù)復(fù)雜性和程序復(fù)雜性
18.在c語言中,變量的隱含存儲(chǔ)類別是()。
A.autoB.staticC.externD.無存儲(chǔ)類別
19.有下列程序:main{inty=10;do{y--;}while(--y);printf("%d\n",--y);)當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。A.-1B.1C.4D.0
20.以下程序的輸出結(jié)果是()main(){union{chari[2];intk;}r;r.i[0]=2,r.i[1]=0;printf("%d\n",r,k);}
A.2B.1C.0D.不確定
二、2.填空題(20題)21.數(shù)據(jù)結(jié)構(gòu)包括數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的【】以及對(duì)數(shù)據(jù)的操作運(yùn)算。
22.下列程序的輸出結(jié)果是【】。
voidfun(int*n)
{while((*n)--);
printf("%d",++(*n));
}
main()
{inta=1000;
fun(&a);
}
23.關(guān)系表達(dá)式x<y<z,用C語言的表達(dá)式為【】。
24.數(shù)據(jù)庫(kù)系統(tǒng)中實(shí)現(xiàn)各種數(shù)據(jù)管理功能的核心軟件稱為【】。
25.在關(guān)系數(shù)據(jù)庫(kù)中,用來表示實(shí)體之間聯(lián)系的是【】。
26.下面程序的輸出是【】。
main()
{enumem{em1=3,em2=1,em3};
char*aa[]={"AA"m,"BB","CC:,"DD"};
printf("%s%s%s\n,aa[em1],aa[em2],aa[em3]);
}
27.棧的3種基本運(yùn)算是:入棧、退棧和______。
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.關(guān)系代數(shù)是關(guān)系操作語言的一種傳統(tǒng)表示方式,它以集合代數(shù)為基礎(chǔ),它的運(yùn)算對(duì)象和運(yùn)算結(jié)果均為()。
30.執(zhí)行下面程序段后,k的值是【】。
r=1;n=203;k=1
do{k*=n%10*r;n/=10;r++;}while(n);
31.C語言程序的注釋可以出現(xiàn)在程序中的任何地方,一個(gè)注釋以【】分別作為開始和結(jié)束。
32.已定義charch=′$′;inti=1,j;,執(zhí)行j!=ch&&i++以后,i的值為【】。
33.以下程序用于判斷a,b,c能否構(gòu)成三角形,若能,輸出YES,否則輸出NO。當(dāng)給a,b,c輸入三角形三條邊長(zhǎng)時(shí),確定a,b,c能構(gòu)成三角形的條件是需同時(shí)滿足三個(gè)條件:a+b>c,a+c>b,b+c>a。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{floata,b,c;
scanf("%f%f%f",&a,&b,&c);
if(【】)printf("YES\n");/*a.b.c能構(gòu)成三角形*/
elseprinff("NO\n");/*a.b.c不能構(gòu)成三解形*/
}
34.\13'在內(nèi)存中占1個(gè)字節(jié),"\12"在內(nèi)存中占______個(gè)字節(jié)。
35.若有以下程序
main()
{inta=4,b=3,c=5,t=0;
if(a<b)t=a;a=b;b=t;
if(a<c)t=a;a=c;c=t;
printf("%d%d%dln",a,b,c);
}
執(zhí)行后輸出結(jié)果為______。
36.以下程序的輸出結(jié)果是【】。
main()
{inta=0;
a+=(a=8);
printf("%d\n",A);
}
37.下面程序的輸出結(jié)果是()。#include<stdio.h>main(){staticchara[]="china";char*ptr=a;while(*ptr){printf("%c",*ptr-32);ptr++;}}
38.下列語句的輸出結(jié)果是【】。
chara=3;printf("%d,%o,%x,%u\n",a,a,a,a);
39.若有定義inta=10,b=9,c=8;,接著順序執(zhí)行下列語句,變量b中的值是【】。
c=(a-=(b-5));
c=(a%11)+(b=3);
40.數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下6個(gè)設(shè)計(jì)階段:需求分析階段、______、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、實(shí)施階段、運(yùn)行和維護(hù)階段。
三、1.選擇題(20題)41.C語言運(yùn)算對(duì)象必須是整型的運(yùn)算符是______。
A.%=B./C.=D.<=
42.數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)流圖合法圖符的是()
A.控制流B.加工C.數(shù)據(jù)存儲(chǔ)D.源和潭
43.下列關(guān)于棧的敘述正確的是()。
A.棧按“先進(jìn)先出”組織數(shù)據(jù),B.棧按“先進(jìn)后出”組織數(shù)據(jù)C.只能在棧底插入數(shù)據(jù)D.不能刪除數(shù)據(jù)
44.若下列選項(xiàng)中的各變量均為整型且已有值,其中不正確的賦值語句是()。
A.++i;B.n1=(n2/(n3=2));C.k=i=j;D.a=b+c=2;
45.下列敘述中正確的是A.線性表是線性結(jié)構(gòu)B.棧與隊(duì)列是非線性結(jié)構(gòu)C.線性鏈表是非線性結(jié)構(gòu)D.二叉樹是線性結(jié)構(gòu)
46.下列敘述中正確的是()。A.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)只能有一種存儲(chǔ)結(jié)構(gòu)
B.邏輯結(jié)構(gòu)屬于線性結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)屬于非線性結(jié)構(gòu)
C.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)不影響數(shù)據(jù)處理的效率
D.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)影響數(shù)據(jù)處理的效率
47.設(shè)intx=7,則~x的值是()。
A.-8B.-7C.-1D.1
48.樹是結(jié)點(diǎn)的集合,它的根結(jié)點(diǎn)的數(shù)目是()。
A.有且只有1個(gè)B.1或多于1C.0或1D.至少有2個(gè)
49.若有以下定義和語句:inta[]={1,2,3,4,5,6,7,8,9,10},*p=a;則值為3的表達(dá)式是______。
A.p+=2,*(p++)B.P+=2,*++pC.P+=3,*p++D.P+=2,++*p
50.下列關(guān)于算法的時(shí)間復(fù)雜度陳述正確的是
A.算法的時(shí)間復(fù)雜度是指執(zhí)行算法程序所需要的時(shí)間
B.算法的時(shí)間復(fù)雜度是指算法程序的長(zhǎng)度
C.算法的時(shí)間復(fù)雜度是指算法執(zhí)行過程中所需要的基本運(yùn)算次數(shù)
D.算法的時(shí)間復(fù)雜度是指算法程序中的指令條數(shù)
51.運(yùn)行下列程序時(shí),若輸入的數(shù)據(jù)為“1,2,3”,則輸出結(jié)果是()。main(){floata,b,c,t;scanf("%f,%f,%f",&a,&b,&c);if(a<b){t=a;a=b;b=t;}if(a<c){t=a;a=c;c=t;}if(b<c){t=-b;b=c;c=t;}printf("%f\n%f\n%f/n",a,b,c);}
A.1.002.003.00
B.1.003.002.00
C.132
D.3.0000002.0000001.000000
52.微型機(jī)系統(tǒng)中,對(duì)輸入設(shè)備趕進(jìn)行管理的基本程序模塊(BIOS)存放在()
A.RAM中B.ROM中C.硬盤中D.寄存器中
53.若要求定義具有10個(gè)血型元素的一維數(shù)組a,則以下定義語句中錯(cuò)誤的是()。
A.#definmeN10inta[N];
B.#definen5inta[2*n];
C.inta[5+5];
D.intn=10,a[n];
54.現(xiàn)有如下程序段
#include"stdio.h"
#include"string.h"
main()
{chara[]="acfijk";/*這里是有序的字符序列*/
charb[]="befijklqswz";/*這里是有序的字符序列*/
charc[80],*p;
inti=0,j=0,k=0;
while(a[i]!=′\0′&&b[j]!=′\0′)
{if(a[i]<b[j])c[k++]=a[i++];
elseif(a[i]>b[j])c[k++]=b[j++];
else{c[k++]=b[j++];
i++;}}
while(a[i]==′\0′&&b[j]!=′\0′)
c[k++]=b[j++];
while(a[i]!=′\0′&&b[j]==′\0′)
c[k++]=a[i++];
c[k]=′\0′;
puts(c);}
則輸出結(jié)果是
A.acfijkbefijklqswz
B.abceffiijjkklqswz
C.befijklqswzacfijk
D.abcefijklqswz
55.若進(jìn)棧序列為1,2,3,4,進(jìn)棧過程中可以出棧,則下列不可能的一個(gè)出棧序列是______。
A.1,4,3,2B.2,3,4,1C.3,1,4,2D.3,4,2,1
56.下列關(guān)于線性鏈表的描述中,正確的是()。Ⅰ、只含有一個(gè)指針域來存放下一個(gè)元素地址Ⅱ、指針域中的指針用于指向該結(jié)點(diǎn)的前一個(gè)或后一個(gè)結(jié)點(diǎn)(即前件或后件)Ⅲ、結(jié)點(diǎn)由兩部分組成:數(shù)據(jù)域和指針域。
A.僅Ⅰ、ⅡB.僅Ⅰ、ⅢC.僅Ⅱ、ⅢD.全部
57.下列程序的輸出結(jié)果是______。main(){inti=3;switch(i){case1:case2:printf("%d",i);case3:case4:break;default:printh("OK";}}
A.0B.3C.OKD.沒有任何輸出
58.已知在ASCII字符集中,數(shù)字0的序號(hào)為48,下列程序的輸出結(jié)果為______。main()}chara='0',b='9';printf("%d,%c\n",a,b);}
A.因輸出格式不合法B.48,57C.0,9D.48,9
59.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是()。
A.程序的規(guī)模B.程序的效率C.程序設(shè)計(jì)語言的先進(jìn)性D.程序的易讀性
60.下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是()
A.無序線性表B.線性鏈表C.二叉鏈表D.順序存儲(chǔ)的有序表
四、選擇題(20題)61.
62.
63.
64.
65.有以下程序:
voidmain()
{intk=0,n=0;
while(k<5)
{switch(k)
{default:break;
case1:n+=k;
case2:
case3:n+=k;
}
k++;
}
printf("%d\n",n);
}
程序運(yùn)行后的輸出結(jié)果是()。
A)0B)4
C)6D)7
66.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.3B.6C.9D.2
67.在E—R圖中,用來表示實(shí)體的圖形是()。
A.矩形B.橢圓形C.菱形D.三角形
68.
69.
70.有下列程序:main{inty=10;do{y--;}while(--y);printf("%d\n",--y);)當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。A.-1B.1C.4D.0
71.
72.有以下程序程序的運(yùn)行結(jié)果是()。
A.CDEFB.ABEFC.ABCDD.CDAB
73.有以下程序:
#include<stdi0.h>
#include<string.h>
structA
{inta;charb[10];doubleC;);
voidf(structAt);
main()
{structAa={"1001,"ZhangDa",l098,0};
f(a);printf("%d,%S,%6.1f\n",a.a(chǎn),a.b,a.c);}
voidf(structAt)
{t.a(chǎn)=1002;strcpy(t.b,"ChangRon9");t.c=1202.0;}
程序運(yùn)行后的輸出結(jié)果是()。
A.1001,ZhangDa,1098.0
B.1002,ChangRong,1202.0
C.1001,ChangRong,1098.0
D.1002,ZhangDa,1202.0
74.
75.一個(gè)棧中初始元素依次為A、B、C、D、E。現(xiàn)將元素1、2、3、4、5依次入棧,然后將所有的元素依次出棧,則元素出棧的順序是
A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA
76.以下敘述中正確的是
A.自定義的函數(shù)中一定要有return語句
B.自定義的函數(shù)中不可以有多個(gè)return語句
C.自定義的函數(shù)中可以沒有return語句,此時(shí)函數(shù)應(yīng)被定義為void類型
D.函數(shù)的return語句一定要帶有表達(dá)式
77.下列敘述中正確的是()。
A.break語句只能用于switch語句體中
B.continue語句的作用是使程序的執(zhí)行流程跳出包含它的所有循環(huán)
C.break語句只能用在循環(huán)體內(nèi)和switch語句體內(nèi)
D.在循環(huán)體內(nèi)使用break語句和continue語句的作用相同
78.
79.以下選項(xiàng)中有語法錯(cuò)誤的是()。A.char*str[]={"guest"};
B.charstr[][lO]={"guest"};
C.char*str[3];str[t]={"9uest"};
D.charstr[3][lO];str[1]={"guest"};
80.以下程序的主函數(shù)中調(diào)用了在其面前定義的fun函數(shù)#include<stdio.h>...main(){doublea[15],k;k=fun(a);...}則以下選項(xiàng)中錯(cuò)誤的fun函數(shù)首部是()。、A.doublefun(doublea[l5])
B.doublefun(double*a)
C.doublefun(doublea[])
D.doublefun(doublea)
五、程序改錯(cuò)題(1題)81.下列給定的程序中,函數(shù)proc()的功能是:用選擇法對(duì)數(shù)組中的m個(gè)元素按從小到大的順序進(jìn)行排序。
例如,排序前的數(shù)據(jù)為:1132-5214
則排序后的數(shù)據(jù)為:-52111432
請(qǐng)修改程序中的錯(cuò)誤,使它能得到正確結(jié)果。
注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計(jì)題(1題)82.請(qǐng)編寫函數(shù)proc,該函數(shù)的功能是:將放在字符串?dāng)?shù)組中的M個(gè)字符串(每串的長(zhǎng)度不超過N),按順序合并組成一個(gè)新的字符串。
例如,若字符串?dāng)?shù)組中的M個(gè)字符串為:
ABCD
BCDEFG
CDEFGHI
則合并后的字符串內(nèi)容應(yīng)該是ABCDBCDEFGCDEF—GHl。
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc的花括號(hào)中填人所編寫的若干語句。
試題程序:
#include<stdio.h>
#include<conio.h>
#defineM3
#defineN20
voidproc(chararr[M][N],char*b)
{}
voidmain
{
charstr[M][N]={"ABCD","BCDEFG","
CDEFGHI"},i;
chararr[100]={"#############
#####");
printf("Thestring:\n");
for(i=0;i<M;i++)
puts(str[i]);
printf("\n");
proc(str,arr);
printf("TheAstring:\n");
printf("%s",arr);
printf("\n\n");
}
參考答案
1.B
2.C
3.B解析:return中返回的是指針p的值,也就是形參p中存放的地址值。
4.D
5.C
6.B
7.A函數(shù)返回值類型可以是簡(jiǎn)單類型和結(jié)構(gòu)體類型。
8.A
9.D解析:運(yùn)算符“%”的兩側(cè)都應(yīng)該是整型數(shù)。另外,本題需要掌握的知識(shí)點(diǎn)是:x%=k,等價(jià)于x=x%k。注意:強(qiáng)制類型轉(zhuǎn)換表達(dá)式。
10.B
11.C
12.A算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量,其計(jì)算工作量是用算法所執(zhí)行的基本運(yùn)算次數(shù)來度量的。本題答案為A選項(xiàng)。
13.D程序首先定義整型變量s和i,s的初值為0。for循環(huán)中i的取值為1,2,3,4,另外在switch語句中,執(zhí)行各個(gè)分支后,若沒有break語句,會(huì)繼續(xù)執(zhí)行后續(xù)分支。當(dāng)i=1時(shí),switch語句執(zhí)行case1、case2和default,將s自增3后再自增5,此時(shí)s的值為8;當(dāng)i=2時(shí),switch語句執(zhí)行case2、default,將s自增3后再自增5,此時(shí)s的值為16;當(dāng)i=3時(shí),switch語句執(zhí)行case3、case1、case2、default,將s逐步自增2,自增3,自增5,此時(shí)s的值為26;當(dāng)i=4時(shí),switch語句執(zhí)行default語句,將s自增5,此時(shí)s的值為31。本題答案為D選項(xiàng)。
14.C
15.D解析:通常,引用一個(gè)數(shù)組元素可以用下標(biāo)法,如a[P-a]形式,或指針法,如*(&a[i])的形式。本題中a[9]=9,a[10]顯然超出了數(shù)組范圍,注意,數(shù)組的下標(biāo)是從0開始的。
16.B解析:當(dāng)一個(gè)數(shù)組中的元素均為指針類型數(shù)據(jù)時(shí),該數(shù)組就稱為指針數(shù)組。int*p[3]表示此數(shù)組是指針類型的,每個(gè)數(shù)組元素(指針變量)都是指向一個(gè)整型的指針變量。
17.A
18.A解析:auto變量:無static聲明的局部變量。用auto作存儲(chǔ)類別的聲明時(shí),可以不寫auto,存儲(chǔ)類別隱含確定為auto(自動(dòng)存儲(chǔ)類別),是動(dòng)態(tài)存儲(chǔ)方式。大多數(shù)變量是自動(dòng)變量。用static聲明的局部變量是靜態(tài)局部變量。函數(shù)調(diào)用結(jié)束后靜態(tài)局部變量占據(jù)的內(nèi)存存儲(chǔ)單元空間不釋放,局部變量保留原值,下次調(diào)用時(shí)可以繼續(xù)使用該值。用extern聲明外部變量,外部變量即全局變量,可以用extern聲明來改變?nèi)肿兞康淖饔糜?實(shí)際上,關(guān)鍵字'auto'可以省略,auto不寫則隱含確定為'自動(dòng)存儲(chǔ)類別',屬于動(dòng)態(tài)存儲(chǔ)方式。
19.A本題考查do-while循環(huán)。當(dāng)--y是0(即y是o)時(shí)結(jié)束循環(huán),輸出--y,先將y的值減1再輸出Y的值。
20.A解析:根據(jù)共用體的定義可知:共用體r的成員k和成員i[2]是共用同—段內(nèi)存空間,所以,當(dāng)程序給r.i[0]賦值后,實(shí)際上,共用體成員k的值也確定了,為2。所以打印輸出的結(jié)果應(yīng)當(dāng)為2。
21.存儲(chǔ)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)包括3個(gè)方面,即數(shù)據(jù)的邏輯結(jié)構(gòu)、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)及對(duì)數(shù)據(jù)的操作運(yùn)算。
22.00解析:while循環(huán)的條件為即當(dāng)*n非零時(shí)執(zhí)行循環(huán),(*n)一是先使用*n的值再對(duì)*n減1,結(jié)束while循環(huán)后*n的值為-1。++(*n)是先對(duì)*n加1再使用*n的值,-1+1=0,輸出*n的值即輸出0。
23.(x<y)&&(y<z)(x<y)&&(y<z)解析:x<y<z的意思是y大于x并且y小于z。在C語言中,表達(dá)“并且”用邏輯與運(yùn)算符“&&”。
24.數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)
25.關(guān)系關(guān)系解析:在關(guān)系數(shù)據(jù)庫(kù)中,用關(guān)系也就是二維表來表示實(shí)體之間的聯(lián)系。
26.DDBBCCDDBBCC解析:C語言對(duì)枚舉的定義規(guī)定:在枚舉中聲明的各個(gè)枚舉元素,如果沒有明確指出某個(gè)枚舉元素的值,它的上一個(gè)元素存在并有明確值的情況下,這個(gè)枚舉元素的值為其上一個(gè)元素的值+1。在本題中,沒有明確說明枚舉元素em3的值,則em3=em2+1=1+1=2,進(jìn)而可知,在printf()打印函數(shù)中,要打印的數(shù)組元素是aa[3]、aa[1]、aa[2],因此最后的打印結(jié)果應(yīng)當(dāng)為“DDBBCC”。
27.讀棧頂元素讀棧頂元素解析:棧的基本運(yùn)算有3種:入棧、退棧和讀取棧頂元素。其中,入棧是指在棧頂插入一個(gè)新的元素;退棧是指取出棧頂元素并賦值給一個(gè)變量;讀棧頂元素是將棧頂元素賦值給一個(gè)指定的變量,不刪除棧頂元素。
28.fname"#"exit(0)chfp
29.關(guān)系關(guān)系
30.00解析:本題考查的是do厀hile循環(huán)。第一次執(zhí)行循環(huán)體,因?yàn)閗=1,r=1,n=20,所以k=1*20%10*1=0,n=20/10=2,r=2;第二次執(zhí)行循環(huán)體,k=0*2%10*2=0,n=10/10=1,r=3;第三次執(zhí)行循環(huán)體,k=0*1%10*3=0,n=1/10=0,r=4,所以k的值為0。
31./**//**/解析:C語言程序的注釋可以出現(xiàn)在程序基本單詞之間的任何地方,C語言程序的注釋以“/*”作為開始標(biāo)記,并以“*/”作為結(jié)束標(biāo)記。
32.11解析:在執(zhí)行邏輯表達(dá)式'j=!ch&&i++'時(shí),首先判斷j=!ch的值,因?yàn)?ch=\'$\''不為0,所以'j=!ch=0',編譯系統(tǒng)便不再計(jì)算表達(dá)式'i++'的值,i的值不變,仍為1。
33.(a+b>c)&&(a+c>b)&&(b+c>a)(a+b>c)&&(a+c>b)&&(b+c>a)解析:根據(jù)構(gòu)成三角形的條件:兩邊之和大于第三邊,得出空格應(yīng)該填(a+b>c)&&(a+c>b)&&(b+c>a)或與其等價(jià)的形式。
34.22解析:'\\13':表示八進(jìn)制數(shù)13表示的ASCII字符,是一個(gè)字符,占一個(gè)字節(jié);而”\\12”是個(gè)字符串,除了八進(jìn)制數(shù)12表示的ASCII字符占一個(gè)字節(jié)外,還有在字符串的末尾加上串結(jié)束標(biāo)志“'\\0'”,所以共有2個(gè)字節(jié)。
35.503503解析:此處需注意的是:如果if后面的條件為真,只執(zhí)行其后的一條語句或一條復(fù)合語句,如果if后面的條件為假,只執(zhí)行else后面的一條語句或一條復(fù)合語句。先判斷表達(dá)式“a<b”為假,不執(zhí)行“t=a”,但執(zhí)行“a=b;b=t;”,s的值為3,b的值為0。在判斷表達(dá)式“a<c”,值為真,所以執(zhí)行后面的3條語句“t=a;a=c;c=t”,結(jié)果a的值為5,c的值為3,所以最后輸出的結(jié)果為5、0和3。
36.1616解析:在程序中首先將8賦值給變量a,然后在進(jìn)行復(fù)合賦值運(yùn)算。即a=a+a=8+8=16,所以該空格處應(yīng)該填16。
37.CHINA
38.31371f3131,37,1f,31解析:此題考查了printf函數(shù)的格式字符,題中d是以十進(jìn)制形式輸出,o是以八進(jìn)制形式輸出,x是以十六進(jìn)制形式輸出,u以不帶符號(hào)的十進(jìn)制數(shù)輸出。
39.33解析:這里:b-5=4,a-=4之后a的值為6,并把它賦給c。此時(shí)b的值并未被改變。在第2個(gè)表達(dá)式中,也只有賦值表達(dá)式b=3改變了b的值。所以兩行語句執(zhí)行完畢,b的值應(yīng)該為3。
40.概念設(shè)計(jì)階段(數(shù)據(jù)庫(kù)概念設(shè)計(jì)階段)概念設(shè)計(jì)階段(數(shù)據(jù)庫(kù)概念設(shè)計(jì)階段)
41.A解析:在C語言中,模運(yùn)算(即取余運(yùn)算%)的運(yùn)算對(duì)象必須是整型數(shù)據(jù)(常量、變量或表達(dá)式)。
42.A解析:數(shù)據(jù)流圖包括4個(gè)方面,即加工(轉(zhuǎn)換)(輸入數(shù)據(jù)經(jīng)加工變換產(chǎn)生輸出)、數(shù)據(jù)流(沿箭頭方向傳送數(shù)據(jù)的通道,一般在旁邊標(biāo)注數(shù)據(jù)流名)、存儲(chǔ)文件(數(shù)據(jù)源)(表示處理過程中存放各種數(shù)據(jù)的文件)、源和潭(表示系統(tǒng)和環(huán)境的接口,屬系統(tǒng)之外的實(shí)體)。不包括選項(xiàng)中的控制流。
43.B棧是按“先進(jìn)后出”的原則組織數(shù)據(jù)的,數(shù)據(jù)的插入和刪除都在棧頂進(jìn)行操作。
44.D解析:本題考查賦值表達(dá)式。賦值表達(dá)式的一般形式是:變量名=表達(dá)式。C語言規(guī)定,不能給變量表達(dá)式賦值。
45.A根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后件關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié)構(gòu)分為兩大類型:線性結(jié)構(gòu)與非線性結(jié)構(gòu)。如果一個(gè)非空的數(shù)據(jù)結(jié)構(gòu)滿足下列兩個(gè)條件:1,有且只有一根節(jié)結(jié)點(diǎn),2,每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件,則稱該數(shù)據(jù)結(jié)構(gòu)為線性結(jié)構(gòu),又稱線性表。所以線性表、棧與隊(duì)列、線性鏈表都是線性結(jié)構(gòu),而二叉樹是非線性結(jié)構(gòu)。
46.DD)【解析】數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式,一種數(shù)據(jù)結(jié)構(gòu)可以根據(jù)需要采用不同的存儲(chǔ)結(jié)構(gòu),常用的存儲(chǔ)結(jié)構(gòu)有順序和鏈?zhǔn)浇Y(jié)構(gòu)。采用不同的存儲(chǔ)結(jié)構(gòu),其處理的效率是不同的。
47.A解析:本題主要考查按位求反運(yùn)算和C語言中正負(fù)數(shù)的表示,“0”代表正數(shù),“1”代表負(fù)數(shù);x=7的二進(jìn)制為00111,第一個(gè)0代表正數(shù),~x為11000,第一個(gè)1代表負(fù)數(shù),值為8。
48.CC?!窘馕觥繕渚哂忻黠@的層次關(guān)系,即樹是一種層次結(jié)構(gòu)。在樹結(jié)構(gòu)中,根結(jié)點(diǎn)在第一層上。當(dāng)樹為非空時(shí),樹中有且只有一個(gè)根結(jié)點(diǎn),當(dāng)樹為空時(shí),樹中根結(jié)點(diǎn)的數(shù)目為0。
49.A解析:引用一個(gè)數(shù)組元素,可以用:(1)下標(biāo)法,如a[i]形式;(2)指針法,如*(a+i)或*(p+i)。數(shù)組的下標(biāo)從0開始,值為3的數(shù)組元素是a[2]。B、C的內(nèi)容為a[3],D將a[2]前自加,結(jié)果為4。
50.C解析:算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量,也就是算法在執(zhí)行過程中所執(zhí)行的基本運(yùn)算的次數(shù),而不是指程序運(yùn)行需要的時(shí)間或是程序的長(zhǎng)度。
51.D解析:本題考查if語句。第1個(gè)if語句,實(shí)現(xiàn)如果a<b,則交換a、b值的功能;第2個(gè)if語句,實(shí)現(xiàn)如果a<c,則交換a、c的值的功能:第3個(gè)if語句,實(shí)現(xiàn)如果b<c,則交換b,c的值的功能。3個(gè)if語句結(jié)合起來實(shí)現(xiàn)的功能就是將a、b、c按從大到小排序。
52.B
53.D解析:C語言規(guī)定,在定義數(shù)組時(shí)數(shù)組名后的方括號(hào)中必須是常量表達(dá)式,不能包含變量。因此,選項(xiàng)D中用變量n來定義數(shù)組的大小是錯(cuò)誤的。故應(yīng)該選擇D。
54.D解析:這個(gè)題目的功能是實(shí)現(xiàn)兩個(gè)有序字符串,合并成一個(gè)新的有序的字符串。
55.C解析:棧是一種后進(jìn)先出表,選項(xiàng)C中,先出棧的是3,說明此時(shí)棧內(nèi)必然有1,2,由于1先于2進(jìn)淺,所以1不可能在2之前出棧,故選項(xiàng)C這種出棧序列是不可能的。
56.D解析:在定義的鏈表中,若只含育一個(gè)指針域來存放下一個(gè)元素地址,稱這樣的鏈表為單鏈表或線性鏈表。在鏈?zhǔn)酱鎯?chǔ)方式中,要求每個(gè)結(jié)點(diǎn)由兩部分組成:一部分用于存放數(shù)據(jù)元素值,稱為數(shù)據(jù)域:另一部分用于存放指針,稱為指針域。其中指針用于指向該結(jié)點(diǎn)的前一個(gè)或后一個(gè)結(jié)點(diǎn)(即前件或后件)。
57.D解析:在題中,i的值為3,由于“case3:”后面沒有break語句,所以繼續(xù)向下執(zhí)行“case4:”后面的語句,由于“case4:”后面的語句為break強(qiáng)行退出switch語句,所以,本題沒有任何輸出。
58.D解析:注意輸出控制符%d,%c,分別表示以十進(jìn)制形式輸出字符的ASCII碼值和字符。
59.D解析:程序不僅是編寫完就結(jié)束了,為了測(cè)試和維護(hù)程序,往往還有其他人閱讀和跟蹤程序,因此程序設(shè)計(jì)的風(fēng)格應(yīng)該強(qiáng)調(diào)簡(jiǎn)單和清晰,即程序的易讀性,“清晰第一,效率第二”。
60.DD)【解析】二分法查找只適用于順序存儲(chǔ)的有序表,表中的元素按值從小到大排列。
61.A
62.D
63.B
64.B
65.D首先k=0,執(zhí)行default,退出switch,k++,執(zhí)行case1,2,3后,n=2,k++,執(zhí)行case2,3,n=4,k++,執(zhí)行case3,n=7.執(zhí)行k++,執(zhí)行default,k++,退出循環(huán)。
66.B本題的考查點(diǎn)是指向數(shù)組元素的指針變量的定義和賦值。所謂數(shù)組的指針是指數(shù)組的起始地址,數(shù)組元素的指針是數(shù)組元素的地址。P=&a[0][O]是把該數(shù)組的第一個(gè)元素的地址賦給指針變量P,而且此時(shí)指針變量P也是int型。a[1][2]剛好是數(shù)組中的第6個(gè)元素,此時(shí)也就是P所指的地址,所以輸出結(jié)果是6。
67.AA?!窘馕觥吭贓—R圖中,矩形表示實(shí)體;菱形表示聯(lián)系名;橢圓形表示實(shí)體的屬性。
68.B
69.C
70.A本題考查do-while循環(huán)。當(dāng)--y是0(即y是o)時(shí)結(jié)束循環(huán),輸出--y,先將y的值減1再輸出Y的值。
71.A本題考查的是C語言表達(dá)式。如果算術(shù)運(yùn)算符”/”中參與運(yùn)算的變量都是整型變量,則”/”表示整除運(yùn)算,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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àng)目建議書
- 2025年離合器分離軸承項(xiàng)目合作計(jì)劃書
- 2025年充換電站項(xiàng)目發(fā)展計(jì)劃
- 腸梗阻術(shù)前術(shù)后護(hù)理
- 遼寧省2025秋九年級(jí)英語全冊(cè)Unit5Whataretheshirtsmadeof課時(shí)4SectionB(1a-1e)課件新版人教新目標(biāo)版
- 員工溝通會(huì)課件
- 植皮術(shù)后護(hù)理要點(diǎn)解析
- 護(hù)理法律與醫(yī)療糾紛法律咨詢
- 急診護(hù)理倫理實(shí)踐競(jìng)賽
- 肌腱術(shù)后brace的使用與注意事項(xiàng)
- 國(guó)開機(jī)考答案-鋼結(jié)構(gòu)(本)(閉卷)
- 紀(jì)委談話筆錄模板經(jīng)典
- 消防安全制度和操作規(guī)程
- 叉車安全技術(shù)交底
- 單人徒手心肺復(fù)蘇操作評(píng)分表(醫(yī)院考核標(biāo)準(zhǔn)版)
- 國(guó)家預(yù)算實(shí)驗(yàn)報(bào)告
- 工業(yè)園區(qū)綜合能源智能管理平臺(tái)建設(shè)方案合集
- 附件1:中國(guó)聯(lián)通動(dòng)環(huán)監(jiān)控系統(tǒng)B接口技術(shù)規(guī)范(V3.0)
- 正弦函數(shù)、余弦函數(shù)的圖象 說課課件
- 閉合性顱腦損傷病人護(hù)理查房
- 《你看起來好像很好吃》繪本課件
評(píng)論
0/150
提交評(píng)論