一、選擇題(1~10每小題2分,11~50每小題1分,共60分)
下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的。請將正確選項填涂在答題卡相應位置上,答在試卷上不得分。
。1)算法的時間復雜度是指()。
A)執(zhí)行算法程序所需要的時間
B)算法程序的長度
C)算法執(zhí)行過程中所需要的基本運算次數(shù)
D)算法程序中的指令條數(shù)
。2)用鏈表表示線性表的優(yōu)點是()。
A)便于隨機存取 B)花費的存儲空間較順序存儲少
C)便于插入和刪除操作 D)數(shù)據(jù)元素的物理順序與邏輯順序相同
。3)棧底至棧頂依次存放元素A、B、C、D,在第五個元素E入棧前,棧中元素可以出棧,則出棧序列可能是()。
A)ABCED B)DCBEA C)DBCEA D)CDABE
(4) 在待排序的元素序列基本有序的前提下,效率最高的排序方法是()。
A)冒泡排序 B)選擇排序 C)快速排序 D)歸并排序
。5)在設計程序時,應采納的原則之一是
A)不限制goto語句的使用 B)減少或取消注解行
C)程序越短越好 D)程序結構應有助于讀者理解
。6)下列不屬于軟件工程的3個要素的是( )。
A)工具 B)過程 C)方法 D)環(huán)境
。7) 在軟件工程中,白箱測試法可用于測試程序的內(nèi)部結構。此方法將程序看做是()。
A)路徑的集合B)循環(huán)的集合
C)目標的集合D)地址的集合
。8)下列數(shù)據(jù)模型中,具有堅實理論基礎的是()。
A)層次模型 B)網(wǎng)狀模型 C)關系模型 D)以上3個都是
。9)下列有關數(shù)據(jù)庫的描述,正確的是()。
A)數(shù)據(jù)庫是一個DBF文件 B)數(shù)據(jù)庫是一個關系
C)數(shù)據(jù)庫是一個結構化的數(shù)據(jù)集合 D)數(shù)據(jù)庫是一組文件
10)下列說法中,不屬于數(shù)據(jù)模型所描述的內(nèi)容的是()。
A)數(shù)據(jù)結構 B)數(shù)據(jù)操作
C)數(shù)據(jù)查詢 D)數(shù)據(jù)約束
。11)一個C語言程序是由
A)一個主程序和若干子程序組成
B)函數(shù)組成
C)若干過程組成
D)若干子程序組成
(12)下列數(shù)據(jù)中,不合法的C語言實型數(shù)據(jù)是
A)0.123 B)123e3 C)2.1e3.5 D)789.0
。13)已知
int t=0;
while (t=1)
{...}
則以下敘述正確的是
A)循環(huán)控制表達式的值為0
B)循環(huán)控制表達式的值為1
C)循環(huán)控制表達式不合法
D)以上說法都不對
。14)有以下定義語句
double a,b;int w; long c;
若各變量已正確賦值,則下列選擇中正確的表達式是
A) a=a+b=b++ B)w%((int)a+b) C)(c+w)%(int)a D)w=a==b
。15)以下程序的輸出結果是
main()
{inti;
for(i=0;i<3;i++)
switch(i){
case 0:printf("%d",i);
case 2:printf("%d",i);
default:printf("%d",i);
}
}
A) 022111B)021021C)000122D)012
。16)設有以下程序段:
int x=0,s=0;
while(!x!=0)s+=++x;
printf("%d",s);
則
A)運行程序段后輸出0
B)運行程序段后輸出1
C)程序段中的控制表達式是非法的
D)程序段執(zhí)行無限次
(17)以下正確的說法是
A)定義函數(shù)時,形參的類型說明可以放在函數(shù)體內(nèi)
B)return后邊的值不能為表達式
C)如果函數(shù)值的類型與返回值類型不一致,以函數(shù)值類型為準
D)如果形參與實參類型不一致,以實參類型為準
(18)以下敘述中不正確的是
A)在不同的函數(shù)中可以使用相同的名字的變量
B)函數(shù)中的形式參數(shù)是局部變量
C)在一個函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效
D)在一個函數(shù)內(nèi)的復合語句中定義的變量在本函數(shù)范圍內(nèi)有效
。19)以下程序的輸出結果是
main()
{inta=3,b=4,c=5,d=2;
if(a>b)
if(b>c)
printf("%d",d+++1);
else
printf("%d",++d+1);
printf("%d\n",d);
}
A) 2 B)3 C)43 D)44
。20)有以下語句,則對a數(shù)組元素的引用不正確的是(0≤i≤9)
int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
A) a[p-a] B)*(&a[i]) C)p[i] D)*(*(a+i))
。21)有如下程序
int a[10]={1,2,3,4,5,6,7,8,9,10};
int *p=&a[3],b;b=p[5];
則b的值是
A)5 B)6
C)9 D)8
。22)設有以下說明語句
struct stu
{int a;
float b;
}stutype;
則下面的敘述不正確的是
A)struct是結構體類型的關鍵字
B)struct stu是用戶定義的結構體類型
C)stutype是用戶定義的結構體類型名
D)a和b都是結構體成員名
。23)執(zhí)行以下程序后,a,b的值分別為
main()
{ int a,b,k=4,m=6,*p1=&k,*p2=&m;
a=p1==&m;
b=(*p1)/(*p2)+7;
printf("a=%d\n",a);
printf("b=%d\n",b);
}
A)-1,5 B)1,6 C)0,7 D)4,10
。24) 以下程序的輸出結果是
main()
{inta=7,b=8,*p,*q,*r;
p=&a;q=&b;
r=p;p=q;q=r;
printf("%d,%d,%d,%d\n",*p,*q,a,b);
}
A) 8,7,8,7 B)7,8,7,8 C)8,7,7,8 D)7,8,8,7
。25)有如下程序
long fib(int n)
{ if(n>2)return(fib(n-1)+fib(n-2));
else return(2);
}
main()
{ printf("%d\n",fib(3));}
該程序的輸出結果是
A)2 B)4
C)6 D)8
。26) 程序中對fun函數(shù)有如下說明:
void*fun();
此說明的含義是
A)fun函數(shù)無返回值
B)fun函數(shù)的返回值可以是任意的數(shù)據(jù)類型
C)fun函數(shù)的返回值是無值型的指針類型
D)指針fun指向一個函數(shù),該函數(shù)無返回值
(27)有以下程序:
fun(int x,int y,int z)
{ z=x*y;}
main()
{
int a=4,b=2,c=6;
fun(a,b,c);
printf("%d",c);
}
程序運行后的輸出結果是
A) 16 B)6 C)8 D)12
。28)下列程序執(zhí)行后的輸出結果是
main()
{ int a[3][3], *p,i;
p=&a[0][0];
for(i=1; i<9; i++)p[i]=i+1;
printf("%d\n",a[1][2]);
}
A) 3 B)6 C)9 D)隨機數(shù)
。29) 以下程序的輸出結果是
void fun(int *a,int i,int j)
{int t;
if(i {t=a[i];a[i]=a[j];a[j]=t; i++;j--; fun(a,i,j); } } main() {int x[]={2,6,1,8},i; fun(x,0,3); for(i=0;i<4;i++)printf("%2d",x[i]); printf("\n"); } A)1 2 6 8 B)8 6 2 1 C)8 1 6 2 D)8 6 1 2
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |