![2022年安徽省滁州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第1頁(yè)](http://file4.renrendoc.com/view/b551864128bd275170da1c33dfbab5c0/b551864128bd275170da1c33dfbab5c01.gif)
![2022年安徽省滁州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第2頁(yè)](http://file4.renrendoc.com/view/b551864128bd275170da1c33dfbab5c0/b551864128bd275170da1c33dfbab5c02.gif)
![2022年安徽省滁州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第3頁(yè)](http://file4.renrendoc.com/view/b551864128bd275170da1c33dfbab5c0/b551864128bd275170da1c33dfbab5c03.gif)
![2022年安徽省滁州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第4頁(yè)](http://file4.renrendoc.com/view/b551864128bd275170da1c33dfbab5c0/b551864128bd275170da1c33dfbab5c04.gif)
![2022年安徽省滁州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)_第5頁(yè)](http://file4.renrendoc.com/view/b551864128bd275170da1c33dfbab5c0/b551864128bd275170da1c33dfbab5c05.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2022年安徽省滁州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.有定義語(yǔ)句intb;charc[10];,則正確的輸入語(yǔ)句是______。A.scallf("%d%s",&b,&c);
B.scallf("%d%s",&b,c);
C.scanf("%d%s",b,c)
D.scanf("%d%s",b,&c);
2.以下不能作為合法常量的是()。
A.'cd'B.1.234e04C.”\a”D.'\011'
3.以下敘述中正確的是()。
A.C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方
B.花括號(hào)"{"和"}"只能作為函數(shù)體的定界符
C.構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名
D.分號(hào)是C語(yǔ)句之間的分隔符,不是語(yǔ)句的一部分
4.以下不能輸出字符A的語(yǔ)句是(注:字符A的ASCII值為65,字符a的ASCII值為97)()。
A.printf(“%c\n”,‘a(chǎn)’-32);
B.printf(“%d\n”,‘A’);
C.printf(“%c\n”,65);
D.printf(“%c\n”,‘B’-1);
5.有以下程序:viodfun(inta,intb,intc){a=456;b=567;c=678;}main{intx=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d\n",x,y,z);}輸出的結(jié)果是()。A.30,20,10B.10,20,30C.456,567,678D.678,567,456
6.若有說(shuō)明:inta[][3]={0,0};則不正確的敘述是()。
A.數(shù)組a的每個(gè)元素的初值都是0
B.數(shù)組a的第一維大小為1
C.數(shù)組a的行數(shù)為1
D.只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
7.以下程序的主函數(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)
8.已知字母A的ASCII碼為十進(jìn)制的65,下面程序main(){charch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}的輸出是_________。
A.67,DB.B,CC.C,DD.不確定的值
9.判斷一個(gè)順序存儲(chǔ)的隊(duì)列sp為空的條件是()。
A.sp->front=sp->rear
B.sp->front=sp->rear+1
C.sp->front=sp->rear-1
D.sp->front=NULL
10.線性表是具有n個(gè)()的有限序列。
A.字符B.數(shù)據(jù)元素C.數(shù)據(jù)項(xiàng)D.表元素
11.以下說(shuō)法正確的是()。
A.C語(yǔ)言只接受十進(jìn)制的數(shù)
B.C語(yǔ)言只接受八進(jìn)制、十進(jìn)制、十六進(jìn)制的數(shù)
C.C語(yǔ)言接受除二進(jìn)制之外任何進(jìn)制的數(shù)
D.C語(yǔ)言接受任何進(jìn)制的數(shù)
12.假設(shè)某算法的計(jì)算時(shí)間可用遞推關(guān)系式T(n)=2T(n/2)+n,T(1)=1表示,則該算法的時(shí)間復(fù)雜度為()
A.O(logn)B.O(n*logn)C.O(n)D.O(n^2)
13.有下列程序:main{inty=10;do{y--;}while(--y);printf("%d\n",--y);)當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。A.-1B.1C.4D.0
14.設(shè)有條件表達(dá)式:(EXP)?i++:j--,則以下表達(dá)式中與(E)(P)完全等價(jià)的是A.(EXP==0)B.(EXP!=0)C.(EXP=-1)D.(EXP!=1)
15.設(shè)x和y均為bool量,則x&&y為真的條件是()。
A.它們均為真B.其中一個(gè)為真C.它們均為假D.其中一個(gè)
16.
17.在順序表{2,5,7,10,14,15,18,23,35,41,52}中,用二分法查找關(guān)鍵碼12需做()次關(guān)鍵碼比較。
A.2B.3C.4D.5
18.在軟件生存周期中,能準(zhǔn)確地確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階段是()。
A.概要設(shè)計(jì)B.詳細(xì)設(shè)計(jì)C.可行性分析D.需求分析
19.
20.設(shè)有如下定義和語(yǔ)句:FILE*fp;intdata[10],i,n;fp=fopen(“abc.txt”,“r”);文本文件abc.txt中的數(shù)據(jù)為58192765190,其中第1個(gè)數(shù)據(jù)代表的是它后面數(shù)據(jù)的個(gè)數(shù)。若文件已正確打開(kāi),則以下程序段中能將文件的最后5個(gè)數(shù)據(jù)依次正確讀入數(shù)組data[0]~data[4]中的是()。
A.fscanf(fp,“%d”,&n);for(i=0;i<n;i++)fscanf(fp,“%d”,&data[i]);
B.i=0;while(!feof(fp)){fscanf(fp,“%d”,&data[i]);i++;}
C.for(i=0;!feof(fp);i++)fscanf(fp,“%d”,&data[i]);
D.i=0;fscanf(fp,“%d”,&n);i++;while(!feof(fp)){fscanf(fp,“%d”,&data[i]);i++;}
二、2.填空題(20題)21.以下程序的功能是計(jì)算。補(bǔ)足所缺語(yǔ)句。
longf(intn)
{inti;longs;
s=【】;
for(i=1;i<=n;i++)s=【】;
returns;
}
main()
{longs;intk,n;
scanf("%d",&n);
s=【】;
for(k=0;k<=n,k++)s=s+【】;
printf("%1d\n",s);
}
22.下列程序的運(yùn)行結(jié)果是______。
main()
{ints=0,i=1;
while(s<=10)
{s=s+i*i;
i++;
}
printf("%d",--i);
}
23.設(shè)C語(yǔ)言中,一個(gè)int型數(shù)據(jù)在內(nèi)存中占兩個(gè)字節(jié),則int型數(shù)據(jù)的取值范圍為【】。
24.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
}
printf("%d%d\n",a,b);
}
25.軟件測(cè)試中路徑覆蓋測(cè)試是整個(gè)測(cè)試的基礎(chǔ),它是對(duì)軟件【】進(jìn)行測(cè)試。
26.程序測(cè)試分為靜態(tài)分析和動(dòng)態(tài)測(cè)試。其中【】是指不執(zhí)行程序,而只是對(duì)程序文本進(jìn)行檢查,通過(guò)閱讀和討論,分析和發(fā)現(xiàn)程序中的錯(cuò)誤。
27.下面程序的功能是輸出數(shù)組中最大的數(shù),由a指針指向該元素。請(qǐng)?zhí)羁铡?/p>
main()
{ints[]={6,7,2,13,9,1,12,10,5,8,4,3,11),*a,*b;
for(【】)
if(*a<*b)a=b;
printf("%d",*a);
}
28.軟件危機(jī)出現(xiàn)于60年代末,為了解決軟件危機(jī),人們提出了【】的原理來(lái)設(shè)計(jì)軟件,這就是軟件工程誕生的基礎(chǔ)。
29.設(shè)有以下定義和語(yǔ)句,則*(*(p+2)+1)的值為【】。
inta[3][2]={10,20,30,40,50,60},(*p)[2];
p=a;
30.下面程序的輸出是【】。
main()
{intarr[10],i,k=0;
for(i=0;i<10;i++)
arr[i]=i;
for(i=1;i<4;i++)
k+=arr[i]+i;
printf("%d\n"k);}
31.需求分析的最終結(jié)果是產(chǎn)生【】。
32.函數(shù)compare的功能是比較兩個(gè)字符串是否相等,若相等則函數(shù)返回1,否則返回o,請(qǐng)?zhí)羁铡?/p>
compare(chars[],chart[])
{
inti=0
while(s[i]==t[i]&&【】)i++;
return(【】?1:0);
}
33.用以下語(yǔ)句調(diào)用庫(kù)函數(shù)malloc,使字符指針st指向具有11個(gè)字節(jié)的動(dòng)態(tài)存儲(chǔ)空間,請(qǐng)?zhí)羁?。st=(char*)【】;
34.設(shè)有定義“struct{inta;floatb;charc;}abc,*p_abc=&abc;”,則對(duì)結(jié)構(gòu)體成員a的引用方法可以是abc.a和p_abc【】a。
35.子程序通常分為兩類:【】和函數(shù),前者是命令的抽象,后者是為了求值。
36.已知字符'A'的ASCII代碼值為65,以下程序運(yùn)行時(shí)若從鍵盤輸入:B33<回車>,則輸出結(jié)果是【】。
#include<stdio.h>
main()
{chara,b;
a=getchar();seanf("%d",&b);
a=a-'A'+'0';b=b*2;
prinff("%c%c\n",a,b);
}
37.以下函數(shù)rotate的功能是:將a所指N行N列的二維數(shù)組中的最后一行放到b所指二維數(shù)組的第0列中,把a(bǔ)所指二維數(shù)組中的第0行放到b所指二維數(shù)組的最后一列中,b所指二維數(shù)組中其他數(shù)據(jù)不變。
#defineN4
voidrotate(inta[][N],intb[][N])
{inti,j;
for(i=0;i<N;i++)
{b[i][N-1]=______;______=a[N-1][i];}
}
38.一個(gè)模塊直接調(diào)用的其他模塊的模塊個(gè)數(shù)稱為_(kāi)_____。
39.有以下語(yǔ)句段:
intn1=10,n2=20;
printf("【】",n1,n2);
要求按以下格式輸出n1和n2的值:
n1=10
n2=20
每個(gè)輸出行從第一列開(kāi)始,請(qǐng)?zhí)羁铡?/p>
40.按照邏輯結(jié)構(gòu)分類,數(shù)據(jù)結(jié)構(gòu)可分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),隊(duì)列屬于______。
三、1.選擇題(20題)41.需求分析階段的任務(wù)是確定()
A.軟件開(kāi)發(fā)方法B.軟件開(kāi)發(fā)工具C.軟件開(kāi)發(fā)費(fèi)用D.軟件系統(tǒng)功能
42.不合法的main函數(shù)命令行參數(shù)表示形式是
A.main(inta,char*c[])
B.mmn(intarc,char**arv)
C.main(intargc,char*argv)
D.majn(intargv,char*atgc[])
43.有以下程序:main(){inty=10;while(y--);printf("y=%d\n",y);}程序執(zhí)行后的輸出結(jié)果是()。
A.y=0B.y=-1C.y=1D.while構(gòu)成無(wú)限循環(huán)
44.以下選項(xiàng)中不能作為合法常量的是_____。A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e0
45.在下列幾種排序方法中,要求內(nèi)存量最大的是______。
A.插入排序B.選擇排序C.快速排序D.歸并排序
46.若有定義:inta=4,b=5;floatx=3.4,y=2.1;,則下列表達(dá)式的值為()
(float)(a+b)/2+(int)×%(int)y
A.5.5B.55C.5.500000D.55.00000
47.設(shè)有如下程序:#include"string.h"main(){staticchars1[20],s2[20];scanf("%s",s1);scanf("%s",s2);if(strcmp(s1,s2))printf("@");elseprintf("$");printf("%d\n",strlen(strcat(s1,s2)));}如果從鍵盤上輸入name<回車>name1<回車>,則程序運(yùn)行后的輸出結(jié)果是()
A.$8B.@10C.$9D.@9
48.設(shè)有以下程序段;inta[5]={0},*p,*q;p=a;q=a;則合法的運(yùn)算是______。
A.p+qB.p-qC.p*qD.p%q
49.下面程序輸出的結(jié)果是()。main(){intx=100,a=10,b=20,ok1=5,ok2=0;if(a<b)if(b!=15)if(!ok1)x=-i;elseif(ok2)x=10;x=1;printf("%d\n",x);}
A.-1B.0C.1D.不確定的值
50.有以下程序main(){chars[]="159",*p;p=s;printf("%c",*p++);printf("%c",*p++);}程序運(yùn)行后的輸出結(jié)果是______。
A.15B.16C.12D.59
51.算法的時(shí)間復(fù)雜度是指______。
A.執(zhí)行算法程序所需要的時(shí)間B.算法程序的長(zhǎng)度C.算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)D.算法程序中的指令條數(shù)
52.下列程序的輸出結(jié)果是()。
main
{
doubled=3.2;intx,y;
x=1.2;y=(x+3.8)/5.0;
printf("%d\n",d*y);
}
A.3B.3.2C.0D.3.07
53.fwrite函數(shù)的一般調(diào)用形式是
A.fwrite(buffer,count,size,fp);
B.fwrite(fP,size,count,buffer);
C.fwrite(fp,count,size,buffer);
D.fwrite(buffer,size,count,fp);
54.設(shè)R是一個(gè)二元關(guān)系,S是一個(gè)三元關(guān)系,則下列運(yùn)算中正確的是()。
A.R-SB.R×SC.RNSD.RUS
55.微型計(jì)算機(jī)的性能主要取決于______。
A.內(nèi)存B.硬盤C.中央處理器D.顯示卡
56.以下程序的輸出結(jié)果是_______。main(){inta=-1,b=1,k;if(++a<0)&&!(b-<=0))printf("%d%d\n",a,b);elseprintf("%d%d\n",b,a);}
A.-11B.01C.10D.00
57.下列不是合法的C語(yǔ)言語(yǔ)句是()。
A.a=5B.{inti;i++;}C.;D.{;}
58.若有以下定義和語(yǔ)句,則輸出結(jié)果是______。char*s1="12345",*s2="1234";printf("%d\n",strlen(strcpy(s1,s2)));
A.4B.5C.9D.10
59.程序中對(duì)fun()函數(shù)有如下說(shuō)明void*fun();此說(shuō)明的含義是______。
A.fun函數(shù)無(wú)返回值
B.fun函數(shù)的返回值可以是任意的數(shù)據(jù)類型
C.fun函數(shù)的返回值是無(wú)值型的指針類型
D.指針fun指向一個(gè)函數(shù),該函數(shù)無(wú)返回值
60.下列的程序用來(lái)輸出兩個(gè)字符串前7個(gè)字符中對(duì)應(yīng)相等的字符及其位置號(hào),程序空白處應(yīng)該填寫的是()。#include<stdio.h>main(){chars1[]="chinese",s2[]="japnese";inti;for(i=0;s1[i]!='\0'&&s2[i]!='\0';i++)if(s1[i]==s2[i]&&i<7)__________________;}
A.putchar(s2[i]);putchar(i)
B.puts(s1[i],i)
C.printf("%c%d\n",s2[i],i)
D.printf("%c",s1[i]);printf("%d\n",i)
四、選擇題(20題)61.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過(guò)程
C.軟件的開(kāi)發(fā)過(guò)程
D.軟件的運(yùn)行維護(hù)過(guò)程
62.閱讀下面程序,則執(zhí)行后的結(jié)果是()。
A.tomeetme
B.tmem
C.oete
D.tome
63.在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,先后經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)管理階段。其中數(shù)據(jù)獨(dú)立性最高的階段是
A.?dāng)?shù)據(jù)庫(kù)系統(tǒng)B.文件系統(tǒng)C.人工管理D.?dāng)?shù)據(jù)項(xiàng)管理
64.已知字符'A'的ASCⅡ代碼值是65,字符變量c1的直是'A',c2的值是'D'。執(zhí)行語(yǔ)句printf("%d,%d",c1,c2-2);后,輸出結(jié)果是()。
A.A.A,BB.A,68C.65,66D.65,68
65.
66.
67.若某二叉樹(shù)的前序遍歷訪問(wèn)順序是abdgcefh,中序遍歷訪問(wèn)順序是dgbaechf,則其后序遍歷的結(jié)點(diǎn)訪問(wèn)順序是()。
A.bdgcefhaB.gdbecfhaC.bdgaechfD.gdbehfca
68.按照c語(yǔ)言規(guī)定的用戶標(biāo)識(shí)符命名規(guī)則,不能出現(xiàn)在標(biāo)識(shí)符中的是()。A.連接符B.大寫字母C.數(shù)字字符D.下劃線
69.有以下程序程序運(yùn)行后的輸出結(jié)果是()。
A.3B.5C.7D.9
70.
71.下列選項(xiàng)中屬于軟件生命周期中開(kāi)發(fā)階段任務(wù)的是()。
A.詳細(xì)設(shè)計(jì)B.運(yùn)行維護(hù)C.可行性研究D.需求分析
72.有以下程序:
程序的運(yùn)行結(jié)果是()。
A.y=0B.y=1C.y=2D.y=3
73.
74.有以下程序
#include<stdio.h>
#defineP24;
#defineS(x)P*x+x;
main()
{inta=2,b=2;
printf("%d\n",S(a+b));
}
程序的運(yùn)行結(jié)果是
A.程序編譯運(yùn)行時(shí)報(bào)錯(cuò),無(wú)法輸出B.54
C.96D.100
75.
有以下結(jié)構(gòu)說(shuō)明和變量定義,指針p、q、r分別指向鏈表中的3個(gè)連續(xù)結(jié)點(diǎn)。
structnode
{intdata;structnode*next;)*p,*q,*r;
現(xiàn)要將q所指結(jié)點(diǎn)從鏈表中刪除,同時(shí)要保持鏈表的連續(xù),以下不能按要求完成操作的語(yǔ)句是()。
A.p->next=q->next;
B.P-next=P->next->next;
C.p->next=r;
D.p=q->next;
76.在軟件開(kāi)發(fā)中,需求分析階段產(chǎn)生的主要文檔是()。
A.軟件需求規(guī)格說(shuō)明書B(niǎo).數(shù)據(jù)庫(kù)說(shuō)明書C.集成測(cè)試計(jì)劃D.概要設(shè)計(jì)說(shuō)明書
77.
78.
79.
有下列程序段:
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ù)
80.有以下程序則輸出結(jié)果是()。A.1245B.1256C.1278D.1267
五、程序改錯(cuò)題(1題)81.以下程序可把輸入的十進(jìn)制數(shù)以十六進(jìn)制數(shù)的形式輸出。請(qǐng)?jiān)跈M線上填上適當(dāng)?shù)膬?nèi)容并把橫線刪除,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開(kāi)考生文件夾析下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,請(qǐng)編寫一個(gè)函數(shù)fun(),它的功能是將ss所指字符串中所有下標(biāo)為奇數(shù)的字母轉(zhuǎn)換為大寫字母(若該位置上不是字母,則不轉(zhuǎn)換)。例如,若輸入“abc4Efg”,則應(yīng)輸出“aBc4EFg”。注意:部分源程序在文件prog1.c中。請(qǐng)勿改動(dòng)主函數(shù)main()和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫的若干語(yǔ)句。試題程序:
參考答案
1.B解析:scanf函數(shù)中的“格式控制”后面應(yīng)當(dāng)是地址,而不是變量名。對(duì)于變量,通過(guò)地址運(yùn)算符“&”求出內(nèi)存中的地址;對(duì)于數(shù)組c[10],數(shù)組名c即為數(shù)組在內(nèi)存中的地址。
2.A字符常量是使用單引號(hào)標(biāo)注的單個(gè)字符,選項(xiàng)A錯(cuò)誤;選項(xiàng)B屬于浮點(diǎn)數(shù)常量,正確;選項(xiàng)C屬于轉(zhuǎn)義字符常量,正確;選項(xiàng)D屬于轉(zhuǎn)義字符,代表八進(jìn)制數(shù)011的ASCII值的字符,正確。本題答案為A選項(xiàng)。
3.A解析:/*與*/之間的信息稱為注釋信息,在C語(yǔ)言中,允許在任何能夠插入空格符的位置插入注釋,但C語(yǔ)言的注釋不能進(jìn)行嵌套,故選項(xiàng)A正確:在C語(yǔ)言中,函數(shù)體是從花括號(hào){開(kāi)始,到花括號(hào)}結(jié)束。但沒(méi)有規(guī)定花括號(hào){和}只能作為函數(shù)體定界符,故選項(xiàng)B錯(cuò)誤;選項(xiàng)C中前半句是正確的,C程序由一個(gè)或多個(gè)函數(shù)所組成,但不是所有的函數(shù)都由用戶自己命名,有些函數(shù),比如主函數(shù)main()就不能由用戶來(lái)命名,故選C不正確;在C語(yǔ)言中明確規(guī)定每條語(yǔ)句以分號(hào);結(jié)束,分號(hào)是語(yǔ)句不可缺少的一部分,故選項(xiàng)D不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
4.BB選項(xiàng)輸出的格式為%d,即整型格式,所以輸出字符‘A’的ASCII值65,而不是字母A。因?yàn)榇髮懽帜副绕鋵?duì)應(yīng)的小寫字母的ASCII值小32,所以A選項(xiàng)正確。字符‘A’的ASCII值是65,以%c格式輸出可以輸出字母A,所以C選項(xiàng)正確。因?yàn)樽址瓵’的ASCII值比字符‘B’的小1,所以D選項(xiàng)正確。故本題答案為B選項(xiàng)。
5.B本題考查實(shí)參與形參調(diào)用,從實(shí)參傳遞到形參時(shí),只是數(shù)值的傳遞,調(diào)用函數(shù)中值的改變不會(huì)影響主函數(shù)中的值,因此原樣輸出。
6.D解析:本題考查給二維數(shù)組元素賦值。給二維數(shù)組元素賦值時(shí)應(yīng)注意下列兩點(diǎn):①在對(duì)二維數(shù)組元素賦初值時(shí),可以只對(duì)部分元素賦初值,未賦初值的元素自動(dòng)取0。②二維數(shù)組第一維的大小由下列規(guī)則確定;當(dāng)初值的個(gè)數(shù)能被第二維的常量表達(dá)式的值除盡時(shí),所得商數(shù)就是第一維的大?。划?dāng)初值的個(gè)數(shù)不能被第二維的常量表達(dá)式的值除盡時(shí),第一維的大小等于所得商數(shù)加1。
7.A由題可知fun的參數(shù)為變量,而a[15]為常量,所以答案為A。
8.A解析:由于字符“5”和“3”的ASCII碼相差為2,所以ch1經(jīng)過(guò)運(yùn)算后的值應(yīng)為65+2=67;同理,ch2經(jīng)過(guò)運(yùn)算后的值應(yīng)為65+3=68,即是字符“D”。
9.A
10.B
11.BC語(yǔ)言可以使用格式控制符“%d”“%u”等接受十進(jìn)制的數(shù),使用“%o”接受八進(jìn)制的數(shù),使用“%x”接受十六進(jìn)制的數(shù)。本題答案為B選項(xiàng)。
12.B
13.A本題考查do-while循環(huán)。當(dāng)--y是0(即y是o)時(shí)結(jié)束循環(huán),輸出--y,先將y的值減1再輸出Y的值。
14.B解析:在C語(yǔ)言中,邏輯表達(dá)式的結(jié)果只有兩種情況“tree”和“false”。如果要把一個(gè)邏輯值看成一個(gè)整數(shù)的話,true等于1;false等于0。如果要把一個(gè)整數(shù)看成一個(gè)邏輯值的話,非0等于true:0等于false。由此可見(jiàn),如果EXP表達(dá)式的結(jié)果為0的話;(EXP)為假:(EXP==0)為真;(EXP!=O)為假;(EXP==1)為假;(EXP!=1)為真。如果EXP表達(dá)式的結(jié)果為非0的話:(EXP)為真:(EXP=0)為假;(EXP!=0)為真;(EXP=1)結(jié)果不定;(EXP!=1)結(jié)果不定。綜上所述,只有(EXP!=0)完全等價(jià)于表達(dá)式(EXP)。故應(yīng)該選擇B。
15.A
16.C
17.B
18.D解析:在需求分析階段中,根據(jù)可行性研究階段所提交的文檔,特別是從數(shù)據(jù)流圖出發(fā),對(duì)目標(biāo)系統(tǒng)提出清晰、準(zhǔn)確和具體的要求,即要明確系統(tǒng)必須做什么的問(wèn)題。本題的正確答案為D。
19.B
20.A由題意可知,文件abc.txt中存放了6個(gè)整數(shù)。其中第1個(gè)表示后續(xù)數(shù)據(jù)的個(gè)數(shù)。要將最后5個(gè)數(shù)據(jù)讀入數(shù)組data中,需要讀取數(shù)據(jù)的個(gè)數(shù)為5,所以首先調(diào)用fscanf函數(shù),將5讀入整型變量n中;接著通過(guò)for循環(huán),i分別取值0~n-1,調(diào)用fscanf函數(shù)將n個(gè)整數(shù)讀入data[0]~data[n-1]中。故本題答案為A選項(xiàng)。
21.1s*i0f(k)
22.33解析:分析程序運(yùn)行過(guò)程,第1次循環(huán):s=s+i*i=0+1*1=1,i=2;第2次循環(huán):s=s+i*i=1+2*2=5,i=3;第3次循環(huán):s=s+i*i=5+3*3=14,i=4;循環(huán)條件不成立輸出i,--i使i的值減1,輸出結(jié)果為3。
23.-32768~32767
24.21
25.結(jié)構(gòu)結(jié)構(gòu)解析:路徑測(cè)試是白盒測(cè)試方法中的—種,它要求對(duì)程序中的每條路徑最少檢查一次,目的是對(duì)軟件的結(jié)構(gòu)進(jìn)行測(cè)試。
26.靜態(tài)分析靜態(tài)分析解析:程序測(cè)試分為靜態(tài)分析和動(dòng)態(tài)測(cè)試。其中,靜態(tài)分析是指不執(zhí)行程序,而只是對(duì)程序文本進(jìn)行檢查,通過(guò)閱讀和討論,分析和發(fā)現(xiàn)程序中的錯(cuò)誤。
27.a=sb=s+1;b-s<sizeof(s)/sizeof(s[0]);b++a=s,b=s+1;b-s<sizeof(s)/sizeof(s[0]);b++解析:題目要求輸出數(shù)組中最大的數(shù),所以要遍歷整個(gè)數(shù)組,而指針a用來(lái)指向最大數(shù),所以循環(huán)變量只有使用指針b。for初始化時(shí),應(yīng)該先讓a指向第1個(gè)數(shù),然后讓b指向第2個(gè)數(shù),故循環(huán)初始化語(yǔ)句應(yīng)該為a=s,b=s+1或其他等價(jià)表達(dá)式。因?yàn)橐筨遍歷整個(gè)數(shù)組,故循環(huán)條件應(yīng)該為b-s<sizeof(s)/sizeof(s[0])或其他等價(jià)表達(dá)式。最后每次循環(huán)應(yīng)該讓b往后移動(dòng)一位,故for的第3條語(yǔ)句應(yīng)該是++b、b++或其他等價(jià)形勢(shì)。所以本題應(yīng)填a=s,b=s+1;b-s<sizeof(s)/sizeof(s[0]);b++或其他等價(jià)語(yǔ)句。
28.軟件工程學(xué)軟件工程學(xué)
29.6060解析:程序中定義a是一個(gè)3行2列的二維數(shù)組,p是指向兩個(gè)元素的一維數(shù)組指針,并讓p指向二維數(shù)組a的首行。則代碼*(*(p+2)+1)中的p+2指向二維數(shù)組a的第三行a[2],*(p+2)指向a[2[]0],*(p+2)+1指向a[2][1],*(*(p+2)+1)是引用a[2][1],其值是60。
30.1212解析:本題通過(guò)第一個(gè)for循坪將數(shù)組arr[0]-arr[9]分別賦值為0-9,通過(guò)第二個(gè)for循環(huán)的三次循環(huán)累加,求出結(jié)果為12,具體分析如下:
i=1:k=0+arr[1]+1即k=2;
i=2:k=2+arr[2]+2即k=6;
i=3:k=6+arr[3]+3即k=12;
31.需求規(guī)格說(shuō)明書需求規(guī)格說(shuō)明書解析:軟件需求規(guī)格說(shuō)明書是需求分析階段的最后成果,是軟件開(kāi)發(fā)中的重要文檔之一。需求規(guī)格說(shuō)明書包括正確性、無(wú)歧義性、完整性、可驗(yàn)證性、一致性、可理解性、可修改性和可追蹤性等。
32.s[i]&&t[i]或s[i]!='\0'&&t[i]!='\0'!(s[i]-t[i])s[i]&&t[i]或s[i]!='\\0'&&t[i]!='\\0'\r\n!(s[i]-t[i])解析:while后括號(hào)中的判斷條件為兩個(gè)字符串相同位置上的字符相等,且兩個(gè)字符串都沒(méi)有結(jié)束,則循環(huán)。故第一空應(yīng)該填s[i]&&t[i]或其他等價(jià)表達(dá)式。如果兩個(gè)字符串完全相等,則while循環(huán)退出時(shí)s[i]和t[i]的值同時(shí)為0,否則s[i]和t[i]不相等。故表達(dá)式s[i]-t[i]在字符串相等時(shí)為0,不相等時(shí)為非0,所以第二空應(yīng)該填!(s[i]-t[i])就滿足題意了。
33.malloc(11)malloc函數(shù)的格式是void*(或char*)malloc(size),size表示應(yīng)分配的存儲(chǔ)區(qū),此題要分配11字節(jié)的單元,把11代入即可。
34.->->解析:若結(jié)構(gòu)體變量abc有成員a,并有指針p_abc指向結(jié)構(gòu)變量abc,則引用變量abc成員a的標(biāo)記形式有abc.a和p_abc->a。
35.過(guò)程過(guò)程
36.1B1B解析:本題輸入B33,字符'B'被輸入給字符變量a,33賦給b,執(zhí)行a=a-'A'+'0';得到a的值'1';執(zhí)行b=b*2;得到b值66,最后以字符型輸出為1B。
37.a[0][i]b[i][0]a[0][i]\r\nb[i][0]解析:因?yàn)閿?shù)組a[N][N]的第0行表示為a[0][n](n=0~3),而數(shù)組b[N][N]的最后一列表示為b[n][N-1)(n=0~3),所以前一空應(yīng)該填a[0][i]。又因?yàn)閿?shù)組a[N][N]的最后一行表示為a[N-1)][n](n=0~3),而數(shù)組b[N][N]的第0列表示為b[n][0](n=0~3),所以后一空應(yīng)該填b[i][0]。
38.扇出扇出解析:在結(jié)構(gòu)圖中,調(diào)用一個(gè)給定模塊的模塊個(gè)數(shù)稱為扇入,一個(gè)模塊直接調(diào)用的其他模塊個(gè)數(shù)稱為扇出。
39.n1=%d\nn2=%dn1=%d\\nn2=%d解析:根據(jù)輸出結(jié)果,可以確定“格式控制”為n1=%d\\nn2=%d,其中,“n1=”和“n2=”是按原樣輸出的字符,“%d”是按十進(jìn)制整數(shù)輸出,“\\n”是轉(zhuǎn)義字符,用于輸出回車換行。
40.線性結(jié)構(gòu)線性結(jié)構(gòu)解析:隊(duì)列有且只有一個(gè)根結(jié)點(diǎn),而且每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件,滿足線性結(jié)構(gòu)的條件,所以屬于線性結(jié)構(gòu)。
41.D解析:結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖,數(shù)據(jù)字典,軟件需求規(guī)格說(shuō)明書
評(píng)析,需求分析是軟件定義時(shí)期的最后一個(gè)階段,它的基本任務(wù)就是詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對(duì)象(組織,部門、企業(yè)等),充分了解原系統(tǒng)的工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能.選項(xiàng)A)軟件開(kāi)發(fā)方法是在總體設(shè)計(jì)階段完成的任務(wù);選項(xiàng)B)軟件開(kāi)發(fā)工具是在實(shí)現(xiàn)階段需完成的任務(wù):選項(xiàng)C)軟件開(kāi)發(fā)費(fèi)用是在可行性研究階段需完成的任務(wù)。
42.C解析:main()函數(shù)可以帶有參數(shù),并且參數(shù)只能有兩個(gè),第一個(gè)參數(shù)類型為整型,用來(lái)記下命令行的參數(shù)個(gè)數(shù),第二個(gè)參數(shù)為一個(gè)字符型指針數(shù)組,或字符型二級(jí)指針變量(指向一個(gè)數(shù)組,數(shù)組元素又是一個(gè)一級(jí)字符指針),其各個(gè)元素用來(lái)記下從命令行各參數(shù)字符串的首地址.故本題只有C選項(xiàng)不符合要求。所以,4個(gè)選項(xiàng)中C為所選。
43.B解析:本題中有一個(gè)陷阱,很多考生會(huì)根據(jù)程序的書寫格式來(lái)判斷:while循環(huán)的循環(huán)體為printf('y=%d\\n',y);語(yǔ)句。其實(shí)while的循環(huán)體是一條空語(yǔ)句,即y--后面的那個(gè)分號(hào)就是while的循環(huán)體。所以本題只要弄清楚表達(dá)式y(tǒng)--何時(shí)為“假”,即等于0,就能得出結(jié)果了。因?yàn)?-運(yùn)算符是后綴形式,所以表達(dá)式y(tǒng)--的值是y自減之前的值,即y等于。時(shí),表達(dá)式y(tǒng)--就等于0了。但此時(shí)的y還要被減1,所以循環(huán)結(jié)束后,y的值為-1。故應(yīng)該選擇B。
44.B解析:本題考查的是C語(yǔ)言中實(shí)型常量的指數(shù)表示法。實(shí)型常量的指數(shù)表示法是用字母e(或E)將一個(gè)實(shí)數(shù)的小數(shù)部分和指數(shù)部分分隔開(kāi)。字母e(或E)之前是小數(shù)部分,之后是指數(shù)部分,這兩部分都不能省略,且指數(shù)部分必須為整數(shù)。故選項(xiàng)B不正確。所以,4個(gè)選項(xiàng)中選項(xiàng)B符合題意。
45.D解析:快速排序的基本思想是,通過(guò)一趟排序?qū)⑴判蛴涗浄指畛瑟?dú)立的兩部
分,其中一部分記錄的關(guān)鍵字均比另一部分記錄的關(guān)鍵字小,再分別對(duì)這兩部分記錄繼
續(xù)進(jìn)行排序,以達(dá)到整個(gè)序列有序;插入排序的基本操作是指將無(wú)序序列中的各元素依
次插入到已經(jīng)有序的線性表中,從而得到一個(gè)新的序列;選擇排序的基本思想是:掃描整
個(gè)線性表,從中選出最小的元素,將它交換到表的最前面(這是它應(yīng)有的位置),然后對(duì)剩
下的于表采用同樣的方法,直到表空為止;歸并:排序是將兩個(gè)或兩個(gè)以上的有序表組合
成一個(gè)新的有序表。
注意:各種排序方法實(shí)現(xiàn)過(guò)程及實(shí)現(xiàn)機(jī)制。
46.C解析:在計(jì)算(float)(a+b)/2時(shí),由于通過(guò)強(qiáng)制類型轉(zhuǎn)換將(a+b)轉(zhuǎn)換成了float型,所以應(yīng)先將2轉(zhuǎn)換成float型,再進(jìn)行計(jì)算,得4.500000。
在計(jì)算(int)x%(int)y時(shí),先將x和y通過(guò)強(qiáng)制類型轉(zhuǎn)換成血型,再進(jìn)行求余運(yùn)算,得1。
又因?yàn)?.500000是float型,所以將1和它相加時(shí),先將1換成float型,再計(jì)算,得到5.500000。
[知識(shí)擴(kuò)展]類型轉(zhuǎn)換的一般規(guī)則是:低級(jí)類型服從高級(jí)類型,并進(jìn)行相應(yīng)的轉(zhuǎn)換。數(shù)據(jù)類型的級(jí)別由低到高的排序表示為:char→int→unsigned→long→float→double。
47.D
48.B解析:指向同一字符串的指針可以、也只能進(jìn)行減運(yùn)算,返回一個(gè)整型數(shù)。
49.C解析:如果沒(méi)有大括號(hào),else總是與它上面的最近的if配對(duì)。所以本題中的elseif(ok2)是與if(!ok1)配對(duì)的,首先因?yàn)閍<b成立所以進(jìn)一步判斷b!=15也成立,再進(jìn)一步判斷!ok1,為假,不執(zhí)行子句X=-1;繼續(xù)判斷ok2是否為真,ok2亦為假,故子句x=10;也不執(zhí)行,最后讓x=1;輸出x,所以結(jié)果應(yīng)該選擇C。
50.A解析:自增運(yùn)算符“++”放在變量之前表示在使用變量之前,先使變量的值加1;放在變量之后表示在使用變量之后,再使變量的值加1。語(yǔ)句p=s;使指針p指向字符串s的首地址,第一次輸出語(yǔ)句先輸出字符'1',指針p再往后移一位,指向字符'5'的地址,第二個(gè)輸出語(yǔ)句,同樣先輸出字符'5',指針p再往后移一位,指向字符'9'的地址。
51.C解析:算法的時(shí)間復(fù)雜度實(shí)際上就是執(zhí)行算法程序所需要的計(jì)算工作量。為了客觀地反映算法性能,在度量算法的時(shí)間復(fù)雜度時(shí),應(yīng)該與編寫算法程序所使用的程序設(shè)計(jì)語(yǔ)言、執(zhí)行算法程序時(shí)所使用的計(jì)算的工具以及程序員的水平無(wú)關(guān)。選項(xiàng)A錯(cuò)誤,因?yàn)橥凰惴ǔ绦蛟谶\(yùn)行速度不同的計(jì)算機(jī)上運(yùn)行時(shí),其計(jì)算時(shí)間是不同的。選項(xiàng)B錯(cuò)誤,因?yàn)樗惴ㄋ帉懙某绦蜷L(zhǎng)度往往與程序設(shè)計(jì)語(yǔ)言以及程序員的水平有關(guān),同一個(gè)算法,用不同的程序設(shè)計(jì)語(yǔ)言或者不同的程序員所編寫出的程序其長(zhǎng)度可能會(huì)大不相同。選項(xiàng)D錯(cuò)誤,因?yàn)楦鶕?jù)一個(gè)算法所編制出的程序之中,其指令條數(shù)往往與程序設(shè)計(jì)語(yǔ)言以及程序員的水平有關(guān),不能用算法程序中的指令條數(shù)來(lái)度量算法的時(shí)間復(fù)雜度。所以,本題正確答案為C。
52.C解析:本題中,程序先執(zhí)行語(yǔ)句x=1.2;,根據(jù)賦值運(yùn)算的類型轉(zhuǎn)換規(guī)則,先將double型的常量1.2轉(zhuǎn)換為int型,即取整為1,然后將1賦值給變量x。接下來(lái)執(zhí)行語(yǔ)句y=(x+3.8)/5.0;根據(jù)運(yùn)算符的優(yōu)先級(jí),先計(jì)算小括號(hào)內(nèi),再計(jì)算除法,最后執(zhí)行賦值運(yùn)算。小括號(hào)內(nèi)的運(yùn)算過(guò)程:先將整型變量x的值1轉(zhuǎn)換為double型1.0,然后與3.8進(jìn)行加法運(yùn)算,得到中間結(jié)果4.8。接著進(jìn)行除法運(yùn)算4.8/5.0,其結(jié)果小于1.0,這里沒(méi)有必要計(jì)算出精確值,因?yàn)榻又M(jìn)行賦值運(yùn)算,賦值號(hào)左邊的變量y的類型為整型,于是對(duì)這個(gè)小于1.0的中間結(jié)果進(jìn)行取整,結(jié)果為0,于是變量y的值為0,d*y的值也為0。注意:格式輸出語(yǔ)句printf的使用。
53.D解析:fwrite的形式是fwrite(buffer,size,count,fp),buffer表示準(zhǔn)備輸出的數(shù)據(jù)塊的起始地址,size表示每個(gè)數(shù)據(jù)塊的字節(jié)數(shù),count用來(lái)指定每寫一次或輸出的數(shù)據(jù)塊,fp為文件指針。
54.B解析:關(guān)系的交(∩)、并(∪)和差(-)運(yùn)算要求兩個(gè)關(guān)系是同元的,顯然作為二元的R和三元S只能做笛卡兒積運(yùn)算。
55.C解析:中央處理器是計(jì)算機(jī)的核心部件,控制著計(jì)算機(jī)的一切活動(dòng)。
56.C解析:邏輯運(yùn)算符的優(yōu)先次序如下:!(非)→&&(與)→||(或),但本題特別注意的是短路的概念。
57.A解析:選項(xiàng)A)是一個(gè)表達(dá)式,它后面沒(méi)有分號(hào)結(jié)尾(C語(yǔ)言中規(guī)定語(yǔ)句必須以分號(hào)結(jié)束),所以它不是語(yǔ)句;選項(xiàng)B)用一個(gè)花括號(hào)把幾條語(yǔ)句括起來(lái)了,這是一個(gè)復(fù)合語(yǔ)句;選項(xiàng)C)中只有一個(gè)分號(hào),是一個(gè)空語(yǔ)句;選項(xiàng)D)是個(gè)復(fù)合語(yǔ)句,也是一個(gè)空語(yǔ)句。
58.A
59.C解析:C語(yǔ)言中函數(shù)的定義分為有參函數(shù)的定義和無(wú)參函數(shù)的定義。無(wú)參函數(shù)的定義形式為:
類型標(biāo)識(shí)符函數(shù)名()
{說(shuō)明部分
語(yǔ)句
}
有參函數(shù)的定義有兩種形式:
類型標(biāo)識(shí)符函數(shù)名(形式參數(shù)列表)
形式參數(shù)說(shuō)明
{說(shuō)明部分
語(yǔ)句
}
或
類型標(biāo)識(shí)符函數(shù)名(類型名形參1,類型名形參2,…)
{說(shuō)明部分
語(yǔ)句
}
其中函數(shù)名為用戶定義的C語(yǔ)言的合法標(biāo)識(shí)符,其前面的類型標(biāo)識(shí)符用來(lái)說(shuō)明函數(shù)值的類型,可以是C允許的任何類型,如int、char、float、double和指針類型等。當(dāng)函數(shù)值為整型時(shí)類型標(biāo)識(shí)符可以省略,如果函數(shù)沒(méi)有返回值,類型標(biāo)識(shí)符可以是void型。當(dāng)函數(shù)的形參多于一個(gè)時(shí),各個(gè)形參之間用逗號(hào)分隔。
60.C解析:putchar(s)的功能是把字符s輸出到標(biāo)準(zhǔn)輸出設(shè)備;puts(s1)是把s1指向的字符串輸出到標(biāo)準(zhǔn)輸出設(shè)備。
61.A通常,將軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱為軟件生命周期。也就是說(shuō),軟件產(chǎn)品從考慮其概念開(kāi)始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。
62.B存放字符串的字符數(shù)組的名字就是這個(gè)字符串的首地址。本題的功能是對(duì)字符串”tomeetme”進(jìn)行選擇式輸出,從第一個(gè)字母開(kāi)始,每輸出一個(gè)字符即跳過(guò)一個(gè)。
63.A本題考查數(shù)據(jù)庫(kù)中的數(shù)據(jù)管理技術(shù)相關(guān)知識(shí)。
數(shù)據(jù)管理技術(shù)的發(fā)展大體可以歸為三個(gè)階段:人工管理、文件系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng)。
人工管理階段:計(jì)算機(jī)主要用于科學(xué)計(jì)算。外部存儲(chǔ)器只有磁帶、卡片和紙帶等還沒(méi)有磁盤等直接存取存儲(chǔ)設(shè)備。軟件只有匯編語(yǔ)言,尚無(wú)數(shù)據(jù)管理方面的軟件。數(shù)據(jù)處理方式基本是批處理。這個(gè)階段有幾個(gè)特點(diǎn):數(shù)據(jù)不保存;應(yīng)用程序中包含自己要用到的全部數(shù)據(jù);數(shù)據(jù)不共享;數(shù)據(jù)不具有獨(dú)立性。
文件系統(tǒng)階段:計(jì)算機(jī)不僅用于科學(xué)計(jì)算,還用在信息管理方面。隨著數(shù)據(jù)量的增加,數(shù)據(jù)的存儲(chǔ)、檢索和維護(hù)問(wèn)題成為緊迫的需要,數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)管理技術(shù)迅速發(fā)展起來(lái)。此時(shí),外部存儲(chǔ)器已有磁盤、磁鼓等直接存取的存儲(chǔ)設(shè)備。軟件領(lǐng)域出現(xiàn)了操作系統(tǒng)和高級(jí)軟件。操作系統(tǒng)中的文件系統(tǒng)是專門管理外存的數(shù)據(jù)管理軟件,文件是操作系統(tǒng)管理的重要資源之一。數(shù)據(jù)處理方式有批處理,也有聯(lián)機(jī)實(shí)時(shí)處理。在文件系統(tǒng)支持下,數(shù)據(jù)開(kāi)始從程序中逐步獨(dú)立出來(lái),數(shù)據(jù)文件可以獨(dú)立、長(zhǎng)期地存儲(chǔ),數(shù)據(jù)的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)有了一定的區(qū)別。數(shù)據(jù)的邏輯結(jié)構(gòu)是指呈現(xiàn)在用戶面前的數(shù)據(jù)結(jié)構(gòu)形式。數(shù)據(jù)的物理結(jié)構(gòu)是指數(shù)據(jù)在計(jì)算機(jī)存儲(chǔ)設(shè)備上的實(shí)際存儲(chǔ)結(jié)構(gòu)。文件系統(tǒng)對(duì)計(jì)算機(jī)數(shù)據(jù)管理能力的提高雖然起了很大的作用,但是仍然存在許多根本性問(wèn)題。主要表現(xiàn)在:數(shù)據(jù)文件是為滿足特定業(yè)務(wù)領(lǐng)域某一部門的專門需要而設(shè)計(jì),數(shù)據(jù)和程序相互依賴,數(shù)據(jù)缺乏足夠的獨(dú)立性;數(shù)據(jù)沒(méi)有集中管理的機(jī)制,其安全性和完整性無(wú)法保障,數(shù)據(jù)維護(hù)業(yè)務(wù)仍然由應(yīng)用程序來(lái)承擔(dān);數(shù)據(jù)冗余度大;對(duì)現(xiàn)有數(shù)據(jù)文件不易擴(kuò)充,不易移植,難以通過(guò)增、刪數(shù)據(jù)項(xiàng)來(lái)適應(yīng)新的應(yīng)用要求;各數(shù)據(jù)文件之間缺乏聯(lián)系,互相獨(dú)立,不能反映現(xiàn)實(shí)世界中事物之間的聯(lián)系。文件系統(tǒng)管理數(shù)據(jù)有如下特點(diǎn):數(shù)據(jù)可以長(zhǎng)期保存;由文件系統(tǒng)管理數(shù)據(jù);數(shù)據(jù)共享性差,冗余度大;數(shù)據(jù)獨(dú)立性差。
數(shù)據(jù)庫(kù)管理系統(tǒng)階段:數(shù)據(jù)管理技術(shù)進(jìn)入數(shù)據(jù)庫(kù)系統(tǒng)階段。數(shù)據(jù)庫(kù)系統(tǒng)克服了文件系統(tǒng)的缺陷,提供了對(duì)數(shù)據(jù)更高級(jí)、更有效的管理。這個(gè)階段的程序和數(shù)據(jù)的聯(lián)系通過(guò)數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)實(shí)現(xiàn)(DBMS)。數(shù)據(jù)庫(kù)系統(tǒng)階段的數(shù)據(jù)管理具有以下特點(diǎn):
采用數(shù)據(jù)模型表示復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)模型不僅描述數(shù)據(jù)本身的特征,還要描述數(shù)據(jù)之間的聯(lián)系,這種聯(lián)系通過(guò)存取路徑實(shí)現(xiàn)。通過(guò)所有的存取路徑表示自然的數(shù)據(jù)聯(lián)系是數(shù)據(jù)庫(kù)與傳統(tǒng)文件的根本區(qū)別。這樣,數(shù)據(jù)不再面向特定的某個(gè)或多個(gè)應(yīng)用,而是面向整個(gè)應(yīng)用系統(tǒng)。數(shù)據(jù)冗余明顯減少,實(shí)現(xiàn)了數(shù)據(jù)共享。
有較高的數(shù)據(jù)獨(dú)立性。數(shù)據(jù)的邏輯結(jié)構(gòu)與物理結(jié)構(gòu)之間的差別可以很大。用戶以簡(jiǎn)單的邏輯結(jié)構(gòu)操作數(shù)據(jù)而無(wú)須考慮數(shù)據(jù)的物理結(jié)構(gòu)。數(shù)據(jù)庫(kù)的結(jié)構(gòu)分成用戶的局部邏輯結(jié)構(gòu)、數(shù)據(jù)庫(kù)的整體邏輯結(jié)構(gòu)和物理結(jié)構(gòu)三級(jí)。用戶(應(yīng)用程序或終端用戶)的數(shù)據(jù)和外存中的數(shù)據(jù)之間轉(zhuǎn)換由數(shù)據(jù)庫(kù)管理系統(tǒng)實(shí)現(xiàn)。
數(shù)據(jù)庫(kù)系統(tǒng)為用戶提供了方便的用戶接口。用戶可以使用查詢語(yǔ)言或終端命令操作數(shù)據(jù)庫(kù),也可以用程序方式(如用C語(yǔ)言和數(shù)據(jù)庫(kù)語(yǔ)言聯(lián)合編制的程序)操作數(shù)據(jù)庫(kù)。
數(shù)據(jù)庫(kù)系統(tǒng)提供了數(shù)據(jù)控制功能,增加了系統(tǒng)的靈活性。對(duì)數(shù)據(jù)的操作不一定以記錄為單位,可以以數(shù)據(jù)項(xiàng)為單位。
64.C在C語(yǔ)言中,用整型格式輸出字符時(shí),輸出的是其ASCII碼值。
65.B
66.B
67.D解析:中序遍歷的遞歸算法定義:①遍歷左子樹(shù);②訪問(wèn)根結(jié)點(diǎn);③遍歷右子樹(shù)。前序遍歷的遞歸算法定義:①訪問(wèn)根結(jié)點(diǎn);②遍歷左子樹(shù);③遍歷右子樹(shù)。后序遍歷的遞歸算法定義:①遍歷左子樹(shù);②遍歷右子樹(shù);③訪問(wèn)根結(jié)點(diǎn)。根據(jù)前序遍歷的結(jié)果可知,a是根結(jié)點(diǎn)。由中序遍歷的結(jié)果dgbaechf可知,d、g、b是左子樹(shù)的結(jié)點(diǎn),e、c、h、f是右子樹(shù)的結(jié)點(diǎn)。再由前序遍歷的結(jié)果bdg可知,b是a左邊子樹(shù)的根,由cefh可知,c是a右邊子樹(shù)的根。再由中序遍歷的結(jié)果dgb可知,d、g是b左邊子樹(shù)的結(jié)點(diǎn),b右邊子樹(shù)無(wú)結(jié)點(diǎn)。再由前序遍歷結(jié)果dg可知,d為b左子樹(shù)的根,g是以d為根的子樹(shù)的右結(jié)點(diǎn)。至此,a的左子樹(shù)已完全弄清楚了。同樣的道理,可以弄清楚以c為根的子樹(shù)的結(jié)點(diǎn)位置。所以可知后序遍歷的結(jié)果是D。
68.AC語(yǔ)言中標(biāo)識(shí)符由字母、下劃線或數(shù)字組成,且開(kāi)頭必須是字母或下劃線。因此A選項(xiàng)中的連接符不合法。
69.A向switch語(yǔ)句塊傳送參數(shù)后,編譯器會(huì)先尋找匹配的case語(yǔ)句塊,找到后就執(zhí)行該語(yǔ)句塊,遇到break跳出;如果沒(méi)有匹配的語(yǔ)句塊,則執(zhí)行default語(yǔ)句塊。case與default沒(méi)有順序之分。因此第一次循環(huán)k的值為l,執(zhí)行c+=k,c的值為1,再執(zhí)行ease2后的語(yǔ)句c++,c的值為2,遇到break語(yǔ)句跳出循環(huán);第:二次循環(huán)k的值為2,執(zhí)行case2后面的語(yǔ)句c++,c的值為3,跳出循環(huán)。故本題答案為A)。
70.D
71.A\n軟件生命周期分為軟件定義、軟件開(kāi)發(fā)及軟件運(yùn)行維護(hù)3個(gè)階段。定義階段包括問(wèn)題定義、可行性研究和需求分析,開(kāi)發(fā)階段包括概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試,運(yùn)行維護(hù)即軟件的運(yùn)行和維護(hù)。
\n
72.D在程序中指針變量P初始指向a[3],執(zhí)行P減1后,P指向a[2],語(yǔ)句y=*P的作用是把a(bǔ)[2]的值賦給變量y,所以輸出為y=3。
73.C
74.A本題主要考查宏的定義。宏定義用一個(gè)標(biāo)識(shí)符來(lái)表示一個(gè)字符串,這個(gè)字符串可以是常量、變量或表達(dá)式。在宏調(diào)用中將用該字符串代換宏名。宏定義中,我們主要需要注意以下幾點(diǎn):
(1)同一宏名不能重復(fù)定義,除非這兩個(gè)宏定義命令行完全一致。
(2)定義宏時(shí),記得其結(jié)尾處不要用分號(hào)隔開(kāi)。
(3)替換帶參數(shù)的宏名時(shí),一對(duì)圓括號(hào)必不可少,圓括號(hào)中實(shí)參個(gè)數(shù)應(yīng)該與形參個(gè)數(shù)相同,若有多個(gè)參數(shù),它們之間用逗號(hào)隔開(kāi)。
(4)宏定義中的字符串應(yīng)加括號(hào),字符串中出現(xiàn)的形式參數(shù)兩邊也應(yīng)加括號(hào)。
在本題中,定義宏時(shí),出現(xiàn)了一個(gè)明顯的錯(cuò)誤,即在宏的定義后面用分號(hào)表示結(jié)束,這顯然是不對(duì)的。程序編譯時(shí),系統(tǒng)會(huì)報(bào)錯(cuò),無(wú)法完成輸出。因此,本題的正確答案是A。
75.D
\n本題考查鏈表結(jié)點(diǎn)的刪除,q一>next中存放的是r所指結(jié)點(diǎn)的首地址,將r所指結(jié)點(diǎn)的首地址存于p--next中,則實(shí)現(xiàn)刪除q所指點(diǎn)的功能,并保持鏈表連續(xù),P所指點(diǎn)與r所指結(jié)點(diǎn)相連。
\n
76.A軟件需求規(guī)格說(shuō)明書是需求分析階段最后的成果,它是作為需求分析的一部分而制定的可交付文檔。概要設(shè)計(jì)說(shuō)明書、數(shù)據(jù)庫(kù)說(shuō)明書、集成測(cè)試計(jì)劃都是概要設(shè)計(jì)階段需要編寫的文檔。
77.D
78.C
79.D
\n本題主要考查do—while循環(huán),因?yàn)樽兞縯的初始值等于1,經(jīng)過(guò)第一次do-while循環(huán)后,執(zhí)行t=t-1這條語(yǔ)句一次,所以變量t的值為-1,判斷關(guān)系表達(dá)式t!=n是否成立,如果關(guān)系表達(dá)式成立,則執(zhí)行第二次循環(huán),如果關(guān)系表達(dá)式不成立,退出循環(huán)。由此可見(jiàn),只要輸入變量n的值為負(fù)奇數(shù),則一定會(huì)使t==n成立,故退出do-while循環(huán)。
\n
80.A本題考查的是輸入輸出函數(shù)。sCanf()是格式化輸入函數(shù);getChar()函數(shù)從鍵盤緩沖區(qū)讀一個(gè)字符;putChar()輸出一個(gè)字符;printf()函數(shù)是格式化輸出函數(shù)。在題目中,程序執(zhí)行到sCanf()函數(shù)時(shí),會(huì)暫停等待用戶輸A4個(gè)字符,按題意輸)k123<回車>后,字符l-3被分別賦值到Cl-C3中,而C4會(huì)得到一個(gè)換行符’\\\\n’。然后執(zhí)行第1個(gè)getChar()函數(shù),由于前面的sCanf()函數(shù)讀完了緩沖區(qū)中的所有字符,所以此時(shí)程序又會(huì)暫停等待用戶輸入,按題意輸入45678<回車>后,緩沖區(qū)第一個(gè)字符4賦值到。5,第二個(gè)字符5賦值給C6,所以本題應(yīng)該選擇A)。
81.(1)錯(cuò)誤:缺少語(yǔ)句
正確:應(yīng)填人num%base
(2)錯(cuò)誤:缺少語(yǔ)句
正確:應(yīng)填人[d]
【解析】按題目中的要求把輸入的十進(jìn)制數(shù)以十六進(jìn)制數(shù)的形式輸出,首先要對(duì)十進(jìn)制數(shù)對(duì)16求余,得出十六進(jìn)制每一位上的數(shù)字。因此,c[i]__________處填num%base。數(shù)組b為十進(jìn)制數(shù)0~15所對(duì)應(yīng)的十六進(jìn)制數(shù),數(shù)組c中存放的是十六進(jìn)制數(shù)每一位上的數(shù)字。因此,b__________處填Ed2。
82.1voidfun(char*ss)2{3inti;4for(i=0;ss[i]!='\\0';i++)/*將ss所指字符串中所有下標(biāo)為奇數(shù)的字母轉(zhuǎn)換為大寫字母*/5if(i%2==1&&ss[i]>='a'&&ss[i]<='z')6ss[i]=ss[i]-32;7}本題要求將給定字符串ss中下標(biāo)為奇數(shù)的字母轉(zhuǎn)換為大寫字母。需要先判斷下標(biāo)為奇數(shù)的字母是否是小寫字母,如果是再通過(guò)其轉(zhuǎn)換方法進(jìn)行轉(zhuǎn)換。從C語(yǔ)言的學(xué)習(xí)中知道,只要將小寫字母減去32即轉(zhuǎn)換成大寫宇母,將大寫字母加上32即換轉(zhuǎn)成小寫字母。本程序用if語(yǔ)句實(shí)現(xiàn)轉(zhuǎn)換功能。2022年安徽省滁州市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)模擬考試(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.有定義語(yǔ)句intb;charc[10];,則正確的輸入語(yǔ)句是______。A.scallf("%d%s",&b,&c);
B.scallf("%d%s",&b,c);
C.scanf("%d%s",b,c)
D.scanf("%d%s",b,&c);
2.以下不能作為合法常量的是()。
A.'cd'B.1.234e04C.”\a”D.'\011'
3.以下敘述中正確的是()。
A.C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方
B.花括號(hào)"{"和"}"只能作為函數(shù)體的定界符
C.構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名
D.分號(hào)是C語(yǔ)句之間的分隔符,不是語(yǔ)句的一部分
4.以下不能輸出字符A的語(yǔ)句是(注:字符A的ASCII值為65,字符a的ASCII值為97)()。
A.printf(“%c\n”,‘a(chǎn)’-32);
B.printf(“%d\n”,‘A’);
C.printf(“%c\n”,65);
D.printf(“%c\n”,‘B’-1);
5.有以下程序:viodfun(inta,intb,intc){a=456;b=567;c=678;}main{intx=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d\n",x,y,z);}輸出的結(jié)果是()。A.30,20,10B.10,20,30C.456,567,678D.678,567,456
6.若有說(shuō)明:inta[][3]={0,0};則不正確的敘述是()。
A.數(shù)組a的每個(gè)元素的初值都是0
B.數(shù)組a的第一維大小為1
C.數(shù)組a的行數(shù)為1
D.只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
7.以下程序的主函數(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)
8.已知字母A的ASCII碼為十進(jìn)制的65,下面程序main(){charch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}的輸出是_________。
A.67,DB.B,CC.C,DD.不確定的值
9.判斷一個(gè)順序存儲(chǔ)的隊(duì)列sp為空的條件是()。
A.sp->front=sp->rear
B.sp->front=sp->rear+1
C.sp->front=sp->rear-1
D.sp->front=NULL
10.線性表是具有n個(gè)()的有限序列。
A.字符B.數(shù)據(jù)元素C.數(shù)據(jù)項(xiàng)D.表元素
11.以下說(shuō)法正確的是()。
A.C語(yǔ)言只接受十進(jìn)制的數(shù)
B.C語(yǔ)言只接受八進(jìn)制、十進(jìn)制、十六進(jìn)制的數(shù)
C.C語(yǔ)言接受除二進(jìn)制之外任何進(jìn)制的數(shù)
D.C語(yǔ)言接受任何進(jìn)制的數(shù)
12.假設(shè)某算法的計(jì)算時(shí)間可用遞推關(guān)系式T(n)=2T(n/2)+n,T(1)=1表示,則該算法的時(shí)間復(fù)雜度為()
A.O(logn)B.O(n*logn)C.O(n)D.O(n^2)
13.有下列程序:main{inty=10;do{y--;}while(--y);printf("%d\n",--y);)當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。A.-1B.1C.4D.0
14.設(shè)有條件表達(dá)式:(EXP)?i++:j--,則以下表達(dá)式中與(E)(P)完全等價(jià)的是A.(EXP==0)B.(EXP!=0)C.(EXP=-1)D.(EXP!=1)
15.設(shè)x和y均為bool量,則x&&y為真的條件是()。
A.它們均為真B.其中一個(gè)為真C.它們均為假D.其中一個(gè)
16.
17.在順序表{2,5,7,10,14,15,18,23,35,41,52}中,用二分法查找關(guān)鍵碼12需做()次關(guān)鍵碼比較。
A.2B.3C.4D.5
18.在軟件生存周期中,能準(zhǔn)確地確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階段是()。
A.概要設(shè)計(jì)B.詳細(xì)設(shè)計(jì)C.可行性分析D.需求分析
19.
20.設(shè)有如下定義和語(yǔ)句:FILE*fp;intdata[10],i,n;fp=fopen(“abc.txt”,“r”);文本文件abc.txt中的數(shù)據(jù)為58192765190,其中第1個(gè)數(shù)據(jù)代表的是它后面數(shù)據(jù)的個(gè)數(shù)。若文件已正確打開(kāi),則以下程序段中能將文件的最后5個(gè)數(shù)據(jù)依次正確讀入數(shù)組data[0]~data[4]中的是()。
A.fscanf(fp,“%d”,&n);for(i=0;i<n;i++)fscanf(fp,“%d”,&data[i]);
B.i=0;while(!feof(fp)){fscanf(fp,“%d”,&data[i]);i++;}
C.for(i=0;!feof(fp);i++)fscanf(fp,“%d”,&data[i]);
D.i=0;fscanf(fp,“%d”,&n);i++;while(!feof(fp)){fscanf(fp,“%d”,&data[i]);i++;}
二、2.填空題(20題)21.以下程序的功能是計(jì)算。補(bǔ)足所缺語(yǔ)句。
longf(intn)
{inti;longs;
s=【】;
for(i=1;i<=n;i++)s=【】;
returns;
}
main()
{longs;intk,n;
scanf("%d",&n);
s=【】;
for(k=0;k<=n,k++)s=s+【】;
printf("%1d\n",s);
}
22.下列程序的運(yùn)行結(jié)果是______。
main()
{ints=0,i=1;
while(s<=10)
{s=s+i*i;
i++;
}
printf("%d",--i);
}
23.設(shè)C語(yǔ)言中,一個(gè)int型數(shù)據(jù)在內(nèi)存中占兩個(gè)字節(jié),則int型數(shù)據(jù)的取值范圍為【】。
24.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
}
printf("%d%d\n",a,b);
}
25.軟件測(cè)試中路徑覆蓋測(cè)試是整個(gè)測(cè)試的基礎(chǔ),它是對(duì)軟件【】進(jìn)行測(cè)試。
26.程序測(cè)試分為靜態(tài)分析和動(dòng)態(tài)測(cè)試。其中【】是指不執(zhí)行程序,而只是對(duì)程序文本進(jìn)行檢查,通過(guò)閱讀和討論,分析和發(fā)現(xiàn)程序中的錯(cuò)誤。
27.下面程序的功能是輸出數(shù)組中最大的數(shù),由a指針指向該元素。請(qǐng)?zhí)羁铡?/p>
main()
{ints[]={6,7,2,13,9,1,12,10,5,8,4,3,11),*a,*b;
for(【】)
if(*a<*b)a=b;
printf("%d",*a);
}
28.軟件危機(jī)出現(xiàn)于60年代末,為了解決軟件危機(jī),人們提出了【】的原理來(lái)設(shè)計(jì)軟件,這就是軟件工程誕生的基礎(chǔ)。
29.設(shè)有以下定義和語(yǔ)句,則*(*(p+2)+1)的值為【】。
inta[3][2]={10,20,30,40,50,60},(*p)[2];
p=a;
30.下面程序的輸出是【】。
main()
{intarr[10],i,k=0;
for(i=0;i<10;i++)
arr[i]=i;
for(i=1;i<4;i++)
k+=arr[i]+i;
printf("%d\n"k);}
31.需求分析的最終結(jié)果是產(chǎn)生【】。
32.函數(shù)compare的功能是比較兩個(gè)字符串是否相等,若相等則函數(shù)返回1,否則返回o,請(qǐng)?zhí)羁铡?/p>
compare(chars[],chart[])
{
inti=0
while(s[i]==t[i]&&【】)i++;
return(【】?1:0);
}
33.用以下語(yǔ)句調(diào)用庫(kù)函數(shù)malloc,使字符指針st指向具有11個(gè)字節(jié)的動(dòng)態(tài)存儲(chǔ)空間,請(qǐng)?zhí)羁?。st=(char*)【】;
34.設(shè)有定義“struct{inta;floatb;charc;}abc,*p_abc=&abc;”,則對(duì)結(jié)構(gòu)體成員a的引用方法可以是abc.a和p_abc【】a。
35.子程序通常分為兩類:【】和函數(shù),前者是命令的抽象,后者是為了求值。
36.已知字符'A'的ASCII代碼值為65,以下程序運(yùn)行時(shí)若從鍵盤輸入:B33<回車>,則輸出結(jié)果是【】。
#include<stdio.h>
main()
{chara,b;
a=getchar();seanf("%d",&b);
a=a-'A'+'0';b=b*2;
prinff("%c%c\n",a,b);
}
37.以下函數(shù)rotate的功能是:將a所指N行N列的二維數(shù)組中的最后一行放到b所指二維數(shù)組的第0列中,把a(bǔ)所指二維數(shù)組中的第0行放到b所指二維數(shù)組的最后一列中,b所指二維數(shù)組中其他數(shù)據(jù)不變。
#defineN4
voidrotate(inta[][N],intb[][N])
{inti,j;
for(i=0;i<N;i++)
{b[i][N-1]=______;______=a[N-1][i];}
}
38.一個(gè)模塊直接調(diào)用的其他模塊的模塊個(gè)數(shù)稱為_(kāi)_____。
39.有以下語(yǔ)句段:
intn1=10,n2=20;
printf("【】",n1,n2);
要求按以下格式輸出n1和n2的值:
n1=10
n2=20
每個(gè)輸出行從第一列開(kāi)始,請(qǐng)?zhí)羁铡?/p>
40.按照邏輯結(jié)構(gòu)分類,數(shù)據(jù)結(jié)構(gòu)可分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),隊(duì)列屬于______。
三、1.選擇題(20題)41.需求分析階段的任務(wù)是確定()
A.軟件開(kāi)發(fā)方法B.軟件開(kāi)發(fā)工具C.軟件開(kāi)發(fā)費(fèi)用D.軟件系統(tǒng)功能
42.不合法的main函數(shù)命令行參數(shù)表示形式是
A.main(inta,char*c[])
B.mmn(intarc,char**arv)
C.main(intargc,char*argv)
D.majn(intargv,char*atgc[])
43.有以下程序:main(){inty=10;while(y--);printf("y=%d\n",y);}程序執(zhí)行后的輸出結(jié)果是()。
A.y=0B.y=-1C.y=1D.while構(gòu)成無(wú)限循環(huán)
44.以下選項(xiàng)中不能作為合法常量的是_____。A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e0
45.在下列幾種排序方法中,要求內(nèi)存量最大的是______。
A.插入排序B.選擇排序C.快速排序D.歸并排序
46.若有定義:inta=4,b=5;floatx=3.4,y=2.1;,則下列表達(dá)式的值為()
(float)(a+b)/2+(int)×%(int)y
A.5.5B.55C.5.500000D.55.00000
47.設(shè)有如下程序:#include"string.h"main(){staticchars1[20],s2[20];scanf("%s",s1);scanf("%s",s2);if(strcmp(s1,s2))printf("@");elseprintf("$");printf("%d\n",strlen(strcat(s1,s2)));}如果從鍵盤上輸入name<回車>name1<回車>,則程序運(yùn)行后的輸出結(jié)果是()
A.$8B.@10C.$9D.@9
48.設(shè)有以下程序段;inta[5]={0},*p,*q;p=a;q=a;則合法的運(yùn)算是______。
A.p+qB.p-qC.p*qD.p%q
49.下面程序輸出的結(jié)果是()。main(){intx=100,a=10,b=20,ok1=5,ok2=0;if(a<b)if(b!=15)if(!ok1)x=-i;elseif(ok2)x=10;x=1;printf("%d\n",x);}
A.-1B.0C.1D.不確定的值
50.有以下程序main(){chars[]="159",*p;p=s;printf("%c",*p++);printf("%c",*p++);}程序運(yùn)行后的輸出結(jié)果是______。
A.15B.16C.12D.59
51.算法的時(shí)間復(fù)雜度是指______。
A.執(zhí)行算法程序所需要的時(shí)間B.算法程序的長(zhǎng)度C.算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)D.算法程序中的指令條數(shù)
52.下列程序的輸出結(jié)果是()。
main
{
doubled=3.2;intx,y;
x=1.2;y=(x+3.8)/5.0;
printf("%d\n",d*y);
}
A.3B.3.2C.0D.3.07
53.fwrite函數(shù)的一般調(diào)用形式是
A.fwrite(buffer,count,size,fp);
B.fwrite(fP,size,count,buffer);
C.fwrite(fp,count,size,buffer);
D.fwrite(buffer,size,count,fp);
54.設(shè)R是一個(gè)二元關(guān)系,S是一個(gè)三元關(guān)系,則下列運(yùn)算中正確的是()。
A.R-SB.R×SC.RNSD.RUS
55.微型計(jì)算機(jī)的性能主要取決于______。
A.內(nèi)存B.硬盤C.中央處理器D.顯示卡
56.以下程序的輸出結(jié)果是_______。main(){inta=-1,b=1,k;if(++a<0)&&!(b-<=0))printf("%d%d\n",a,b);elseprintf("%d%d\n",b,a);}
A.-11B.01C.10D.00
57.下列不是合法的C語(yǔ)言語(yǔ)句是()。
A.a=5B.{inti;i++;}C.;D.{;}
58.若有以下定義和語(yǔ)句,則輸出結(jié)果是______。char*s1="12345",*s2="1234";printf("%d\n",strlen(strcpy(s1,s2)));
A.4B.5C.9D.10
59.程序中對(duì)fun()函數(shù)有如下說(shuō)明void*fun();此說(shuō)明的含義是______。
A.fun函數(shù)無(wú)返回值
B.fun函數(shù)的返回值可以是任意的數(shù)據(jù)類型
C.fun函數(shù)的返回值是無(wú)值型的指針類型
D.指針fun指向一個(gè)函數(shù),該函數(shù)無(wú)返回值
60.下列的程序用來(lái)輸出兩個(gè)字符串前7個(gè)字符中對(duì)應(yīng)相等的字符及其位置號(hào),程序空白處應(yīng)該填寫的是()。#include<stdio.h>main(){chars1[]="chinese",s2[]="japnese";inti;for(i=0;s1[i]!='\0'&&s2[i]!='\0';i++)if(s1[i]==s2[i]&&i<7)__________________;}
A.putchar(s2[i]);putchar(i)
B.puts(s1[i],i)
C.printf("%c%d\n",s2[i],i)
D.printf("%c",s1[i]);printf("%d\n",i)
四、選擇題(20題)61.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程
B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過(guò)程
C.軟件的開(kāi)發(fā)過(guò)程
D.軟件的運(yùn)行維護(hù)過(guò)程
62.閱讀下面程序,則執(zhí)行后的結(jié)果是()。
A.tomeetme
B.tmem
C.oete
D.tome
63.在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,先后經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)管理階段。其中數(shù)據(jù)獨(dú)立性最高的階段是
A.?dāng)?shù)據(jù)庫(kù)系統(tǒng)B.文件系統(tǒng)C.人工管理D.?dāng)?shù)據(jù)項(xiàng)管理
64.已知字符'A'的ASCⅡ代碼值是65,字符變量c1的直是'A',c2的值是'D'。執(zhí)行語(yǔ)句printf("%d,%d",c1,c2-2);后,輸出結(jié)果是()。
A.A.A,BB.A,68C.65,66D.65,68
65.
66.
67.若某二叉樹(shù)的前序遍歷訪問(wèn)順序是abdgcefh,中序遍歷訪問(wèn)順序是dgbaechf,則其后序遍歷的結(jié)點(diǎn)訪問(wèn)順序是()。
A.bdgcefhaB.gdbecfhaC.bdgaechfD.gdbehfca
68.按照c語(yǔ)言規(guī)定的用戶標(biāo)識(shí)符命名規(guī)則,不能出現(xiàn)在標(biāo)識(shí)符中的是()。A.連接符B.大寫字母C.數(shù)字字符D.下劃線
69.有以下程序程序運(yùn)行后的輸出結(jié)果是()。
A.3B.5C.7D.9
70.
71.下列選項(xiàng)中屬于軟件生命周期中開(kāi)發(fā)階段任務(wù)的是()。
A.詳細(xì)設(shè)計(jì)B.運(yùn)行維護(hù)C.可行性研究D.需求分析
72.有以下程序:
程序的運(yùn)行結(jié)果是()。
A.y=0B.y=1C.y=2D.y=3
73.
74.有以下程序
#include<stdio.h>
#defineP24;
#defineS(x)P*x+x;
main()
{inta=2,b=2;
printf("%d\n",S(a+b));
}
程序的運(yùn)行結(jié)果是
A.程序編譯運(yùn)行時(shí)報(bào)錯(cuò),無(wú)法輸出B.54
C.96D.100
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 信陽(yáng)藝術(shù)職業(yè)學(xué)院《微處理器技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 特聘專業(yè)專家合作合同范本
- 南京林業(yè)大學(xué)《化學(xué)專利的寫作》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧科技學(xué)院《電子顯微分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 貴陽(yáng)幼兒師范高等??茖W(xué)?!盾浖w系結(jié)構(gòu)原理與實(shí)踐》2023-2024學(xué)年第二學(xué)期期末試卷
- 浙江藥科職業(yè)大學(xué)《機(jī)關(guān)公文寫作》2023-2024學(xué)年第二學(xué)期期末試卷
- 泰山學(xué)院《藏書票》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣西民族大學(xué)《模型設(shè)計(jì)與制作》2023-2024學(xué)年第二學(xué)期期末試卷
- 鑄造涂料項(xiàng)目深度研究分析報(bào)告
- 貴州民族大學(xué)《中西音樂(lè)簡(jiǎn)史2》2023-2024學(xué)年第二學(xué)期期末試卷
- 人教版一年級(jí)數(shù)學(xué)2024版上冊(cè)期末測(cè)評(píng)(提優(yōu)卷一)(含答案)
- 浙江省杭州市2024年中考語(yǔ)文試卷(含答案)
- 碼頭安全生產(chǎn)知識(shí)培訓(xùn)
- 初中數(shù)學(xué)解《一元二次方程》100題含答案解析
- 種植二期手種植義齒II期手術(shù)護(hù)理配合流程
- 安全隱患舉報(bào)獎(jiǎng)勵(lì)制度
- 牛津書蟲(chóng)系列1-6級(jí) 雙語(yǔ) 4B-03.金銀島中英對(duì)照
- 瀝青拌合站安裝專項(xiàng)施工方案
- 2024-2025學(xué)年深圳市南山區(qū)六年級(jí)數(shù)學(xué)第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含解析
- 2024-2030年中國(guó)免疫細(xì)胞存儲(chǔ)行業(yè)市場(chǎng)發(fā)展分析及競(jìng)爭(zhēng)形勢(shì)與投資戰(zhàn)略研究報(bào)告
- 工貿(mào)行業(yè)企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化建設(shè)實(shí)施指南
評(píng)論
0/150
提交評(píng)論